-
Data: 2009-05-19 18:20:43
Temat: Re: jak napisać szybki program
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Jędrzej Dudkiewicz pisze:
> Maciej Sobczak wrote:
>> On 19 Maj, 10:32, Jędrzej Dudkiewicz <j...@g...com>
>> wrote:
>>
>>>> Czyli mówimy *w ogólności* o wykorzystaniu *współbieżności* w celu
>>>> lepszego wykorzystania zasobów.
>>> No dobra, ale sprawdź jeszcze raz odpowiedź Wojtka Muły, podał
>>> informację o AIO w momencie, kiedy było wiadomo, że:
>>> a) same obliczenia długo trwają
>>> b) dużo czasu zajmuje czekanie na dane.
>>>
>>> Wniosek: jest szansa, że AIO pomoże.
>>>
>>> W tym momencie odpowiedź "możesz użyć współbieżności" jest mniej pomocne
>>> od konkretniejszego rozwiązania, czyli podania hasła o
>>> asynchronicznym I/O.
>>
>> Wątki będą gorsze?
>
> Do AIO? Oczywiście, że będą gorsze. AIO jako usługa kernela jest szybsza
> niż kolejny wątek w userlandzie. Nie, nie mam danych statystycznych.
Mówimy chyba o wątkach (kernel) a nie "włóknach" z userlandu?
"Zwykłe" io też jest usługą kernela (np. wywołanie DMA)
Ja widzę te 2 przedstawione możliwości tak:
1. Mamy wątek, który asynchronicznie odbiera dane i po "uzbieraniu"
odpowiedniej porcji je przetwarza. Na jednym procesorze mamy
wykorzystanie go na ~100%, przy 2 procesorach (b, częste dzisiaj) nadal
mamy wykorzystanie jednego procesora .
2. Mamy 2 wątki w jeden "wisi" na i/o (a wiec nie jest nawet brany pod
uwagę przez sheduler). Drugi przetwarza dane. Na jednoprocesorowej
maszynie wykorzystają max ~99% (1% na zmiany kontekstu przy
synchronicznym i/o to i tak za dużo). Na 2 wykorzystają max 2*100%.
>
>> Nie znamy kontekstu,
>
> Ależ oczywiście, że znamy, w pierwszym poście OP napisał co i jak, pisze
> od początku, dużo danych, dużo obliczeń itd, itp. Odpowiedź, że może
> pomóc AIO jest jak najbardziej na miejscu, mi tylko o to chodzi!
Imo wielowątkowość może pomóc. Samo AIO nie da prawie nic - zaoszczędzi
jedynie czas transferu z bufora do pamięci w porównaniu do 1 wątku z
synchronicznym io+poll, w przypadku więcej wątków czas zmiany kontekstu.
Na dzisiejszym sprzęcie - 2+ rdzenie - aio bez wątków będzie wolniejsze
niż operacje synchroniczne+wątki.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 19.05.09 20:28 Maciej Sobczak
- 19.05.09 20:31 Maciej Sobczak
- 19.05.09 20:41 Bronek Kozicki
- 19.05.09 21:08 Michoo
- 19.05.09 21:09 A.L.
- 19.05.09 22:12 Marteno Rodia
- 19.05.09 22:36 A.L.
- 19.05.09 22:38 Mateusz Loskot
- 20.05.09 08:55 Maciej Sobczak
- 20.05.09 12:32 A.L.
- 20.05.09 17:44 Marteno Rodia
- 20.05.09 18:23 Michoo
- 20.05.09 18:31 Marcin 'Qrczak' Kowalczyk
- 21.05.09 02:23 Mariusz Marszałkowski
- 21.05.09 03:26 Mariusz Marszałkowski
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-28 Antyradar
- 2024-12-28 Deweloper przegral w sadzie musi zwrócic pieniądze Posypia sie kolejne pozwy?
- 2024-12-28 Warszawa => Full Stack .Net Engineer <=
- 2024-12-28 Warszawa => Sales Assistant <=
- 2024-12-28 Warszawa => Programista Full Stack .Net <=
- 2024-12-28 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-12-28 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-12-28 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2024-12-28 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-12-28 Żerniki => Employer Branding Specialist <=
- 2024-12-28 ale zawziętość i cierpliwość
- 2024-12-27 most kilometrowy
- 2024-12-27 Dyplomaci a alkomaty
- 2024-12-27 Zmiana kary
- 2024-12-27 Chiński elektrolizer tester wody