Sobre desempenho da api Join Fork do java 7

Prezados,

atualmente utilizo ExecutorService, mas não muito satisfeito busco constantes melhorias em termos de desempenho e aí vi no java 7 a tal join fork http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ForkJoinPool.html
alguém sabe dizer se existe mesmo um ganho em termos de performance?

Seu problema de desempenho é mesmo no chaveamento entre threads? Já usou um profiler para medir?

Atribuir a questão de desempenho a threads e núcleos é uma ilusão(de certa forma). Quanto melhor for a lógica empregada para resolver determinado tipo de problema, melhor será o tempo de resposta do seu programa. A jvisualvm é uma ótima ferramenta para encontrar gargalos em soluções.

com ajuda do debugger e do TOP do linux eu identifiquei o problema e contornei parcialmente.
acontece que em cada thread eu tenho uma comunicação via sockets.
como a resposta demora o socket fica em aberto por um tempo muito grande e a thread não é encerrada, mesmo chamando o executor.shutdownNow();
aí difnini em cada chamada socket um timeout de no máximo 10 segundos, ajudou. melhorou. mas ainda assim não está perfeito. o consumo de memória fica em torno de 70% e travando a aplicação.
num mundo ideal eu conseguiria melhorar o IO mexendo no próprio SO, vou tentar otimizar isso de acordo com esse tutorail: http://deigratia33.blogspot.com.br/2007/12/linux-como-melhorar-o-desempenho-em.html
e com relação às threads eu pensei em modificar para join fork acreditando ter aí um melhor desempenho. claro que não espero mágica.
é isso.

O ideal então é usar o NIO. Com os selectors, você pode ter um número muito pequeno de threads para controlar todos os seus sockets.