Domanda

Sto cercando di capire come un sistema operativo (Windows, linux) assegna un numero di cpu logiche in una Hyper threading abilitato ambiente.?

Non sia l'OSs primo in serie assegnare i numeri per le Cpu Fisiche e quindi iniziare la numerazione la cpu logiche o c'è qualche altra regola seguita..?ad es.in 2 cpu fisiche del sistema con hyper threading , non un OS assegnare un numero 0,2 per la prima cpu fisica e quindi 1,3 a seconda cpu fisica ..?

Qualsiasi riferimento sarebbe molto apprezzato.

Grazie in anticipo.

Saluti, -Jay.

Edit:Rispondendo ad Alan domanda :Ho bisogno di sapere questo perché, Nel mio lavoro ho bisogno di associare i vari thread specifico Cpu per evitare commutazioni di contesto e voglio fare in modo che determinati Compiti( Thread ) sono tenuti a separato cpu fisiche.Grazie

È stato utile?

Soluzione

Da quello che so, tutto dipende da come la CPU espone il suo core.Quando HT abilitato, non vi sono esposti Cpu fisiche, ma piuttosto due Cpu logiche per CPU fisica, quindi non c'è alcuna differenza se si esegue un thread su CPU logica.L'unica cosa che importa è che le coppie di Cpu logiche appartengono a ogni fisico è impegnativo.

Con singolo core (come il Pentium 4 con HT), è abbastanza dritto in avanti, dal momento che hai solo una coppia - così è (0, 1).Con i processori quad-core (come Nehalem), il core logici coppie (0,4), (1,5), (2,6) e (3,7).Il pattern di avere tutta la prima metà di ogni coppia, quindi avere tutta la seconda metà deve scala con le future Cpu che hanno ancora di più core.

La vera domanda è perché avete bisogno di conoscere la coppia accordo?Lasciare che il sistema operativo di pianificazione di scegliere il proprio core per il diritto thread fa un buon lavoro.

Altri suggerimenti

Si può guardare /sys/devices/system/cpu/ per trovare le informazioni sulla Cpu.Il layout dei nuclei e la loro hyperthreaded coppie può essere trovato in /sys/devices/system/cpu/cpuN/topology/thread_siblings_list.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top