performance problem with process fork in gcj compiled CNI

Boehm, Hans hans.boehm@hp.com
Sat Jan 28 00:23:00 GMT 2006


> From: Ricardo Temporal [mailto:ricardotemporal@hotmail.com] 
>    I realized that the performance problem is not in the 
> software, actually 
> is in the hardware.
> 
>   In the first scenario I tested in an intel hiperthreading 
> with 2 logical 
> CPUs and linux.
That's indeed very different.  The fact that you get so little speedup
in this environment might suggest that you're  not missing the cache
much to start with, and thus the second thread, whose job it is to keep
the processor busy while it's waiting for memory, doesn't buy you much.
Or the cache becomes too small with two threads active and running
separate processes.

> ...
> 
>    I still have a problem to solve about the fork.
> 
>    I'm thinking abount trying a late link with libgcj.so only 
> after the fork 
> using dlopen.
> 
>    I don't know if a static linking with libgcj could help me anyway.
It might work if you just did the JvCreateJavaVM after the fork.  You
check with your favorite debugger whether there is a second thread
around before that.  I suspect not, but I'm not positive.

Hans



More information about the Java mailing list