What is ActiveSpecializer?
ActiveSpecializer is a lightweight library that automagically optimizes your code for JVM and makes it significantly faster. 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?
ActiveSpecializer uses ASM library to transform Java objects into classes with static methods. So, a Java object is baked inside a class, which optimizes inlining and increases overall performance when using this object.
This simple example illustrates
the core ActiveSpecializer 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.
DirectScopebind (10 args) - 2420.3 ns/op
DirectScopebind (10 args) - 1545 ns/op
Add ActiveSpecializer to your project
ActiveSpecializer 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.