Seguindo as discussões upstream sobre o-O3 do kernel Linux no mês passado, executei alguns novos benchmarks do kernel Linux construído com-O2 versus-O3. Depois que os resultados de compilação do kernel otimizado para-O3 não foram muito impressionantes, vários leitores do Phoronix estavam praticamente gritando que”-O3-march=native”é onde está por diversão e desempenho… não provou valer a pena e os desenvolvedores do kernel upstream são contra, aqui estão esses números.

Com base na comparação de compilação do kernel-O2 versus-O3 do mês passado, depois disso, executei uma compilação do kernel Linux com”-O3-march=native”para atender ao processador Alder Lake sendo usado para este teste em vez do x86_64 genérico. Nenhuma outra alteração foi feita no sistema além de reconstruir o mesmo kernel Linux e o mesmo Kconfig de outra forma com os diferentes KCFLAGS.

Mas, para encurtar a história, a compilação do kernel”-O3-march=native”não rendeu um desempenho significativamente melhor-na verdade, quando compilada com o GCC 11 no Ubuntu 22.04 LTS, ela regrediu em várias cargas de trabalho.

O desempenho do kernel”-O3-march=native”em particular para algumas cargas de trabalho de E/S estava gerando resultados que não eram apenas mais lentos que o kernel-O3 construído também-O2.

De cargas de trabalho de banco de dados a benchmarks básicos de E/S com FIO, era comum ver o kernel”-O3-march=native”produzir resultados significativamente atrás dos kernels otimizados menos agressivamente.

Além de que os resultados foram basicamente uma lavagem… O kernel otimizado”-O3-march=native”não estava valendo a pena nas dezenas de benchmarks testados neste desktop Core i5 12600K. Aqueles que desejam explorar as dezenas de resultados principalmente planos podem ver esta página de resultados para todos os dados completos.

Em uma média geométrica das dezenas de benchmarks realizados, o kernel”-O3-march=native”de fato saiu um pouco mais lento devido às regressões nos benchmarks de I/O. Portanto, pelo menos no caso deste sistema Intel Alder Lake específico, a compilação otimizada do kernel”-O3-march=native”não valeu a pena.

Categories: IT Info