O hiper threading é necessário? Mais uma vez sobre Hyper-Threading

Lar / Avarias

Hiper-Threading (hiper threading, 'hiper threading', hyper threading - Russo) - tecnologia desenvolvida pela empresa Informações, permitindo que o núcleo do processador execute mais de um (geralmente dois) threads de dados. Uma vez que se descobriu que um processador típico na maioria das tarefas não utiliza mais do que 70% de todo o poder computacional, optou-se por utilizar uma tecnologia que permite, quando determinadas unidades computacionais estão ociosas, carregá-las com trabalho com outro thread. Isso permite aumentar o desempenho do kernel de 10 a 80% dependendo da tarefa.

Entendendo como funciona o Hyper-Threading .

Digamos que o processador realiza cálculos simples e ao mesmo tempo o bloco de instruções está ocioso e SIMD extensões.

O módulo de endereçamento detecta isso e envia os dados para cálculo posterior. Se os dados forem específicos, esses blocos serão executados mais lentamente, mas os dados não ficarão ociosos. Ou eles irão pré-processá-los para processamento rápido adicional pelo bloco apropriado. Isso proporciona ganhos adicionais de desempenho.

Naturalmente, o thread virtual não atinge um kernel completo, mas isso permite que você alcance quase 100% eficiência do poder computacional, carregando quase todo o processador com trabalho, evitando que ele fique ocioso. Com tudo isso, para implementar a tecnologia HT leva apenas cerca de 5% espaço adicional no chip e o desempenho às vezes pode ser adicionado 50% . Esta área adicional inclui blocos de registro adicionais e previsões de ramificação que calculam onde o poder de processamento pode ser usado em no momento e enviar dados do bloco de endereçamento adicional.

Pela primeira vez, a tecnologia apareceu em processadores Pentium4, mas não houve grande aumento no desempenho, já que o processador em si não possuía alto poder computacional. O aumento foi na melhor das hipóteses 15-20% , e em muitas tarefas o processador funcionou muito mais devagar do que sem HT.

Desacelerar processador devido à tecnologia Hiper Threading, ocorre se:

  • Cache insuficiente por tudo isso e reinicia ciclicamente, desacelerando o processador.
  • Os dados não podem ser processados ​​corretamente pelo preditor de ramificação. Ocorre principalmente devido falta de otimização para determinado software ou suporte do sistema operacional.
  • Também pode ocorrer devido a dependências de dados, quando, por exemplo, o primeiro thread requer dados imediatos do segundo, mas ainda não está pronto ou está na fila para outro thread. Ou os dados cíclicos requerem certos blocos para processamento rápido e são carregados com outros dados. Pode haver muitas variações de dependência de dados.
  • Se o núcleo já estiver muito carregado e o módulo de previsão de ramificação “insuficientemente inteligente” ainda enviar dados que retardam o processador (relevante para Pentium4).

Depois Pentium4, Informações começou a usar a tecnologia apenas a partir de Núcleo i7 primeira geração, pulando a série 2 .

O poder computacional dos processadores tornou-se suficiente para a implementação completa do hyperthreading sem muitos danos, mesmo para aplicações não otimizadas. Mais tarde, Hiper-Threading apareceu em processadores de classe média e até mesmo em processadores portáteis e de baixo custo. Usado em todas as séries Núcleo eu (i3; i5; i7) e em processadores móveis Átomo(de jeito nenhum). O que é interessante é processadores dual core Com HT, obtenha um ganho de desempenho maior do que os quad-core usando Hiper-Threading, de pé 75% quad-nuclear completo.

Onde a tecnologia HyperThreading é útil?

Será útil para uso em conjunto com programas profissionais, gráficos, analíticos, matemáticos e científicos, editores de vídeo e áudio, arquivadores ( Photoshop, Corel Draw, Maya, 3D’s Max, WinRar, Sony Vegas e etc.). Todos os programas em que é usado grande número cálculos, HT definitivamente será útil. Felizmente, em 90% casos, tais programas estão bem otimizados para seu uso.

HiperThreading indispensável para sistemas de servidor. Na verdade, foi parcialmente desenvolvido para esse nicho. Graças a HT, você pode aumentar significativamente a produção do processador quando há um grande número de tarefas. Cada thread será descarregado pela metade, o que tem um efeito benéfico no endereçamento de dados e na previsão de ramificação.

