Come scoprire quanti processori ha il mio computer? Per cosa posso usare questa informazione

Ti darò t̶w̶o̶ tre risposte! La prima come utente, la seconda come utente avanzato, e infine come programmatore. È una domanda semplice, quindi darò una risposta inutilmente complicata. Enjoy!

Nota: uso Windows 10

Come utente di computer lo scopro premendo Ctrl Shift Esc (preferito) o Ctrl Alt Del poi seleziono Task Manager. Fai clic su "Altri dettagli" in basso. Naviga alla scheda delle prestazioni e da lì, sotto i grafici ci dovrebbero essere alcune informazioni etichettate "core" e "processori logici". Nell'immagine qui sotto, il numero di core è in viola/blu, il numero di processori logici è in giallo e il modello di CPU è in rosso.

main-qimg-723cf08fb64af89435b6bcb308604e4b.webp

In caso non l'abbiate notato, il modello di CPU recita "AMD FX(tm)-6100 Six-Core Processor". Tuttavia nel riquadro viola, si legge "Cores: 3". Questo perché il "core" AMD Piledriver e Bulldozer è in realtà due core fusi insieme in un "modulo". Ciò significa che ci sono 2 unità di elaborazione dei numeri interi ma solo 1 unità di elaborazione in virgola mobile, cache condivisa, ecc. L'argomento se un modulo faccia due core o un solo core è oggetto di dibattito. Nei miei test, la matematica intera e in virgola mobile sembra scalare bene... Basta divagare.

Il numero di processori (numero di CPU) che il vostro computer ha è etichettato come "socket", è sopra l'evidenziazione viola/blu. Una CPU va dentro un socket. Il computer non verrà postato (avviato) a meno che tutte le prese abbiano un processore al loro interno, quindi è sicuro assumere che 2 prese = 2 CPU.

Una CPU e un core CPU sono molto diversi. CPU vs CORE

main-qimg-dd4e9dcd18e595f75fde72d3e3783458.webp

Un altro modo per scoprirlo è semplicemente cercare su Google il nome della vostra cpu, per esempio "fx 6100" o "ryzen 5 1400" o "i5 2500k". Puoi trovare le informazioni ufficiali su Product Resource Center per un processore AMD o Intel® Product Specifications per un processore Intel.

Questa informazione potrebbe essere utile se stai controllando i requisiti di sistema per un videogioco o qualcosa del genere. Alcuni giochi... *cough* Far Cry 4... hanno bisogno di più di 2 core per funzionare e si blocca con un processore dual core.

Come utente avanzato...

Invece di usare il task manager, trovo più informazioni quando uso un programma chiamato "CPUz" che ho anche sul mio telefono Android! In basso a destra ci sono due numeri etichettati "core" e "thread". IMO "thread" è un nome più accurato per "processori logici".

main-qimg-c75080a499f65e800b31d90d8e7621b6.webp

Questa informazione può essere usata come sopra o più spesso per vantarsi per alcuni dei miei amici esperti di tecnologia. Just look at it…

main-qimg-b09a04b208bd7d455a60525ac5902b1b.webp

Now, as a programmer

To find out the number of threads (not cores) a processor has I usually type in something like this (in java code):

  1. int threadCount = Runtime.getRuntime().availableProcessors(); 

This will give me an integer variable called “threadCount”. Nel mio caso, poiché ho 6 core, "threadCount" avrà un valore di 6.

Questa informazione può essere utile in molte situazioni. Per esempio, ho fatto una simulazione di un gioco di carte trasformata in benchmark. Quello che ho scoperto è che usando 4 thread su un processore a 4 core il gioco impiega 10 secondi per finire. Tuttavia, se uso 10 thread sullo stesso processore, il gioco impiega 11 secondi per finire. Questo è dovuto all'overhead della CPU che deve gestire più thread contemporaneamente. Se uso meno thread rispetto al numero di core, allora non sto usando la CPU al suo massimo potenziale.

In conclusione, trovare la quantità di processori (CPU) di un computer è abbastanza inutile a meno che non lo si faccia per vantarsi. Trovare il numero di core/thread è più utile per cercare i requisiti di sistema e ottimizzare i programmi.