What is ActiveJ Specializer?
ActiveJ Specializer is an innovative technology for enhancing class runtime performance for JVM. It is one of the ActiveJ technologies with no third-party dependencies, so it can be used as a stand-alone component.
How it works?
ActiveJ Specializer uses ASM library to automatically transform class instances into specialized static classes, and class instance fields into baked-in static fields. This enables a wide variety of JVM optimizations for static classes, not possible otherwise: dead code elimination, aggressively inlining methods, and static constants. According to our measures, resulting speed-up could be up to 30%-50% in some cases.
Why ActiveJ Specializer?
This simple example illustrates
the core ActiveJ Specializer concept.
Suppose there is an
INT_UNARY_OPERATOR that can be simplified.
INT_UNARY_OPERATOR_SPECIALIZED specializes the equation similarly to the
INT_UNARY_OPERATOR_SPECIALIZED_MANUALLY, but does this automagically.
According to the benchmarks the original equation was operated in 69.938 ns, while the manually and automatically specialized took only 26.533 ns and 26.691 ns respectively.
Injector.useSpecializer()before Injector instantiation.
Add ActiveJ Specializer to your project
ActiveJ Specializer is one of the ActiveJ technologies that also include cloud solutions, powerful DI, lightning-fast serializers, bytecode generators and other standalone solutions that make up the ActiveJ ecosystem. To learn more, please visit the ActiveJ project homepage.