Muitos jogos de computador, têm uma atitude negativa em relação à presença Hiper-Threading, devido ao qual o número de quadros por segundo diminui. Isto se deve à falta de otimização para Hiper-Threading do lado do jogo. A otimização apenas por parte do sistema operacional nem sempre é suficiente, especialmente quando se trabalha com dados incomuns, diversos e complexos.

Em placas-mãe que suportam HT, você sempre pode desativar a tecnologia hyperthreading.

Hoje resolvi abordar o tema conveniência de adquirir processadores com Hiper-Threading(Hyper Trading) para jogos.

A primeira coisa a notar é que não pode haver uma resposta clara à questão colocada. Para alguns, o Hyper-Threading é uma necessidade, mas para outros será um desperdício desnecessário de dinheiro. Analisarei ambas as opções e depois de ler o artigo (espero) todos poderão avaliar de forma independente qual desses casos é o seu e, consequentemente, tirarão conclusões WEIZED sobre a conveniência de comprar um processador com Hyper-Threading para si.

Hiper-Threading implica dividir o processamento de dados pelo núcleo do processador em 2 threads paralelos. O ponto é bem capturado pela seguinte citação:

Quando ocorre uma pausa durante a execução de um thread por um dos processadores lógicos (como resultado de uma falha de cache, erro de previsão de desvio, espera pelo resultado de uma instrução anterior), então o controle é transferido para o thread em outro processador lógico . Assim, enquanto um processo aguarda, por exemplo, dados da memória, os recursos computacionais do processador físico são utilizados para processar outro processo.

Aplicativos que NÃO precisam de Hyper-Threading.

Hyper-Threading NÃO é necessário para:

  • 90% jogos de computador, tanto modernos quanto aqueles que serão lançados nos próximos anos;
  • aplicações de escritório.

Justificativa para a inutilidade do Hyper-Threading.

Hiper-Threading tem um sério spread nos ganhos de produtividade de 0% (ou seja, total inutilidade) a 30% (o que é muito perceptível), o que depende dos seguintes fatores:

1. Otimização de uma única aplicação para trabalhar com 8 ou mais threads.

Se o aplicativo não estiver otimizado para 8 threads, o Hyper-Threading não fornecerá nenhum benefício.

Em alguns casos, tentativas de software “não treinado” de trabalhar com 8 núcleos resultam até no fato de um processador de 8 threads apresentar resultados piores do que seu “irmão mais novo” sem Hyper-Threading.

2. Porcentagem de carga da CPU

Quanto maior a porcentagem de carga do processador, mais perceptível será o impacto do Hyper-Threading. E vice-versa - com carga baixa você não notará sua influência.

Com base nesses dados, podemos concluir que Hyper-Threading NÃO é necessário para:

  • 90% dos jogos de computador, modernos e que serão lançados nos próximos anos. Eles não fornecem carga de CPU suficiente;
  • aplicações de escritório.

Onde o Hyper-Threading é NECESSÁRIO?

  • Os benefícios são inegáveis Hyper-Threading em 3D Max e em outro prof. aplicações. Nas minhas experiências, esta tecnologia reduziu o tempo de renderização em 30%;
  • O Hyper-Threading também é útil para os 10% melhores jogos de computador modernos (como Crysis 3), bem como para jogos semelhantes que serão lançados no futuro.

Mais razões para usar o Hyper-Threading para jogos

Embora existam poucos jogos no PC hoje otimizados para 8 threads, ainda acho que faz sentido comprar um i7 com 8 threads, principalmente pensando no futuro.

Primeiramente computadores para jogos no meu entendimento, eles deveriam se concentrar não na maioria dos jogos, mas em melhores jogos. Mas, na verdade, hoje existem jogos otimizados para 8 threads e com carga de CPU de 70+%.

Em segundo lugar, só podemos esperar melhorias nos jogos e, como consequência, um aumento nas suas exigências ao CPU. Principalmente levando em consideração o fato de que os consoles JÁ possuem 8 núcleos e isso deve ser tomado como a “barra” para os sistemas de jogos nos próximos anos.

Noto que em nesse caso Não se trata de especulações de um blogueiro individual, mas sim das previsões de duas equipes dos melhores profissionais que atuam em plataformas como PS e XBox.

Em terceiro lugar, o processador envelhece 2 a 3 vezes mais devagar que a placa de vídeo. Este fato permite que você substitua a placa de vídeo, digamos, em um ou dois anos e assim possa desfrutar de novos jogos atuais. Mas isso só é possível se o processador extrair ambos nova placa de vídeo e um novo jogo. EM de outra forma, ele se tornará um elo limitante e não permitirá que todo o potencial da placa de vídeo seja demonstrado em qualquer jogo específico que exija processador.

