No Prime95, por que pequenas FFTs geram a maior quantidade de calor, apesar da CPU em 100% para todas as opções?

9

Acabei de criar um novo Skylake PC , e vou ver um pouco de overclock com o Prime95 como um testador de estresse.

Funciona bem em uso normal, mas com o Prime95 estou percebendo um pouco de afogamento de CPU sob certas cargas.

Se todos os 4 núcleos (8 threads) estiverem congestionados a 100%, por que a configuração Small FFT no Prime95 atinge uma temperatura mais alta que a opção 'Blend'?

    
por ChrisA 02.10.2015 / 23:32

1 resposta

13

O código vetorizado, especialmente o AVX, aumenta naturalmente a saída de calor da CPU porque o processador deve operar em uma voltagem mais alta para executar essas instruções. FFTs pequenas exigem menos memória do que o modo de mesclagem, de modo que o processador gasta mais dados de processamento de tempo e menos tempo aguardando dados.

  • A arquitetura x86-64 oferece recursos processamento de vetores extensivos, especialmente em os processadores mais recentes. O processamento vetorial permite que os aplicativos executem operações matemáticas em vários itens de dados de uma só vez e é usado por muitos aplicativos mais recentes e intensivos em computação para aumentar o processamento.

  • O código vetorizado, especialmente as instruções AVX usadas pelo Prime95, exigem que o processador opere a uma voltagem mais alta que o normal. Isso resulta em consumo de energia e saída de calor maiores do que o que é experimentado em cargas de trabalho normais. Por esse motivo, A Intel alerta que cargas pesadas com AVX podem fazer com que o processador não aumente ou não sustente as taxas de clock do Turbo Boost total (nota de rodapé 1):

    Intel® Advanced Vector Extensions (Intel® AVX) are designed to achieve higher throughput for certain integer and floating point operations. Due to varying processor power characteristics, utilizing AVX instructions may cause a) some parts to operate at less than the rated frequency and b) some parts with Intel® Turbo Boost Technology 2.0 to not achieve any or maximum turbo frequencies.

    A Intel explica isso com mais detalhes em este white paper . Em particular, observa:

    Intel AVX is designed to achieve higher throughput for certain integer and floating-point operations. Using these instructions may cause processors to operate at less than the marked TDP frequency. These reductions in frequency occur because high-power Intel AVX instructions require additional voltage and electrical current.

    • Meu palpite a respeito de como impulsionar V core é necessário para as instruções do AVX é que as unidades de execução AVX são mais complexas que as outras partes do processador, resultando em estágios de pipeline correspondentes mais tempo para concluir (consulte esta resposta para mais informações técnicas sobre pipelines e outros aspectos do design do processador. Se um determinado estágio de pipeline estiver lento, a taxa de clock máxima de todo o processador é limitada, pois o cada estágio no pipeline deve terminar dentro de cada ciclo de clock.

    • Pela mesma razão, as tensões mais altas aumentam as freqüências máximas atingíveis quando o overclocking (os transistores podem alternar mais rápido em tensões mais altas), aumentando a tensão e garantindo que os estágios mais longos possam terminar no prazo.

  • O modo Pequeno FFT usa apenas itens de dados menores que podem caber no cache da CPU , ao contrário do modo Blend, que opera em valores pequenos e grandes que podem não caber no cache. Como o acesso à memória é lento em relação ao processamento de dados, o processador gastará menos tempo processando dados no modo Blend, reduzindo a produção de calor. Pequenas FFTs não implicam em qualquer lugar perto de tantos acessos à memória, resultando em mais trabalho real para a CPU para executar, aumentando assim o consumo de energia e saída de calor.

por 03.10.2015 / 00:03