Pular para o conteúdo

A função Intel BOT não apenas otimiza o software; desenvolvedores do Geekbench descobriram que ela substitui o código original do aplicativo.

Homem trabalhando com código e gráfico de desempenho em monitor widescreen em ambiente claro e organizado.

O número de instruções executadas muda drasticamente

Os desenvolvedores do Geekbench publicaram mais uma atualização sobre a função Intel BOT (Binary Optimization Tool). Se antes eles diziam que não conseguiam entender exatamente como ela operava, agora afirmam que o BOT, na prática, substitui o código original do aplicativo.

Intel BOT (Binary Optimization Tool) no Geekbench 6.3 e 6.7: ganhos e limitações

Nos testes, a equipe avaliou um notebook com CPU Core 9 386H, comparando o BOT ligado e desligado no Geekbench 6.3 e no recém-lançado Geekbench 6.7. No Geekbench 6.3, o BOT adiciona 5,5% de desempenho, tanto em modo single-thread quanto multi-thread - justamente a versão do benchmark para a qual a Intel teria feito otimizações. Já no Geekbench 6.7, o aumento apareceu apenas no modo multi-thread, e foi de apenas 0,9%.

Além disso, ao iniciar o Geekbench 6.3 com o BOT ativado, a primeira execução vem acompanhada de um atraso de 40 segundos. Nas execuções seguintes, o processo acelera e a demora cai para apenas 2 segundos. Esse atraso de inicialização some quando o BOT é desativado. Por outro lado, no Geekbench 6.7 com BOT ativo, o atraso observado é sempre de somente 2 segundos.

"Com base nesses resultados, sabemos que o BOT otimiza apenas versões específicas do Geekbench. Nós analisámos o trabalho realizado durante o atraso de inicialização e descobrimos que o BOT calcula a soma de verificação (checksum) do executável do Geekbench. Isso indica que o checksum é usado para determinar se esse executável é conhecido pelo bot e, portanto, se o bot pode otimizá-lo."

Para aprofundar a análise, os autores também recorreram ao Intel SDE, uma ferramenta capaz de rastrear quais instruções são executadas durante a execução de um programa. O resultado foi que ativar o BOT reduz o total de instruções executadas em 14%. Porém, essa mudança é bem desigual: o número de instruções escalares cai 62%, enquanto a quantidade de instruções vetoriais dispara 1366%.

Eles destacam que a maior parte dessa redução acontece porque partes do código da carga de trabalho são vetorizadas - isto é, instruções que trabalhavam com um único valor passam a operar com oito valores por vez.

Os desenvolvedores consideram o Intel BOT uma abordagem bastante interessante, mas apontam um problema importante: ele só funciona em alguns aplicativos e jogos para os quais a própria Intel realizou otimizações. E, ao que tudo indica, após atualizações de software, essas otimizações podem deixar de surtir efeito.

"Atualmente, o BOT suporta apenas um pequeno número de aplicativos, o que significa que resultados de benchmarks otimizados para o BOT oferecem uma visão irrealista de como o processador funciona na prática. Por causa disso, os processadores da Intel parecem mais rápidos em comparação com a AMD e outros fabricantes do que realmente seriam em um uso típico do mundo real."

Comentários

Ainda não há comentários. Seja o primeiro!

Deixar um comentário