
Estou tentando entender alguns resultados de benchmark que estou vendo para duas bibliotecas de segurança que uso. Quando executo os benchmarks, noto que os primeiros testes são mais lentos do que o esperado. Aqui, mais lento significa que o desempenho está prejudicado em cerca de 0,5 a 0,1 ciclos por byte (cpb). Ou seja, são necessários 0,5 a 1,0 ciclos extras para processar um byte em média.
Por exemplo, quando copio/colo três testes embench.cpp
: 620(modos CCM, EAX e GCM) na parte superior do arquivo, os testes na parte inferior do arquivo são executados mais rapidamente do que os mesmos testes executados na parte superior do arquivo. Apenas a posição do teste muda.
Tenho algumas perguntas sobre máquinas Intel modernas, como um iCore.
O modo de controle da CPU faz a transição ou o BIOS/UEFI controla a troca?
Quais/quando são as transições esperadas de uma CPU em modo de suspensão ou inativo para frequências nominais e máximas?