From 5803013a2922369b236a560de32608566f3210d7 Mon Sep 17 00:00:00 2001 From: Vojin Jovanovic Date: Thu, 27 Mar 2025 16:54:40 +0100 Subject: [PATCH] Fix missing optimization configs --- sdk/mx.sdk/mx_sdk_benchmark.py | 2 +- vm/mx.vm/mx_vm_benchmark.py | 19 +++++++++---------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/sdk/mx.sdk/mx_sdk_benchmark.py b/sdk/mx.sdk/mx_sdk_benchmark.py index 9beb46a0f4bf..ecade5b84481 100644 --- a/sdk/mx.sdk/mx_sdk_benchmark.py +++ b/sdk/mx.sdk/mx_sdk_benchmark.py @@ -838,7 +838,7 @@ def _configure_from_name(self, config_name): rule = r'^(?Pnative-architecture-)?(?Pstring-inlining-)?(?Potw-)?(?Pcompacting-gc-)?(?Ppreserve-all-)?(?Ppreserve-classpath-)?' \ r'(?Pfuture-defaults-all-)?(?Pgate-)?(?Pupx-)?(?Pquickbuild-)?(?Pg1gc-)?' \ r'(?Pllvm-)?(?Ppgo-|pgo-sampler-)?(?Pinline-)?' \ - r'(?Pinsens-|allocsens-|1obj-|2obj1h-|3obj2h-|4obj3h-)?(?Pno-inline-)?(?Pjdk-profiles-collect-|adopted-jdk-pgo-)?' \ + r'(?Pinsens-|allocsens-|1obj-|2obj1h-|3obj2h-|4obj3h-)?(?Pjdk-profiles-collect-|adopted-jdk-pgo-)?' \ r'(?Pprofile-inference-feature-extraction-|profile-inference-pgo-|profile-inference-debug-)?(?Psafepoint-sampler-|async-sampler-)?(?PO0-|O1-|O2-|O3-|Os-)?(default-)?(?Pce-|ee-)?$' mx.logv(f"== Registering configuration: {config_name}") diff --git a/vm/mx.vm/mx_vm_benchmark.py b/vm/mx.vm/mx_vm_benchmark.py index 8d14798d12d8..18157042845f 100644 --- a/vm/mx.vm/mx_vm_benchmark.py +++ b/vm/mx.vm/mx_vm_benchmark.py @@ -518,18 +518,17 @@ def register_graalvm_vms(): for short_name, config_suffix in [('niee', 'ee'), ('ni', 'ce')]: if any(component.short_name == short_name for component in mx_sdk_vm_impl.registered_graalvm_components(stage1=False)): + config_names = list() for main_config in ['default', 'gate', 'llvm', 'native-architecture', 'future-defaults-all', 'preserve-all', 'preserve-classpath'] + analysis_context_sensitivity: - final_config_name = f'{main_config}-{config_suffix}' - mx_benchmark.add_java_vm(NativeImageVM('native-image', final_config_name, ['--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED']), _suite, 10) - # ' ' force the empty O<> configs as well - for main_config in ['llvm', 'native-architecture', 'g1gc', 'native-architecture-g1gc', 'preserve-all', 'preserve-classpath'] + analysis_context_sensitivity: - for optimization_level in optimization_levels: - if len(main_config) > 0: - final_config_name = f'{main_config}-{optimization_level}-{config_suffix}' - else: - final_config_name = f'{optimization_level}-{config_suffix}' - mx_benchmark.add_java_vm(NativeImageVM('native-image', final_config_name, ['--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED']), _suite, 10) + config_names.append(f'{main_config}-{config_suffix}') + for optimization_level in optimization_levels: + config_names.append(f'{optimization_level}-{config_suffix}') + for main_config in ['llvm', 'native-architecture', 'g1gc', 'native-architecture-g1gc', 'preserve-all', 'preserve-classpath'] + analysis_context_sensitivity: + config_names.append(f'{main_config}-{optimization_level}-{config_suffix}') + + for config_name in config_names: + mx_benchmark.add_java_vm(NativeImageVM('native-image', config_name, ['--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED']), _suite, 10) # Adding JAVA_HOME VMs to be able to run benchmarks on GraalVM binaries without the need of building it first for java_home_config in ['default', 'pgo', 'g1gc', 'g1gc-pgo', 'upx', 'upx-g1gc', 'quickbuild', 'quickbuild-g1gc']: