Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> hardware >> CPU >> .

Quanti processi può eseguire contemporaneamente una CPU?

Il numero di processi che una CPU può * eseguire veramente * contemporaneamente è limitato dal numero di nuclei fisici Ha.

Ecco una rottura:

* CORE FISICI: Un nucleo fisico è un'unità di elaborazione completa all'interno della CPU. Se si dispone di una CPU con 4 core fisici, può veramente eseguire 4 diverse istruzioni (o parti di 4 processi diversi) *allo stesso tempo *.

* threads (core logici): Le CPU moderne usano spesso una tecnologia chiamata multithreading simultaneo (SMT) , con l'implementazione di Intel chiamata hyper-threading . Ciò consente a un singolo nucleo fisico di apparire come due core logici (thread) nel sistema operativo. Anche se non * raddoppia * le prestazioni, consente al core di utilizzare parti inattivi di se stesso in modo più efficiente. Pensa che abbia un singolo chef (nucleo fisico) che può lavorare su più piatti (fili) contemporaneamente cambiando tra loro quando un'attività è in attesa (ad esempio, in attesa che l'acqua bolli). Una CPU a 4 core con hyper-threading apparirà come 8 core logici.

* Sistema operativo e processi: Il sistema operativo gestisce tutti i processi e i thread in esecuzione sul computer. Passa rapidamente tra loro, dando a ciascuno una piccola fetta di tempo della CPU (questo si chiama condivisione del tempo o multitasking). Questo crea la * illusione * di eseguire molti processi contemporaneamente, anche se la CPU sta lavorando attivamente su un numero limitato in un dato istante.

In sintesi:

* Una CPU può veramente eseguire una serie di processi pari al suo numero di * core fisici * contemporaneamente.

* Hyper-threading (o SMT) * Migliora * la capacità di ciascun nucleo fisico di gestire più lavoro eseguendo più * thread * contemporaneamente.

* Il sistema operativo gestisce un numero molto maggiore di processi e thread rispetto alla CPU ha core, creando l'aspetto della vera simultaneità attraverso una rapida commutazione del contesto.

Esempio:

Una CPU con 8 nuclei fisici e hyper-threading (16 core logici) può:

* * Veramente * eseguire 8 istruzioni diverse allo stesso tempo (una su ciascun nucleo fisico).

* * Effettivamente * gestire fino a 16 thread contemporaneamente, facendo un uso migliore delle risorse di ciascun core.

* * Sembra * eseguire centinaia o migliaia di processi contemporaneamente perché il sistema operativo sta rapidamente cambiando tra di loro.

Considerazioni importanti:

* Collette di bottiglia: Altri fattori, come RAM, I/O del disco e velocità di rete, possono anche limitare le prestazioni complessive di un sistema, anche se la CPU è potente.

* Carico di lavoro: Alcuni processi sono più ad alta intensità di CPU di altri. Un sistema potrebbe essere in grado di "gestire" molti processi leggeri contemporaneamente, ma lottare con alcuni molto esigenti.

Pertanto, la risposta è tecnicamente il numero di *core fisici *, ma è importante comprendere il ruolo dei thread e il sistema operativo nella creazione della percezione di eseguire molti processi contemporaneamente.

 

hardware © www.354353.com