Splunk AppDynamics

Difference between Sun Java Agent vs IBM Java Agent

CommunityUser
Splunk Employee
Splunk Employee

Hi

Can someone please explain the difference between the Sun Java Agent vs the IBM Java Agent?

I'm not quite sure what the difference between these two are and which are you suppose to use for the application stack:

1. Software AG WebMethods

2. Akana SOA

Thanks

Labels (1)
0 Karma
1 Solution

Peter_Holditch
Builder

Ronald,

The JVM originating from Sun/Oracle/OpenJDK allows agent to re-write application bytecode on the fly with no significant performance penalty, meaning that the agent can dynamically change instrumentation at runtime when necessary.

The J9 JVM from IBM allows the same capability, but even requesting it disables certain runtime code optimisations that the JVM can make, meaning that the CPU cost per unit of work in the J9 JVM is higher if this ability is enabled.

The only difference between our 2 flavours of java agent is that the "IBM Java Agent" does not request the ability to retransform classes at runtime, so as not to force applications to incur this performance penalty.  (Obviously, this has the downside that it cannot change instrumentation on the fly)

The above is entirely independent of what applications / frameworks you are running, so you should choose the agent based on whether the JVM is J9 or the HotSpot one.

Warm regards,

Peter

View solution in original post

Peter_Holditch
Builder

Ronald,

The JVM originating from Sun/Oracle/OpenJDK allows agent to re-write application bytecode on the fly with no significant performance penalty, meaning that the agent can dynamically change instrumentation at runtime when necessary.

The J9 JVM from IBM allows the same capability, but even requesting it disables certain runtime code optimisations that the JVM can make, meaning that the CPU cost per unit of work in the J9 JVM is higher if this ability is enabled.

The only difference between our 2 flavours of java agent is that the "IBM Java Agent" does not request the ability to retransform classes at runtime, so as not to force applications to incur this performance penalty.  (Obviously, this has the downside that it cannot change instrumentation on the fly)

The above is entirely independent of what applications / frameworks you are running, so you should choose the agent based on whether the JVM is J9 or the HotSpot one.

Warm regards,

Peter

Get Updates on the Splunk Community!

Best Strategies to Optimize Observability Costs

 Join us on Tuesday, May 6, 2025, at 11 AM PDT / 2 PM EDT for an insightful session on optimizing ...

Fueling your curiosity with new Splunk ILT and eLearning courses

At Splunk Education, we’re driven by curiosity—both ours and yours! That’s why we’re committed to delivering ...

Splunk AI Assistant for SPL 1.1.0 | Now Personalized to Your Environment for Greater ...

Splunk AI Assistant for SPL has transformed how users interact with Splunk, making it easier than ever to ...