Te uiti prin codul din benchmark si vezi ca este folosit
[DllImport("pcre2-8", EntryPoint = "pcre2_compile_8", CharSet = CharSet.Ansi)]
extern static IntPtr PcreCompile(string pattern, long length, uint options,
out int errorcode, out long erroroffset, IntPtr ccontext);
[DllImport("pcre2-8", EntryPoint = "pcre2_jit_compile_8", CharSet = CharSet.Ansi)]
extern static int PcreJitCompile(IntPtr code, uint options);
Iar in alte programe mai sunt si folosite lucrui specifice setului de intructiuni al procesorului.
https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/spectralnorm-csharpcore-5.html
[MethodImpl(MethodImplOptions.AggressiveOptimization)]
private static void mult_Av(double* v, double* outv, int n)
{
Parallel.For(0, n, i =>
{
var sum = Vector128<double>.Zero;
for (var j = 0; j < n; j += 2)
{
var b = Sse2.LoadVector128(v + j);
var a = Vector128.Create(A(i, j), A(i, j + 1));
sum = Sse2.Add(sum, Sse2.Divide(b, a));
}
var add = Sse3.HorizontalAdd(sum, sum);
var value = Unsafe.As<Vector128<double>, double>(ref add);
Unsafe.WriteUnaligned(outv + i, value);
});
}
Conform documentatiei, este ceva intrinsec care este optimizat pt hardware.
Probabil ceva echivalent pt java ar fi asta
https://openjdk.java.net/jeps/338
Nota:
Just common sense and googling. Daca este cineva care stie mai multe dspre aceste lucrui, este invitat sa scrie
Incluisv Hotspot are anumite lucruri facute in asa fel incat sa aiba avantajul unuei executii mai rapide de catre hardware.
https://chriswhocodes.com/hotspot_intrinsics_jdk14.html
O alta discutie pe subiect