Multinúcleo
Tese: Multinúcleo. Pesquise 862.000+ trabalhos acadêmicosPor: Jess21 • 14/9/2014 • Tese • 1.203 Palavras (5 Páginas) • 227 Visualizações
Multinúcleo (múltiplos núcleos, do inglês multicore) consiste em colocar dois ou mais núcleos de processamento (cores) no interior de um único chip. Estes dois ou mais núcleos são responsáveis por dividir as tarefas entre si, ou seja, permitem trabalhar em um ambiente multitarefa. Em processadores de um só núcleo, as funções de multitarefa podem ultrapassar a capacidade da CPU, o que resulta em queda no desempenho enquanto as operações aguardam para serem processadas. Em processadores de múltiplos núcleos o sistema operacional trata cada um desses núcleos como um processador diferente. Na maioria dos casos, cada unidade possui seu próprio cache e pode processar várias instruções simultaneamente. Adicionar novos núcleos de processamento a um processador (único encapsulamento) possibilita que as instruções das aplicações sejam executadas em paralelo, como se fossem 2 ou mais processadores distintos.
Os dois núcleos não somam a capacidade de processamento, mas dividem as tarefas entre si. Por exemplo, um processador de dois núcleos com clock de 1.8 GHz não equivale a um processador de um núcleo funcionando com clock de 3.6 Ghz, e sim dois núcleos 1,8GHZ operando em paralelo. O termo multinúcleo ou multicore (como é popularmente conhecido), são por vezes utilizados para descrever arquiteturas multicore com um número particularmente elevado de núcleos (dezenas ou centenas).
O surgimento dos processadores multicore, tornou-se necessário principalmente devido a missão cada vez mais difícil de resfriar processadores singlecore (processadores de apenas um núcleo) com clocks cada vez mais altos; devido a concentração cada vez maior de transistores cada vez menores em um mesmo circuito integrado. E além dessa e outras limitações dos processadores singlecore, existe a grande diferença entre a velocidade da memória e do processador, aliada à estreita banda de dados, que faz com que aproximadamente 75 por cento do uso do microprocessador seja gasto na espera por resultados dos acessos à memória.
Índice [esconder]
1 Descrição
2 Surgimento
2.1 Incentivos Comerciais
2.2 Vantagens
2.3 Desvantagens
3 Arquitetura
4 Exemplos de Hardware
4.1 Comercial
4.2 Free
5 Futuro dos Multicore
6 Veja Também
7 Referências
Descrição[editar | editar código-fonte]
Na maioria dos processadores de mais de um núcleo, cada núcleo pode possuir sua própria cache e alguns casos realizam acesso direto e independente à memória principal; possibilita-se, assim, que as instruções de aplicações sejam executadas em paralelo, ou seja, cada processador realiza os cálculos de que é requisitado concorrentemente com o outro, ganhando desempenho. Este, porém, depende muito dos algoritmos de software utilizados e de suas implementações.
Outra vantagem do processamento em paralelo é a capacidade de cada processador ficar responsável pela execução de um aplicativo, como por exemplo, quando o usuário está executando algum arquivo de som e ao mesmo tempo executando a varredura do antivírus.
A diferença desse processamento paralelo e do até então usado nos processadores singlecore pode ser visto nas figuras abaixo; observe o gargalo (bottleneck) criado pelos aplicativos executados simultaneamente no singlecore, e como ele desaparece na figura com os dois núcleos (cores).
Surgimento[editar | editar código-fonte]
Embora a tecnologia de fabricação tenha melhorado, reduzindo o tamanho de processadores individuais, limites físicos de semicondutores baseados em microeletrônica haviam se tornado uma preocupação principal. Estas limitações físicas poderiam causar dissipação de calor significativa e problemas de sincronização de dados. Vários métodos foram e estão sendo usados para melhorar o desempenho da CPU. Alguns paralelismos por nível de instrução (ILP), métodos como pipelining superescalares são adequados para muitas aplicações, mas são ineficientes para os que são difíceis de prever código. Muitas aplicações são mais adequadas para paralelismo por nível de thread (TLP), métodos e múltiplas CPUs independentes são comumente usados para aumentar a TLP geral de um sistema. Uma combinação de espaço disponível aumentou (devido a processos de fabricação refinados) e a demanda por TLP aumento e levou ao desenvolvimento de CPUs multi-core.
Incentivos Comerciais[editar | editar código-fonte]
Vários negócios impulsionaram o desenvolvimento da arquitetura multicore. Durante décadas, foi possível melhorar o desempenho de uma CPU, reduzindo a área do circuito integrado, que diminuiu o custo por dispositivo. Como alternativa, mais transistores poderiam ser utilizados no projeto, o que aumentou a funcionalidade, especialmente para as arquiteturas CISC. Eventualmente, estas técnicas atingiram o seu limite e não puderam continuar a melhorar o desempenho da CPU. Múltiplos processadores tiveram que ser empregados para ganhar velocidade no processamento. Vários núcleos foram usados no mesmo chip para melhorar o desempenho, o que poderia então levar a melhores vendas de CPUs que tinham dois ou mais núcleos.
...