Ubuntu utilizza CPU multicore (come si dice che faccia Windows 7)?
In altre parole, il multitasking è ottimizzato in modo che gli utenti possano trarre vantaggio da più di 4 processori core?
Ubuntu utilizza CPU multicore (come si dice che faccia Windows 7)?
In altre parole, il multitasking è ottimizzato in modo che gli utenti possano trarre vantaggio da più di 4 processori core?
Risposte:
Sì, Ubuntu è ottimizzato per CPU multicore ed è stato per molti anni.
"La versione 2.0 (del kernel Linux) è stata rilasciata il 9 giugno 1996. C'erano 41 versioni della serie. La principale caratteristica della versione 2.0 era il supporto SMP (ovvero la multi-elaborazione simmetrica in un singolo sistema) e il supporto per più tipi di processori ".
Ubuntu è un sistema operativo, una distribuzione Linux. Un sistema operativo è costituito da diversi componenti software come un kernel, librerie , servizi / demoni, applicazioni, ecc.
Ubuntu utilizza il kernel Linux che utilizza il multiprocessing simmetrico (SMP) e più core. Si adatta molto bene da sistemi single-core single-cpu di fascia bassa a cluster supercomputer di fascia alta con migliaia di CPU multi-core.
Ubuntu viene fornito con centinaia di librerie, alcune delle quali sono multi-thread e thread-safe, altre no. In alcuni casi ha senso che siano multi-thread, in altri non è applicabile, generalmente possibile o non ha molto senso.
Ubuntu viene fornito con centinaia di applicazioni, alcune sono codificate per utilizzare CPU multi-core, altre no. In alcuni casi ha senso codificare l'applicazione in quanto tale, in altri casi non è possibile. Non tutte le applicazioni che potrebbero o dovrebbero utilizzare più core lo fanno.
Esempio ha senso che un gioco utilizzi il multi-core per grafica, audio, rete, fisica, ecc. Ma non ha senso che una calcolatrice, uno strumento di screenshot, un suduko o un editor di menu siano consapevoli del multi-core.
Il kernel di Ubuntu supporta CPU multiple da molto tempo ormai, non importa se le sue CPU multi-core o multiple in un sistema, saranno gestite perfettamente.
Una cosa di cui devi essere consapevole, però, solo perché un sistema supporta diverse CPU / core e quelli presenti in un sistema non significa che le tue applicazioni funzioneranno automaticamente più velocemente. Ti viene detto spesso il contrario ora un giorno, è una cosa di marketing.
Affinché un'applicazione possa sfruttare contemporaneamente più CPU / core, deve essere costruita per condividere il carico di processo su tali CPU / core.
Vale a dire: diciamo che stai eseguendo qualcosa di semplice come wordpad
in Windows e stai aprendo un enorme file di testo con esso, il tempo di caricamento sarà lo stesso o hai 1 CPU o 1 zillion CPU (per CPU con la stessa velocità del bus e architettura simile OFC).
Lo stesso vale per Linux Kernel e la distribuzione Ubuntu, se un'applicazione viene creata per un singolo thread, non ci sarà più nulla da fare per le CPU.
Una cosa che i sistemi operativi stanno facendo ormai da un giorno per ottimizzare il carico delle applicazioni su più CPU / core è la capacità di eseguire un processo su un core che non è così carico come gli altri, bilanciando così il carico e assicurandosi che i vostri core multipli l'utilizzo è ottimale. In pratica, l'utilizzo di quella tecnica porta solo piccoli miglioramenti di velocità.
Se vuoi davvero vedere i tuoi core brillare devi fare un intenso utilizzo della CPU con programmi che supportano il multiprocessing simmetrico , come l'editing video, ecc.
Sì, funziona perfettamente per me e ho più processori e hyper-threading, che ho dimenticato cosa significa, ma sono abbastanza sicuro che significhi qualcosa su ogni processore in grado di eseguire più thread, il che combinato con il fatto che ogni processore ha 2 core, sembra essere un problema. L'unico problema che ho riscontrato finora è che i programmi su Ubuntu tendono a bloccarlo. L'ho fatto accadere meno spesso diminuendo lo swappiness poiché ho 6 GB di RAM.