Howto: Profiling GCJ code?

Patrick Schäfer
Fri Jun 19 08:52:00 GMT 2009


I am trying to run a server based on apache mina (java.nio) and jna  
for native library access. The program runs just fine under jdk 1.5.  
But there is a massive performance breakdown using gcj. The program  
basically polls a Posix Message Queue every 500ms using JNA (JNI).  
This causes 5% cpu load on jdk but the load goes up to 100% using gcj.

Is there any profiling tool which can be easily installed and applied  
to the native code?

I read about profiling gcj applications on your faq. There are 3 tools  
mentioned. To my understanding gprof can't be applied due to missing  
multithreading support and it requires the program to exit main before  
writing any profiling information. The later is not easy when using a  
network server. cprof seems to be quite outdated (there has been no  
realease within the last years) and trying to "make" it, fails with  
several errors. I don't know about sprof, but I couldn't find much  
information about it on the internet.

Thank you for any hints about current multithreading gcj (gcc) profilers


More information about the Java mailing list