Marx pisze:
>> Zysk będzie widać tylko w momencie, gdy co najmniej trzy
>> wątki będą w stanie "running". A to jest w sumie dosyć
>> rzadkie i trzeba się specjalnie starać, by tyle trwale
>> działających i od siebie nawzajem niezależnych procesów
>> pouruchamiać.
> anytwirus, firewall, odtwarzacz mp3 i jakis pierwszoplanowy program
> scigajacy cos z sieci - i juz mamy 4 procesy dzialajace jednoczesnie
Wcale nie!
One działają przez kilka milisekund w ciągu każdej sekundy!
Podaj przykład na cztery niezależne procesy wymagające *100%*
czasu procesora przez co najmniej 10 sekund *bez przerwy*.
Wtedy będzie widać przyspieszenie dopiero.
> Inna sprawa ze u przecietnego usera ciezko znalezc 4 takie procesy,
No właśnie.
> ktore obciaza system w 100% - dlatego zgadzam sie iz 2 jadra daja
> wyrazna poprawe komfortu pracy w stosunku do jednego, ale 4 w stosunku
> do dwoch to juz nie.
No właśnie :)
Za takie sytuacje, jak podana przez Ciebie, powinien po
prostu odpowiadać sensowny scheduler, równo dzieląc czas
jednego rdzenia między wszystkie procesy wymagające go
w sumie niewiele. I to robi na przykład całkiem sensownie
scheduler CFS w Linuksie. Ten Windowsowy akurat jest dosyć
przeciętny (a do tego jego działanie jest pogarszane
przez badziewnie napisane aplikacje, nie potrafiące
korzystać z priorytetów i oczekiwania) i stąd w ogóle
widać jakiekolwiek zyski z dodatkowych rdzeni w typowych
zastosowaniach (a nie powinno być w zasadzie widać).
-- |""""""""""""""""""""""""""""""""""""""""""""""""""""""""""| | Radosław Sokół | http://www.grush.one.pl/ | | | Administrator, Politechnika Śląska | \................... Microsoft MVP ......................../Received on Thu Aug 16 10:55:09 2007
To archiwum zostało wygenerowane przez hypermail 2.1.8 : Thu 16 Aug 2007 - 11:51:13 MET DST