我刚刚听说过指令集扩展AES-NI。 Java的JIT编译器是否编译应用程序以使用AES-NI(如果它可用于提高性能)?
如果是,如果不确定是否会使用AES(例如使用TLS时),它是否也会这样做?
答案 0 :(得分:4)
Java 8和7u40及更高版本包含对内置SunJCE提供程序的x86 AES内在函数的支持,但默认情况下未启用该功能(它是)。
在globals.hpp搜索“AES”:
product(bool, UseAES, false, \
"Control whether AES instructions can be used on x86/x64") \
...
product(bool, UseAESIntrinsics, false, \
"Use intrinsics for AES versions of crypto") \
您可以通过将-XX:+UseAES -XX:+UseAESIntrinsics
选项传递给虚拟机来启用该功能。
答案 1 :(得分:0)