Quantas CPUs são necessárias antes que o Erlang seja mais rápido que o Java de encadeamento único [closed]

Atualmente estou usando Java, li muito sobre Erlang na net e tenho duas grandes perguntas:

Quanto mais lento (se houver) será o Erlang mais simples do que o Java?
Estou assumindo aqui que o Java vai ser mais rápido a partir dobenchmarks de tiroteio na rede (Erlang não faz isso bem). Então, quantos mais CPUs eu vou precisar para fazer o Erlang brilhar sobre Java single-threaded (na minha situação particular, dada abaixo)?

Depois de ler sobre Erlang por um tempo eu encontrei um número de comentários / posts que dizem que a maioria dos grandes sistemas Erlang contém uma boa quantidade de C / C ++.
Isso é por razões de velocidade (minha suposição) ou algo mais? Por que isso é necessário?

Eu li sobre o número de processadores na maioria das máquinas subindo e os modelos de threads sendo difíceis (eu concordo), mas estou procurando descobrir quando a "linha" será cruzada para que eu possa mudar a linguagem / paradigma à direita Tempo.

Um pouco de fundo / contexto:
Eu estou trabalhando no lado do servidor em serviços Java que são muito ligados à CPU e facilmente feitos em paralelo. Isso se deve, normalmente, a uma única atualização de entrada (via TCP) que aciona uma alteração em várias (100s de) saídas.

Os cálculos são tipicamente bem simples (poucos loops, apenas muita aritmética) e as entradas estão chegando bem rápido (100 / s).

Atualmente, estamos rodando em 4 máquinas de CPU e rodando múltiplos serviços em cada (assim, o multi-threading é bastante inútil e o Java parece rodar mais rápido sem os blocos de sincronização, etc., necessários para torná-lo multi-thread). Agora há um forte impulso de velocidade e agora temos acesso a 24 máquinas de processador (por processo, se necessário), então estou pensando em como melhor proceder - Java massivamente multiencadeado ou algo mais fácil de codificar, como Erlang.

questionAnswers(5)

yourAnswerToTheQuestion