Levando em consideração todos os três pontos, comprar um processador com Hyper-Threading parece uma decisão bastante razoável para computadores para jogos.

Há informações na Internet sobre a inutilidade Hipernegociação em princípio.

Por conta própria, decidi realizar um miniteste, renderizando uma pequena cena com o Hyper-Trading ativado e desativado.

Portanto, primeiro o Hyper trading está desativado. Tempo de renderização 188 seg.

Ligue-o. O tempo de renderização é reduzido para 151 segundos.

Se você examinou o conteúdo com atenção Configuração do BIOS, então você deve ter notado a opção CPU Hyper Threading Technology lá. E você deve estar se perguntando o que é Hyper Threading (ou hyperthreading, o nome oficial é Hyper Threading Technology, HTT) e para que serve essa opção.

Hyper Threading é comparativamente nova tecnologia, desenvolvido da Intel para processadores de arquitetura Pentium. Como a prática tem mostrado, o uso da tecnologia Hyper Threading tornou possível, em muitos casos, aumentar o desempenho da CPU em aproximadamente 20-30%.

Aqui você precisa lembrar como geralmente funciona o processador central de um computador. Assim que você liga o computador e executa um programa nele, a CPU começa a ler as instruções nele contidas, escritas no chamado código de máquina. Ele lê cada instrução por vez e as executa uma após a outra.

No entanto, muitos programas possuem vários processos de software em execução simultânea. Além disso, os sistemas operacionais modernos permitem ao usuário ter vários executando programas. E eles não apenas permitem isso - na verdade, uma situação em que um único processo está sendo executado no sistema operacional é completamente impensável hoje. Portanto, processadores desenvolvidos com tecnologias mais antigas apresentavam baixo desempenho nos casos em que era necessário processar vários processos simultâneos ao mesmo tempo.

Claro, para resolver este problema, você pode incluir vários processadores ou processadores usando vários núcleos de computação física no sistema. Mas tal melhoria é dispendiosa, tecnicamente complexa e nem sempre eficaz do ponto de vista prático.

História de desenvolvimento

Portanto, decidiu-se criar uma tecnologia que permitisse processar múltiplos processos em um núcleo físico. Nesse caso, para programas, parecerá que havia vários núcleos de processador no sistema ao mesmo tempo.

O suporte à tecnologia Hyper Threading apareceu pela primeira vez em processadores em 2002. Eram processadores da família Pentium 4 e servidores Processadores Xeon com frequência de clock acima de 2 GHz. Inicialmente, a tecnologia recebeu o codinome Jackson, mas depois seu nome foi alterado para Hyper Threading, que é mais compreensível para o público em geral – que pode ser traduzido aproximadamente como “super-threading”.

Ao mesmo tempo, segundo a Intel, a área de superfície do cristal do processador que suporta Hyper Threading aumentou em apenas 5% em comparação com o modelo anterior que não o suporta, com um aumento médio de desempenho de 20%.

Apesar de a tecnologia ter se mostrado bem em geral, por uma série de razões, a Intel decidiu desabilitar a tecnologia Hyper Threading nos processadores da família Core 2 que substituíram o Pentium 4. O Hyper Threading, entretanto, reapareceu posteriormente em processadores do As arquiteturas Sandy Bridge e Ivy Bridge e Haswell foram significativamente redesenhadas.

A essência da tecnologia

Compreender a tecnologia Hyper Threading é importante porque é uma das... funções principais V Processadores Intel.

Apesar de todo o sucesso alcançado pelos processadores, eles têm uma desvantagem significativa - eles só podem executar uma instrução por vez. Digamos que você lançou simultaneamente aplicativos como editor de texto, navegador e Skype. Do ponto de vista do usuário, esse ambiente de software pode ser chamado de multitarefa, porém, do ponto de vista do processador, isso está longe de ser o caso. O núcleo do processador ainda executará uma instrução por determinado período de tempo. Nesse caso, a tarefa do processador é distribuir os recursos de tempo do processador entre aplicativos individuais. Como essa execução sequencial de instruções acontece de forma extremamente rápida, você não percebe. E parece que não há demora.

Mas ainda há um atraso. O atraso ocorre devido à maneira como cada programa fornece dados ao processador. Cada fluxo de dados deve chegar em um horário específico e ser processado individualmente pelo processador. A tecnologia Hyper Threading permite que cada núcleo do processador agende o processamento de dados e distribua recursos simultaneamente para dois threads.

