[quote=evefuji][quote=juliocbq]
“Teoricamente” o java tende a ser mais rápido no windows pelas razões que eu citei no post anterior. As empresas de hardware investem no windows(você possui drivers melhores nessa plataforma). A micro benchmark abaixo mostra isso(Em alguns quesitos a sun jvm perde para o linux, mas na maioria o win se sai melhor).
http://www.phoronix.com/scan.php?page=article&item=java_vm_performance&num=1
Veja bem que é uma questão de investimento na plataforma x. Por exemplo o chrome para linux não suporta webgl ainda, enquanto para windodows é o browser mais otimizado que existe. Já o firefox suporta, mas o desempenho é bem abaixo da sua versão para win(novamente os drivers fazem diferença).
[/quote]heheh, você fala uma coisa mas o link que vc postou fala outra, rsrsr. No link que vc postou fala que, no geral, o Java no Linux é mais rápido que no Windows, exceto no Java2d microbenchmark.
Você fala da questão dos drivers serem “melhor otimizados” para windows, isso ocorre, mas a diferença não é tão grande assim. E drivers de processador, no geral, não tem muito essa diferenciação.
Outro ponto a considerar, é que a JVM foi construída em Linux, para Linux, e depois portada para Windows. Isso é capaz de dar uma boa diferença no desempenho (nem preciso dizer porque né?).
Outro fator, quanto ao Swing, se me lembro bem, no Linux ele roda sobre o GTK (uma biblioteca gráfica nativa do Linux), já no Windows, ele roda sobre java2d (desenhando os pontos da tela), isso é outro ponto que colabora pelo desempenho melhor no linux. E se considerar essa afirmação, do swing no windows rodar sobre Java2D, até explica porque nesse quesito o windows tem desempenho melhor que o linux, se o Swing tinha um péssimo desempenho rodando sobre java2d, obviamente eles iriam melhorar esse desempenho ou fazer ele rodar sobre as plataformas gráficas nativas do SO.
Quanto a benchmarks assim, eu não acredito muito. Eu vejo e comparo vários, mas eu prefiro considerar a diferença que eu sinto no dia a dia. Por exemplo, quanto tempo demora a abrir o eclipse ou o netbeans no seu Windows? E no seu Linux na mesma máquina? Quanto tempo demora a fazer um deploy num servlet container ou servlet application no seu Windows? E no seu Linux na mesma máquina? Se demora menos no Windows, então eu uso Windows para isso… Mas aqui em casa, um deploy de uma aplicação relativamente grande(nem tão grande, meio “média”, rsrs), no glassfish demora, no Windows, cerca de 30 segundos e no Linux cerca de 9 segundos (usando o deploy incremental do netbeans, o undeploy+deploy do próprio administrador do glassfish é bem mais rápido). Isso num Phenom X6 1090T.
Porque eu prefiro considerar o que vejo no dia a dia? Primeiro porque quero ter o ambiente configurado da forma que me agrada mais, quero ter os recursos que me são necessários ou que me agradam, etc… Já vi muito benchmark tendencioso “puxando a sardinha” para o Linux… Bem como o contrário (mas nesse caso, o mais comum é puxando a sardinha para o linux mesmo). [/quote]
Sim, você está certo. Mas no bench mais importante que é o java 2d ele perdeu. O swing não roda sobre nenhum toolkit gráfico, ele é o único toolkit nativo da própria jvm. O swing roda em cima do java2d que é um mapeamento das bibliotecas opengl do sistema. Por exemplo no win posso optar por usar o direct3d como backend do java2d.
Isso quer dizer que todas as suas aplicações gráficas(desde simples interfaces até modelos 3d) vão ter desempenho reduzido.
Mas isso não é culpa do linux, mas das empresas que mantêm esses drivers proprietários.