O Ubuntu está otimizado para CPUs multicore?

O Ubuntu está otimizado para CPUs multicore?

O Ubuntu faz uso de CPUs multicore (como dizem que o Windows 7 faz)?

Em outras palavras, a multitarefa é otimizada para que os usuários aproveitem os benefícios de processadores com mais de 4 núcleos?

Responder1

Sim, o Ubuntu é otimizado para CPUs multicore há muitos anos.

Alguns antecedentes:

"A versão 2.0 (do kernel Linux) foi lançada em 9 de junho de 1996. Houve 41 lançamentos na série. O principal recurso do 2.0 eraSMPapoio (ou seja,multiprocessamento simétricoem um único sistema) e suporte para mais tipos de processadores."

Responder2

Ubuntu é um sistema operacional, uma distribuição Linux. Um sistema operacional consiste em vários componentes de software, como um kernel,bibliotecas, serviços/daemons, aplicativos, etc.

Ubuntu usa oKernel Linuxque faz usomultiprocessamento simétrico(SMP) e múltiplos núcleos. Ele se adapta muito bem, desde sistemas de núcleo único de CPU única até clusters de supercomputadores de última geração com milhares de CPUs de vários núcleos.

O Ubuntu vem com centenas de bibliotecas, algumas das quais sãomultithreade thread-safe, alguns dos quais não são. Em alguns casos faz sentido que sejam multithread, em outros não é aplicável, geralmente é possível ou não faz muito sentido.

O Ubuntu vem com centenas de aplicativos, alguns são codificados para usar CPUs multi-core, outros não. Em alguns casos faz sentido codificar o aplicativo como tal, em outros casos não é possível. Nem todos os aplicativos que poderiam ou deveriam fazer uso de múltiplos núcleos o fazem.

Por exemplo, faz sentido para um jogo usar multi-core para gráficos, áudio, rede, física, etc. Mas não faz sentido para uma calculadora, ferramenta de captura de tela, suduko ou editor de menu ter reconhecimento de multi-core.

Responder3

Ubuntunúcleosuporta múltiplas CPUs há muito tempo, realmente não importa se são multi-core ou múltiplas CPUs em um sistema, elas serão tratadas perfeitamente.

Porém, uma coisa que você deve estar ciente: só porque um sistema tem suporte para várias CPUs/núcleos e eles estão presentes em um sistema, isso não significa que seus aplicativos serão executados automaticamente mais rápido. Hoje em dia, dizem muito o contrário, é uma coisa de marketing.

Para que um aplicativo aproveite várias CPUs/núcleos ao mesmo tempo, ele precisa ser construído para compartilhar a carga do processo entre essas CPUs/núcleos.

Ou seja: digamos que você esteja executando algo tão simples como wordpadno Windows e abrindo umenormearquivo de texto com ele, o tempo de carregamento será o mesmo se você tiver 1 CPU ou 1 zilhão de CPUs (para CPUs com a mesma velocidade de barramento e arquitetura semelhante).

O mesmo acontece com o Kernel Linux e a distribuição Ubuntu, se um aplicativo for construído para um único thread, não haverá mais nada que as CPUs possam fazer.

Uma coisa que os sistemas operacionais estão fazendo hoje em dia para otimizar a carga de aplicativos em vários CPUs/núcleos é a capacidade de executar um processo em um núcleo que não esteja tão carregado quanto os outros, equilibrando assim a carga e garantindo que seus múltiplos núcleos a utilização é ótima. Difícil na prática, a utilização dessa técnica traz apenas pequenas melhorias de velocidade.

Se você realmente deseja ver seus núcleos brilharem, você precisa fazer uso pesado da CPU com programas que suportammultiprocessamento simétrico, como edição de vídeo, etc.

Responder4

Sim, funciona perfeitamente para mim e tenho vários processadoresehyper-threading, que esqueci o que isso significa, mas tenho certeza de que significa algo sobre o fato de cada processador poder executar vários threads, o que combinado com o fato de cada processador ter 2 núcleos, parece ser um problema. O único problema que encontrei até agora é que os programas no Ubuntu tendem a congelá-lo. Fiz isso acontecer com menos frequência, diminuindo a troca, já que tenho 6 GB de RAM.

informação relacionada