Estou com eçando a ter dúvidas sobre a eficiência da arquitetura x86_64.
Na verdade, acho que a arquitetura x86 de 32 bits é bem superior a de 64 bits.
Executei alguns testes no Seven 64-bit. Algumas considerações e meus testes:
Consideração I - O Windows 64 usa o WoW (Windows on Windows) pra emular programas compilados em 32 bits, logo, eles rodam ligeiramente mais lentos em sistemas 64 bit do que se estivessem rodando num SO 32 bits nativo.
Consideração II - O Resultado do teste pode ser falta de otimização do compilador e não do SO, ou de ambos, isso não tive como identificar ainda. Mas vale ressaltar que as mesmas opções de otimizações foram selecionadas em ambos os compiladores.
Consideração III - SO e Compiladores utilizados:
Windows 7 Professional 64 bit
Free Pascal Compiler 32-bit 2.4.0
Free Pascal Compiler 64-bit 2.4.0
Consideração IV - Foi utilizado um cronômetro externo , não presente no programa, para efetuar a marcação do tempo. O mesmo cronômetro foi usado em ambos os testes.
Vamos lá:
O TESTE: Há algum tempo escrevi em pascal um programa que encontra números primos, Você fornece o intervalo e ele encontra os números e salva tudo num relatório.
Executei esse programa (32-bit) no Windows 7 64-bit , testando os números de 2 até 100.000. Ele encontrou 9592 números em 2:17 min.
Achei que podia melhorar isso e recompilei meu programa num compilador que gerou um programa 64 bit nativo.
Executei o programa (64 bit) no Windows 7 64-bit e ele encontrou os mesmo 9592 números em 4:10 min !!! Quase o dobro do tempo !!!
Acho isso muuito estranho, afinal uma arquitetura que promete de 25 a 30% de aumento do desempenho apresentar um resultado inferior ao de uma arquitetura "ultrapassada" é no mínimo ,inquietante....
Tem algo muito errado com arquitetura x86_64 !
Nenhum comentário:
Postar um comentário