Deve-se notar que no núcleo dos processadores modernos existem vários chamados dispositivos de execução, cada um dos quais é projetado para realizar uma operação específica nos dados. Nesse caso, alguns desses dispositivos executivos podem ficar ociosos durante o processamento de dados de um thread.

Para entender essa situação, podemos fazer uma analogia com os trabalhadores que trabalham em uma oficina de montagem em uma esteira e processam diversos tipos de peças. Cada trabalhador está equipado com uma ferramenta específica projetada para realizar uma tarefa. No entanto, se as peças chegarem na sequência errada, ocorrerão atrasos porque alguns trabalhadores esperam na fila para começar a trabalhar. O Hyper Threading pode ser comparado a uma correia transportadora adicional que foi instalada na oficina para que os trabalhadores anteriormente ociosos pudessem realizar suas operações independentemente dos outros. A oficina ainda é uma só, mas as peças são processadas de forma mais rápida e eficiente, resultando na redução do tempo de inatividade. Assim, o Hyper Threading tornou possível ativar as unidades de execução do processador que estavam ociosas durante a execução de instruções de um thread.

Assim que você ligar um computador com processador dual-core compatível com Hyper Threading e abrir o Gerenciador de Tarefas do Windows na guia Desempenho, você encontrará quatro gráficos nele. Mas isso não significa que você realmente tenha 4 núcleos de processador.

Isso acontece porque o Windows pensa que cada núcleo possui dois processadores lógicos. O termo “processador lógico” parece engraçado, mas significa um processador que não existe fisicamente. O Windows pode enviar fluxos de dados para cada processador lógico, mas apenas um núcleo realmente faz o trabalho. Portanto, um único núcleo com tecnologia Hyper Threading é significativamente diferente de núcleos físicos separados.

A tecnologia Hyper Threading requer suporte dos seguintes hardware e software:

Benefícios da tecnologia

Agora vamos considerar a seguinte questão: quanto a tecnologia Hyper Threading aumenta o desempenho do computador? Nas tarefas cotidianas, como navegar na Internet e digitar, os benefícios da tecnologia não são tão óbvios. No entanto, tenha em mente que os processadores atuais são tão poderosos que as tarefas diárias raramente utilizam totalmente o processador. Além disso, depende muito também de como está escrito programas. Você pode ter vários programas em execução ao mesmo tempo, mas se observar o gráfico de carga, verá que apenas um processador lógico por núcleo está sendo usado. Isso acontece porque o software não suporta a distribuição de processos entre núcleos.

Porém, para tarefas mais complexas, o Hyper Threading pode ser mais útil. Aplicativos como programas de modelagem 3D, jogos 3D, programas de codificação/decodificação de música ou vídeo e muitos aplicativos científicos são escritos para aproveitar ao máximo o multithreading. Assim, você pode experimentar os benefícios de desempenho de um computador habilitado para Hyper Threading enquanto joga jogos desafiadores, ouve música ou assiste a filmes. O aumento de desempenho pode chegar a 30%, embora possa haver situações em que o Hyper Threading não ofereça nenhuma vantagem. Às vezes, se ambos os threads carregam todas as unidades de execução do processador com as mesmas tarefas, pode até ser observada uma ligeira diminuição no desempenho.

Voltando à presença de uma opção correspondente no BIOS Setup que permite definir os parâmetros do Hyper Threading, na maioria dos casos é recomendado habilitar esta função. No entanto, você sempre pode desativá-lo se descobrir que seu computador está funcionando com erros ou até mesmo com desempenho inferior ao esperado.

Conclusão

Como o aumento máximo de desempenho ao usar Hyper Threading é de 30%, não se pode dizer que a tecnologia equivale a dobrar o número de núcleos do processador. No entanto, o Hyper Threading é uma opção útil e, como proprietário de um computador, não fará mal a você. Sua vantagem é especialmente perceptível, por exemplo, nos casos em que você edita arquivos multimídia ou utiliza seu computador como estação de trabalho para tais programas profissionais, como Photoshop ou Maya.

A tecnologia Hyper-Threading (HT, hyperthreading) apareceu pela primeira vez há 15 anos - em 2002, em Processadores Pentium 4 e Xeon, e desde então apareceu em processadores Intel (na linha Core i, alguns Atom, em ultimamente também no Pentium), depois desapareceu (seu suporte não estava disponível nas linhas Core 2 Duo e Quad). E durante esse tempo, adquiriu propriedades míticas - dizem que sua presença quase dobra o desempenho do processador, transformando i3s fracos em i5s poderosos. Ao mesmo tempo, outros dizem que o HT é uma estratégia de marketing comum e de pouca utilidade. A verdade está, como sempre, no meio - em alguns lugares há algum sentido nisso, mas você definitivamente não deve esperar um aumento duplo.

