Wpis z mikrobloga

Potrzebuję pomysłów na programy współbieżne do inżynierki, nie chcę robić nic ambitnego bo już pracuję, więc inżynierkę chcę zrobić by zdać ( ͡° ͜ʖ ͡°) Technologia to #java i #cpp
Na razie wpadłem na:
-Kopiowanie plików
-Szukanie liczb pierwszych
-Quick sort/merge sort
Bardzo proszę na sugestie ()
#programowanie #studaza #it #kiciochpyta
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kacpervfr: tylko chodzi raczej o sens. Nie wiem czy dyski SSD potrafią takie operacje wykonywać współbieżnie (z resztą i tak wszystko leci przez szynę i kontroler nad którą defacto nie masz kontroli) ale HDD na pewno nie.
  • Odpowiedz
@horus666 : potrafią - w przypadku SSD jest duży zysk ze współbieżności; w przypadku hdd w pewnych sytuacjach też jest ale nie wynika to z tego że dysk umie czytać równolegle (bo nie umie) a z tego że większa kolejka zadań pozwala lepiej zoptymalizować kolejność operacji przez system operacyjny
  • Odpowiedz
@Krolik: No dobrze ale czy w takim razie nie wchodząc w szczegóły implementacji sterownika możliwe jest ręczne kolejkowanie operacji na poziomie aplikacji?
  • Odpowiedz
@kacpervfr:
Symulator windy, skrzyżowania samochodowego.
Albo jakiś bot co będzie biegał po sieci
Wszystko już dawno zrobione, opisane, jak będziesz w stanie odpowiedzieć na kilka pytań o swoim projekcie to obronisz pracę.
  • Odpowiedz
@horus666: w Linuksie jest możliwe. Po prostu musisz wysyłać zadania odczytu plików w takiej kolejności jak te pliki są umieszczone na dysku. I jest wtedy tak ok 10x szybciej.
  • Odpowiedz
@Krolik: Ale to, generalnie patrząc na zagadnienie z punktu widzenia OP'a który chciałby zrównoleglić cały proces we własnej aplikacji, jest w stanie coś takiego osiągnąć? Bo na podstawie tego, co napisałeś wnioskuję, że nie bardzo.
  • Odpowiedz
@kacpervfr porównywanie wydajności to nie taka prosta sprawa. Lepiej nie polegać na takich operacjach jak kopiowanie plików. Quick sort brzmi fajnie, ale problemem może okazać się ilość liczb do wygenerowania i trzymania w pamięci, żeby odpowiednio dociążyć program.

Algorytm liczb pierwszych brzmi spoko.
  • Odpowiedz
@SpinOff: zgadzam się że porównywanie wydajności, zwłaszcza między językami jest zadaniem trudnym i w zasadzie nie na poziom pracy inżynierskiej. No chyba że dla mega wymiatacza pasjonata. Tzn można coś zrobić, ale to coś będzie miało zerową wartość merytoryczną, natomiast tak zrobić aby to było do czegoś użyteczne, a wnioski prawidłowe, no to mocno nietrywialna sprawa.

Ok, napiszesz algorytm do liczb pierwszych w Javie i C++, uruchomisz, zmierzysz czas. Wyjdzie Ci
  • Odpowiedz
  • 0
@Krolik: dzięki za rozbudowany wpis, ale odkąd dostałem pracę w it to kompletnie ambicje na inżynierkę spadły mi na minimum. Chcę to zdać i zapomnieć
  • Odpowiedz