Eu não faço a menor idéia do que está acontecendo, mas eu pensei em compartilhar algumas outras diferenças de hardware, baseadas nos processadores, para ver se isso ajuda alguém a se aproximar da resposta.
- O Opteron 2354 tem 2MB de cache L-3, onde o 2376 tem 6MB.
- O 2354 usa o PC2-5300 DDR2 RAM, em que o 2376 usa o PC2-6400 DDR2 RAM.
Estou um pouco enferrujado com hardware, mas suponho que isso significa que o acesso à memória em geral é significativamente mais rápido na máquina de desenvolvimento? Então, se Ruby estava sendo, de alguma forma, mais "intensivo de memória" (e eu realmente não sei o que quero dizer com isso!), Então ele poderia aparecer como uma diferença de desempenho maior?
(Eu fui procurar para ver se havia algum recurso de virtualização no processador mais novo que poderia explicar a diferença, mas surgiu em branco.)
Algumas perguntas ...
- Quais são as outras VMs em cada servidor?
- Você vê o mesmo comportamento com outro (não baseado em MRI) Ruby, JRuby talvez?
- Você pode executar a amostra com ltrace / strace, ver onde o tempo está sendo gasto? Veja Depuração do Ruby: Entendendo e solucionando problemas na VM e seu aplicativo para mais detalhes.