Descrição técnica da tecnologia

Vamos começar com a definição dada no site da Intel:

A tecnologia Intel® Hyper-Threading (Intel® HT) permite um uso mais eficiente dos recursos do processador, permitindo a execução de vários threads em cada núcleo. Em termos de desempenho, esta tecnologia aumenta o rendimento dos processadores, melhorando o desempenho geral das aplicações multithread.

Em geral, é claro que nada está claro - apenas frases gerais, mas descrevem brevemente a tecnologia - o HT permite que um núcleo físico processe simultaneamente vários (geralmente dois) threads lógicos. Mas como? Processador com suporte para hyperthreading:

  • pode armazenar informações sobre vários threads em execução de uma só vez;
  • contém um conjunto de registros (ou seja, blocos memória rápida dentro do processador) e um controlador de interrupção (ou seja, uma unidade de processador integrada responsável pela capacidade de processar sequencialmente solicitações para a ocorrência de qualquer evento que requeira atenção imediata, desde dispositivos diferentes) por processador lógico.
Vejamos um exemplo simples:

Digamos que o processador tenha duas tarefas. Se o processador tiver um núcleo, ele os executará sequencialmente, se tiver dois, então em paralelo em dois núcleos, e o tempo de execução de ambas as tarefas será igual ao tempo gasto na tarefa mais pesada. Mas e se o processador for single-core, mas suportar hyperthreading? Como você pode ver na imagem acima, ao executar uma tarefa, o processador não está 100% ocupado - alguns blocos do processador simplesmente não são necessários nesta tarefa, em algum lugar o módulo de previsão de ramificação comete um erro (que é necessário para prever se um condicional branch será executada no programa), em algum lugar há um erro de acesso ao cache - em geral, ao executar uma tarefa, o processador raramente fica mais de 70% ocupado. E a tecnologia HT simplesmente “empurra” uma segunda tarefa em blocos de processador desocupados, e acontece que duas tarefas são processadas simultaneamente em um núcleo. Porém, a duplicação do desempenho não ocorre por motivos óbvios - muitas vezes acontece que duas tarefas precisam da mesma unidade computacional no processador, e então vemos uma tarefa simples: enquanto uma tarefa está sendo processada, a execução da segunda é simplesmente interrompido neste momento (quadrados azuis - a primeira tarefa, verdes - a segunda, vermelhos - tarefas que acessam o mesmo bloco no processador):

Como resultado, o tempo gasto por um processador com HT em duas tarefas acaba sendo maior que o tempo necessário para calcular a tarefa mais pesada, mas menor que o tempo necessário para avaliar sequencialmente ambas as tarefas.

Prós e contras da tecnologia

Levando em consideração o fato de que o chip do processador com suporte HT é fisicamente maior do que o chip do processador sem HT em uma média de 5% (isso é quanto blocos de registro adicionais e controladores de interrupção ocupam), e o suporte HT permite que você carregue o processador em 90-95%, então comparado a 70% sem HT, obtemos que o aumento na melhor das hipóteses será de 20-30% - o número é bastante grande.

Porém, nem tudo é tão bom: acontece que não há nenhum ganho de desempenho com o HT, e acontece até que o HT piora o desempenho do processador. Isso acontece por vários motivos:

  • Falta de memória cache. Por exemplo, os i5s quad-core modernos têm 6 MB de cache L3 - 1,5 MB por núcleo. Nos i7s quad-core com HT, o cache já é de 8 MB, mas como são 8 núcleos lógicos, obtemos apenas 1 MB por núcleo - durante os cálculos, alguns programas podem não ter esse volume suficiente, o que leva a uma queda em desempenho.
  • Falta de otimização de software. O problema mais básico é que os programas consideram os núcleos lógicos como físicos, e é por isso que, ao executar tarefas em paralelo em um núcleo, muitas vezes ocorrem atrasos devido às tarefas que acessam a mesma unidade computacional, o que acaba reduzindo o ganho de desempenho do HT a nada.
  • Dependência de dados. Decorre do ponto anterior - para completar uma tarefa é necessário o resultado de outra, mas ainda não foi concluída. E novamente temos tempo de inatividade, redução na carga da CPU e um pequeno aumento no HT.
