View Full Version : Scheduling processi/cores
mirkonorroz
13-08-2015, 08:40
Ciao, volevo chiedere come gestisce lo scheduling dei cores o dei processi win 7.
Io ho un FX-8350 e ho notato che se lancio ad esempio cinebench o wprime con un solo thread (indipendentemente dall'affinita' settata con il task manager) il calcolo viene palleggiato da un core all'altro e non eseguito da un solo core.
Dove lo mettiamo l'overhead?
Mi sembra strano un comportamento del genere.
C'e' un modo di cambiare lo scheduling?
Suppongo che le prove voi le abbiate gia fatte, quindi chiederei sia ai possessori di AMD che di INTEL se a tutti funziona in questo modo oppure no.
Grazie
[K]iT[o]
13-08-2015, 09:41
Forse dipende dal fatto che i cores degli FX non sono "completi" ma condividono alcune caratteristiche 2 a 2.
mirkonorroz
13-08-2015, 10:47
iT[o];42758247']Forse dipende dal fatto che i cores degli FX non sono "completi" ma condividono alcune caratteristiche 2 a 2.
Ciao grazie,
adesso ho provato il cinebench in windows 10, con un thread e a cambiare l'affinita' durante il rendering e funziona, cioe' il calcolo va tutto su un core.
Se la setto prima del rendering, e poi vado per cambiarla mentre renderizza, i core sono tutti attivi. Il rendering, certamente resetta delle impostazioni (nel task manager c'e' sempre una sola voce per cinema 4d).
Comunque e' strano che con l'affinita' a 8 core e il rendering a 1 thread questo mi venga suddiviso comunque in piu' "core", sia che li conti come tali che li conti come finti o legati a 2 a 2.
Devo riprovare in 7, non vorrei aver attivato l'affinita' prima di lanciare il rendering.
EDIT: Provato. Ok "funziona" anche in windows 7. Tra virgolette perche' me lo aspettavo un po' piu' smart.
EDIT2: Tanto per curiosita' ho confrontato il punteggio al cinebench:
1 core, 1 thread (nei settings del CB), affinita' 1 core "al volo" nel task manager: 93/94 CB
1 core, 1 thread (nei settings del CB), affinita' 8 core nel task manager : 98 CB
Strano.
O che il thread del CB non e' esattamente 1 :stordita:
ma invece forse e' che io assegno si' che il processo di CB vada sul solo core X ma non viene impedito (ne' da parte mia ne' da parte del sistema) agli altri processi di usarlo, quindi CB ne usa meno del 100% e l'overhead dello switching dello stesso processo su 8 core sembra trascurabile rispetto alla fetta rubata dai processi in background sul singolo core (al 100%).
Blue_screen_of_death
13-08-2015, 16:12
Ciao, volevo chiedere come gestisce lo scheduling dei cores o dei processi win 7.
Io ho un FX-8350 e ho notato che se lancio ad esempio cinebench o wprime con un solo thread (indipendentemente dall'affinita' settata con il task manager) il calcolo viene palleggiato da un core all'altro e non eseguito da un solo core.
Dove lo mettiamo l'overhead?
Mi sembra strano un comportamento del genere.
C'e' un modo di cambiare lo scheduling?
Suppongo che le prove voi le abbiate gia fatte, quindi chiederei sia ai possessori di AMD che di INTEL se a tutti funziona in questo modo oppure no.
Grazie
Non ci vedo niente di strano. E' chiaro che il sistema cerca di bilanciare il carico tra i vari cores.
mirkonorroz
13-08-2015, 18:22
Non ci vedo niente di strano. E' chiaro che il sistema cerca di bilanciare il carico tra i vari cores.
Si si, ci ho pensato un po' su e anche dal fatto che l'overhead e' trascurabile ora mi tornano i conti.
:)
E' che pensavo ci fosse un metodo migliore, per bilanciare, che evitasse un certo switching anche a scapito di un vero e proprio appiattimento del carico sui thread, ma probabilmente mi sbagliavo.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.