The implementation of DynamicHelper is very slow and does a method lookup using the Java Reflection API every time a method is invoked on an expression of dynamic type (see performance results of benchmark tracer).
Use caching, the Java Method Handle API, or generate byte code to take advantage of invokedynamic.