Programas que podem funcionar com hyperthreading

São muitos, porque para cálculos de HT isso é um maná do céu - a dissipação de calor praticamente não aumenta, o processador não fica muito maior e com a otimização adequada você consegue um aumento de até 30%. Portanto, seu suporte foi rapidamente implementado naqueles programas onde é fácil paralelizar a carga - em arquivadores (WinRar), programas para modelagem 2D/3D (3ds Max, Maya), programas para processamento de fotos e vídeos (Sony Vegas, Photoshop, Corel Draw).

Programas que não funcionam bem com hyperthreading

Tradicionalmente, esta é a maioria dos jogos - eles geralmente são difíceis de paralelizar corretamente, muitas vezes quatro núcleos físicos por altas frequências(i5 série K) é mais que suficiente para jogos, paralelizar o que para 8 núcleos lógicos no i7 acaba sendo uma tarefa impossível. Porém, vale considerar que existem processos em segundo plano, e se o processador não suportar HT, seu processamento recai sobre os núcleos físicos, o que pode tornar o jogo mais lento. Aqui o i7 com HT vence - todas as tarefas em segundo plano tradicionalmente têm uma prioridade mais baixa, portanto, ao executar simultaneamente em um núcleo físico do jogo e uma tarefa em segundo plano, o jogo receberá maior prioridade e a tarefa em segundo plano não “distrairá” os núcleos ocupado com o jogo - é por isso que para fazer streaming ou gravar jogos, é melhor levar um i7 com hyperthreading.

Resultados

Talvez reste apenas uma questão aqui - faz sentido usar processadores com HT ou não? Se você gosta de manter cinco programas abertos ao mesmo tempo e jogar ao mesmo tempo, ou está envolvido em processamento de fotos, vídeos ou modelagem - sim, claro que vale a pena. E se você está acostumado a fechar todos os outros antes de iniciar um programa pesado e não se envolve em processamento ou modelagem, então um processador com HT não tem utilidade para você.

Em fevereiro de 2002, a tecnologia proprietária da Intel, Hyper-Threading, foi lançada. O que é isso e por que se tornou quase universal hoje? A resposta a esta pergunta e muito mais será discutida neste material.

História do surgimento da tecnologia HT

O primeiro processador de desktop a suportar multithreading lógico foi o Pentium de quarta geração. Hyper-Threading é uma tecnologia que neste caso possibilitou processar dois fluxos de dados ao mesmo tempo em um núcleo físico. Além disso, este chip foi instalado no soquete do processador PGA478, operava no modo de computação de 32 bits e sua frequência de clock era de 3,06 GHz. Antes disso, ele só podia ser encontrado em dispositivos processadores de servidor da série XEON.

Após obter resultados de sucesso neste nicho, a Intel decidiu estender o HT para o segmento de desktops. Posteriormente, toda uma família desses processadores foi lançada dentro do PGA478. Após a estreia do soquete LGA775, o NT foi temporariamente esquecido. Mas com o início das vendas do LGA1156, ele recebeu um segundo fôlego em 2009. Desde então, tornou-se um atributo obrigatório das soluções de processadores da Intel, tanto no segmento de ultra-desempenho quanto em sistemas de computadores econômicos.

O conceito desta tecnologia

A essência da tecnologia Intel Hyper-Threading é que, por meio de alterações mínimas no layout do dispositivo microprocessador, os desenvolvedores garantem que, nos níveis do sistema e do software, o código seja processado em dois threads em um núcleo físico. Todos os elementos do módulo de computação permanecem inalterados, apenas registros especiais e um controlador de interrupção redesenhado são adicionados.

Se por algum motivo o módulo de computação física começar a ficar ocioso, o segundo thread do programa será iniciado nele, enquanto o primeiro aguarda o recebimento dos dados ou informações necessárias. Ou seja, se antes as paralisações no funcionamento da parte computacional dos chips eram bastante frequentes, o Hyper-Threading elimina quase completamente essa possibilidade. Vejamos o que é essa tecnologia abaixo.

No nível do hardware

Requisitos maiores são impostos ao hardware ao usar o Hyper-Threading. A placa-mãe, BIOS e processador devem suportá-lo. Pelo menos dentro do soquete do processador PGA478, tal compatibilidade teve que receber atenção especial. Nem todos os conjuntos lógicos do sistema, neste caso, foram orientados para o uso do NT, assim como os dispositivos processadores. E mesmo que na nomenclatura placa-mãe Se a tão cobiçada abreviatura estivesse presente, isso não significava que os chips foram inicializados corretamente porque o BIOS precisava ser atualizado.

