Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4994 Discussions

Error analyzing java application using Intel Inspector on Linux

Marcimarc
Beginner
1,067 Views

Hi,

I have successfully used Intel Inspector to track down memory leaks on a Windows server machine. When I do the same on Linux I get the following output and the application does not even start:

Analysis started...
Result file: /home/marc/intel/inspxe/projects/Java/r005mi1/r005mi1.inspxe
Analysis started for /opt/java/14.0.2/jdk/bin/java (pid = 6345)
Loaded module: /opt/java/14.0.2/jdk/bin/java, address range [0x5589aa971000-0x5589aa97407b]
Loaded module: /lib64/ld-linux-x86-64.so.2, address range [0x7efc9512f000-0x7efc9515e18f], minimal analysis
Loaded module: [vdso], address range [0x7fffb6ee9000-0x7fffb6ee9b31], minimal analysis
Loaded module: /lib/x86_64-linux-gnu/libz.so.1, address range [0x7efc7dba1000-0x7efc7dbbc0b7]
Loaded module: /opt/java/14.0.2/jdk/bin/../lib/libjli.so, address range [0x7efc7db07000-0x7efc7db173ef]
Loaded module: /lib/x86_64-linux-gnu/libpthread.so.0, address range [0x7efc7daac000-0x7efc7dace477]
Loaded module: /lib/x86_64-linux-gnu/libdl.so.2, address range [0x7efc7daa6000-0x7efc7daab10f], minimal analysis
Loaded module: /lib/x86_64-linux-gnu/libc.so.6, address range [0x7efc7d8b4000-0x7efc7daa565f]
Loaded module: /opt/java/14.0.2/jdk/lib/server/libjvm.so, address range [0x7efc7b745000-0x7efc7c8b151f]
Warning: Detected fatal signal in the application. See result for details.
Process /opt/java/14.0.2/jdk/bin/java exited with code 0. Leak analysis starting. Please wait...
Unloaded module: /opt/java/14.0.2/jdk/bin/java
Unloaded module: /lib64/ld-linux-x86-64.so.2
Unloaded module: [vdso]
Unloaded module: /lib/x86_64-linux-gnu/libz.so.1
Unloaded module: /opt/java/14.0.2/jdk/bin/../lib/libjli.so
Unloaded module: /lib/x86_64-linux-gnu/libpthread.so.0
Unloaded module: /lib/x86_64-linux-gnu/libdl.so.2
Unloaded module: /lib/x86_64-linux-gnu/libc.so.6
Unloaded module: /opt/java/14.0.2/jdk/lib/server/libjvm.so
Completed analysis for /opt/java/14.0.2/jdk/bin/java
Application exit code: 139
Result file: /home/marc/intel/inspxe/projects/Java/r005mi1/r005mi1.inspxe
Analysis completed

 

Note that I have also tried to analyze a simple Hello World like Java application, it results in the same error. I suppose that the extensive use of signals of the JVM is causing problems. Using the JVM option -Xrs did not help. Note that analysis works perfectly on Windows.

Any help / suggestions are highly welcome!

Marc

0 Kudos
1 Solution
DiyaN_Intel
Moderator
838 Views

Hi, 


Thank you for the feedback.


Unfortunately, the Intel Inspector tool doesn't support Java officially on Linux and Windows.

The issue is how to find memory leakage on Java programs, for that you may have to look out for other options available in the industry.

Sorry for the inconvenience caused.


Also can you please confirm whether we can go forward and close this case?


If this resolves your issue, make sure to accept this as a solution. 

This would help others with similar issue. Thank you!


Thanks and Regards, 

Diya


View solution in original post

0 Kudos
8 Replies
DiyaN_Intel
Moderator
1,033 Views

Hi, 


Thank you for posting in Intel Communities.


Could you please share the following details- 


1. Sample reproducer code and the exact steps to reproduce.


2. Intel Inspector version.


3. Kernel Version.


4. OS and Processor details.


Thanks and regards,

Diya


0 Kudos
Marcimarc
Beginner
1,022 Views

Hi Diya,

Steps to reproduce:

* Install Java if not yet done

* Create file Hello.java containing the following content: class Hello {  public static void main(String[] ignored) { System.out.println("Hello"); } }

* Compile it using javac Hello.java

* Run it without inspector, it should print "Hello" on the console: java Hello

* Now run it with the inspector: /opt/intel/oneapi/inspector/latest/bin64/inspxe-cl -collect mi1 -knob detect-leaks-on-exit=true -- /usr/bin/java Hello

--> In my case it results in a message Run terminated abnormally. Some data may be lost.

 

Intel Inspector version is 2023.0 (build 606330)

OS is Ubuntu 20.04.1 kernel version is 5.15.0-1028-aws

CPU is Intel Xeon Platinum 8259CL.

 

Let me know if you need additional data.

 

Thanks and have a great weekend!

Marc

0 Kudos
DiyaN_Intel
Moderator
947 Views

Hi, 


We are investigating your issue at our end and working on this internally.

We will get back to you with an update soon.


Regards, 

Diya



0 Kudos
DiyaN_Intel
Moderator
906 Views

Hi, 


Good day to you.

We were able to reproduce the issue from our end.

Actually, Intel Inspector has certain application coding requirements.

It supports the following programming languages:

C

C++

Fortran

So, please try Intel Inspector for applications with the above-supported languages.

You can find it in the release notes of Intel® Inspector 2023.0: https://www.intel.com/content/www/us/en/developer/articles/release-notes/inspector-release-notes.html

If this resolves your issue, make sure to accept this as a solution. 

This would help others with similar issues. Thank you!


Thanks and regards,

Diya



0 Kudos
Marcimarc
Beginner
867 Views

Hello Diya,

Thanks for your message. But why does the tool work just fine on Windows? This is a major limitation from my POV since it means that you cannot use the tool on Linux to analyse memory leaks for applications that use a Java VM and JNI.

For me it means that I have to run the application on a Windows server. Unfortunately the leak is not reproducible on Windows. I am going to use /proc/PID/smaps now to identify leak candidates but this is a messy task especially when the content of the memory allocations contains just binary stuff that cannot easily be matched with lines in your code base.

Best greetings from Germany,

Marc

0 Kudos
DiyaN_Intel
Moderator
839 Views

Hi, 


Thank you for the feedback.


Unfortunately, the Intel Inspector tool doesn't support Java officially on Linux and Windows.

The issue is how to find memory leakage on Java programs, for that you may have to look out for other options available in the industry.

Sorry for the inconvenience caused.


Also can you please confirm whether we can go forward and close this case?


If this resolves your issue, make sure to accept this as a solution. 

This would help others with similar issue. Thank you!


Thanks and Regards, 

Diya


0 Kudos
Marcimarc
Beginner
833 Views

I have accepted your answer but I still believe there are options for a fix on your end since the tool works fine with JVMs running on Windows.

 

Best regards,

Marc

0 Kudos
DiyaN_Intel
Moderator
818 Views

Hi,


Thanks for the confirmation. 

We are closing this case as of now.

If you need any additional information, please post a new question as this thread will no longer be monitored by Intel.


Thanks and regards,

Diya


0 Kudos
Reply