Relógio da CPU e cache L3 para programação

0

Estou interessado em saber o quanto diferentes escolhas de hardware afetam os seguintes casos de uso:

  • Programação em Python: muitos cálculos matemáticos pesados usando matrizes numpy
  • Aplicativos de dados em Python e Pandas, usando vários GB de dados

Eu poderei fazer o paralelo de uma minoria desses aplicativos usando o módulo Threating. A lógica da maioria não permitirá isso.

Qual a importância das seguintes configurações / extensões de hardware para os meus propósitos?

  • 2,3 Ghz contra 2,7 Ghz
  • 6mb L3 vs 8mb L3
por FooBar 25.09.2014 / 03:12

1 resposta

2

Supondo que você esteja falando de um Macbook ou Macbook Pro da atual geração, a diferença de desempenho entre os dois modelos citados (2,3 GHz com cache L3 de 6 MB vs. 2,7 GHz com cache L3 de 8 MB) fará , aproximadamente, entre uma diferença de 2% a 15%, dependendo da carga de trabalho exata. Definitivamente não é nada de quebrar a terra. Mas tudo depende de quanto tempo leva para seus dados serem calculados. Meu percentual de 2% a 15% vem do que li em avaliações e benchmarks de processadores modernos (Ivy Bridge e Haswell), da mesma geração, com taxas de clock diferentes. Geralmente, a diferença de desempenho single-thread entre a mais lenta e a mais rápida é de cerca de 25% em benchmarks sintéticos extremamente específicos; 10-15% em casos médios; e 2% ou menos em alguns benchmarks que realmente não chegam perto de taxar o desempenho single-thread (ou exibir gargalos em outras partes do sistema, por exemplo, I / O).

Para usar um exemplo ridículo, se levasse 1 milhão de anos para que seus cálculos numpy array passassem no processador de 2,3 GHz, reduzir 15% economizaria 150.000 anos - ou aproximadamente desde que o homo sapiens sapiens tenha se esquivado.

Obviamente, se você tivesse uma vida útil de, digamos, 2 milhões de anos, raspar 150k faria uma grande diferença. Você pode até conseguir executar o cálculo duas vezes antes de pousar em seu leito de morte.

Por outro lado, se seus cálculos forem executados quase instantaneamente na maioria das CPUs modernas, adicionar 15% de desempenho não importará muito. Tomemos por exemplo algo como executar o Google Chrome. Você notará qualquer diferença perceptível em tudo na velocidade com que páginas da Web e vídeos são carregados, enquanto executa um Macbook atual com esses dois processadores diferentes? Eu duvido seriamente que você fosse capaz de perceber a diferença. Mas se você começou a carregar um arquivo HTML de 24 GB que levou várias horas para analisar, a diferença pode começar a se acumular em tempo mensurável.

No final, você vai sacrificar o tempo ou sacrificar dinheiro, quando estiver fazendo coisas envolvendo algoritmos computacionalmente intensivos que levam mais que alguns milissegundos para serem concluídos. Se você pegar o processador lento, você vai esperar mais tempo por pagar menos dinheiro. Se você obtiver o processador rápido, pagará mais em consequência de não ter que esperar tanto tempo.

    
por 25.09.2014 / 03:23