A situação neste caso mudou dramaticamente desde LGA1156. Esta plataforma de computação foi originalmente projetada para uso de Hyper-Threading. Portanto, os usuários não encontraram problemas significativos com o uso deste último neste caso. O mesmo se aplica aos subsequentes soquetes de processador como LGA1155, LGA1151 e LGA1150.

Os soquetes de alto desempenho LGA1366, LGA2011 e LGA2011-v3 podem se orgulhar de uma ausência semelhante de problemas com o uso de HT. Para completar, a concorrente direta da Intel, a AMD, implementou uma tecnologia lógica multitarefa muito semelhante – SMT – na última geração de seus processadores para AM4. Ele usa um conceito quase idêntico. A única diferença está no nome.

Principais componentes do lado do software

Deve-se notar que mesmo que o NT seja totalmente suportado por recursos de hardware, nem sempre funcionará com êxito no nível de software. Para começar sistema operacional deve ser capaz de trabalhar simultaneamente com vários núcleos de computação. As versões desatualizadas atuais do software de sistema MS-DOS ou Windows 98 não possuem esse recurso. Mas em Caso do Windows 10 não surgem problemas e este sistema operacional já foi projetado para tais recursos de hardware desde o início computador pessoal.

Agora vamos descobrir como habilitar o Hyper-Threading no Windows. Para fazer isso, todo o software aplicativo de controle necessário deve estar instalado no computador. Normalmente isso é utilitário especial do CD da placa de sistema. Possui uma aba especial onde você pode alterar os valores do BIOS em tempo real. Isso, por sua vez, leva ao fato de que a opção Hyper-Threading nele vai para a posição Ativada e threads lógicos adicionais são ativados, mesmo sem reinicializar o sistema operacional.

Habilitando Tecnologia

Muitos usuários novatos costumam fazer uma pergunta no estágio inicial de uso de um novo computador: questão importante em relação ao Hyper-Threading: como habilitá-lo? Existem dois maneiras possíveis soluções para este problema. Um deles está usando BIOS. Neste caso, você precisa fazer o seguinte:

  • Ao ligar o PC, inicializamos o procedimento de entrada no BIOS. Para fazer isso, basta manter pressionado o botão DEL quando a tela de teste aparecer (em alguns casos é necessário manter pressionado F2).
  • Depois da aparição tela azul seguir em frente com o aplicativo teclas de navegação para a guia AVANÇADO.
  • Então encontramos o item Hyper-Threading nele.
  • Do lado oposto, você precisa definir o valor como Ativado.

Principal desvantagem este método- é necessário reiniciar o computador pessoal para realizar esta operação. Uma alternativa real é usar o utilitário de configuração da placa-mãe. Este método foi descrito em detalhes na seção anterior. E neste caso não é necessário entrar na BIOS.

Desativando NT

Por analogia com os métodos para ativar o NT, existem duas maneiras de desativar esta função. Um deles só pode ser executado durante a inicialização do sistema do computador. Isto, por sua vez, não é totalmente conveniente na prática. Por isso, os especialistas optam pelo segundo método, que se baseia na utilização de um utilitário de computador na placa-mãe. No primeiro caso, são realizadas as seguintes manipulações:

  1. Ao carregar um computador eletrônico, entramos no sistema básico de entrada-saída (seu segundo nome é BIOS) de acordo com o método descrito anteriormente.
  2. Movemos usando as teclas do cursor para o item de menu Avançado.
  3. Em seguida, você precisa encontrar o item de menu Hyper-Threading (em alguns modelos de placas-mãe pode ser designado como HT). Do lado oposto, usando os botões PG DN e PG UP, defina o valor como Desativado.
  4. Salvamos as alterações demolidas usando F10.
  5. Saia do BIOS e reinicie o computador pessoal.

No segundo caso, ao utilizar o utilitário de diagnóstico da placa-mãe, não há necessidade de reiniciar o PC. Esta é a sua principal vantagem. O algoritmo neste caso é idêntico. A diferença é que ele usa um utilitário especial pré-instalado do fabricante da placa-mãe.

Anteriormente, foram descritas duas maneiras principais de desabilitar o Hyper-Threading. Embora o segundo deles seja nominalmente considerado mais complexo, é mais prático porque não requer a reinicialização do computador.

Modelos de processador com suporte para NT

Inicialmente, conforme observado anteriormente, o suporte Hyper-Threading foi implementado apenas em dispositivos com processadores da série Pentium 4 e apenas na versão PGA478. Mas já dentro da estrutura do LGA1156 e de plataformas de computação posteriores, a tecnologia discutida neste material foi usada em quase todos os modelos de chips possíveis. Com sua ajuda, os processadores Celeron passaram de uma solução de núcleo único para uma solução de thread duplo. Por sua vez, Penrium e i3 já podiam processar 4 fluxos de código com sua ajuda. Bem, as principais soluções da série i7 são capazes de trabalhar simultaneamente com 8 processadores lógicos.

Para maior clareza, apresentamos o uso do NT dentro da atual plataforma de computação da Intel - LGA1151:

  • As CPUs da série Celeron não suportam esta tecnologia e possuem apenas 2 unidades de computação.
  • Os chips da linha Pentium são equipados com 2 núcleos e quatro threads. Como resultado, o NT neste caso é totalmente suportado.
  • Dispositivos com processadores mais poderosos têm um layout semelhante. gama de modelos Core i3: 2 módulos físicos podem funcionar em 4 threads.
  • Como a maioria dos chips Celeron econômicos, o Core i5 não está equipado com suporte HT.
  • As principais soluções i7 também suportam HT. Só que neste caso, em vez de 2 núcleos reais, já existem 4 unidades de processamento de código. Eles, por sua vez, já podem trabalhar em 8 threads.

Hyper-Threading – o que é esta tecnologia e qual a sua principal finalidade? Esta é uma multitarefa lógica, que permite, com ajustes mínimos, hardware aumentar o desempenho do sistema de computador como um todo.

Em que casos esta tecnologia é melhor utilizada?

Em alguns casos, conforme observado anteriormente, o NT aumenta a velocidade com que o processador processa o código do programa. O Hyper-Threading só pode funcionar de maneira eficaz com software quente. Exemplos típicos são codificadores de vídeo e áudio, pacotes gráficos profissionais e arquivadores. Além disso, a presença de tal tecnologia pode melhorar significativamente o desempenho sistema de servidor. Mas com uma implementação de thread único código do programa A presença do Hyper-Threading é nivelada, ou seja, obtém-se um processador normal que resolve uma tarefa em um núcleo.

Vantagens e Desvantagens

Comer certas desvantagens com tecnologia Intel Hyper-Threading. O primeiro deles é o aumento do custo da CPU. Mas maior velocidade e layout aprimorado do chip de silício aumentarão, de qualquer forma, o preço da CPU. Além disso, o aumento da área da base semicondutora do dispositivo processador leva a um aumento no consumo de energia e na temperatura. A diferença neste caso é insignificante e não ultrapassa 5%, mas ainda existe. Não há outras deficiências significativas neste caso.

Agora sobre os benefícios. A tecnologia proprietária NT da Intel não afeta o desempenho e o desempenho, ou seja, tal computador não será capaz de cair abaixo de um determinado limite. Se o software suportar perfeitamente a computação paralela, haverá um certo aumento na velocidade e, claro, na produtividade.

Testes mostram que em alguns casos o aumento pode chegar a 20%. Os softwares mais otimizados neste caso são vários transcodificadores de conteúdo multimídia, arquivadores e pacotes gráficos. Mas com os jogos nem tudo é tão bom. Eles, por sua vez, são capazes de operar em 4 threads e, como resultado, os chips principais não são capazes de superar as soluções de processador de nível médio neste caso.

Uma alternativa moderna da AMD

A tecnologia Hyper-Threading não é a única desse tipo hoje. Ela tem uma alternativa real. Com o lançamento da plataforma AM4, a AMD ofereceu-lhe um concorrente digno na forma de SMT. No nível do hardware, estas são soluções idênticas. Apenas o carro-chefe da Intel pode processar 8 threads, e o chip líder da AMD pode processar 16. Esta circunstância por si só indica que a segunda solução é mais promissora.

Portanto, a Intel é forçada a ajustar urgentemente seus planos de lançamento de produtos e oferecer soluções de processador completamente novas que possam competir com os recém-chegados da AMD. Só hoje eles ainda não foram reorganizados. Portanto, se você precisa de uma plataforma de computador acessível, é melhor escolher o LGA1151 da Intel. Se você precisar de um aumento de desempenho, o AM4 da AMD seria preferível.

© 2024 ermake.ru - Sobre reparo de PC - Portal de informações