-
-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend Functionality for Dynamically Fetching HW Specific Environment Variables #32
Comments
Related to this issue Store HW Specific Benchmark Variables for Perf Testing. I thought it might be more appropriate to open a separate issue for that since that would require some additional work. |
Note: we have very recently added the ability to query machine information into the base of testkitgen (a.k.a. Openjdk-tests framework), see https://github.com/eclipse/openj9/tree/master/test/TestConfig/src/org/openj9/envInfo This may be more useful and suitable to augment for gathering additional machine/hw info, and generating a machine info file needed by perf tests. |
Thanks @smlambert for sharing that info. We can discuss this in our PerfNext meeting tmr. |
- Closes adoptium#32 - Removed hard coded hardware environment variables - Extended functionality to look for capability in order to populate HW specific variables Signed-off-by: Awsaf Arefin Sakif <[email protected]>
- Closes adoptium#32 - Removed hard coded hardware environment variables - Extended functionality to look for capability in order to populate HW specific variables - Soft coded NUM_THREADS variable to replace hard coded MULTITHREAD variable Signed-off-by: Awsaf Arefin Sakif <[email protected]>
- Closes adoptium#32 - Removed hard coded hardware environment variables - Extended functionality to look for capability in order to populate HW specific variables - Soft coded NUM_THREADS variable to replace hard coded MULTITHREAD variable Signed-off-by: Awsaf Arefin Sakif <[email protected]>
- Closes adoptium#32 - Removed hard coded hardware environment variables - Extended functionality to look for capability in order to populate HW specific variables - Soft coded NUM_THREADS variable to replace hard coded MULTITHREAD variable Signed-off-by: Awsaf Arefin Sakif <[email protected]>
- Closes adoptium#32 - Removed hard coded hardware environment variables - Extended functionality to look for capability in order to populate HW specific variables - CPU Affinity calculations fixed, also name changed to 4-way instead of cores - Soft coded NUM_THREADS variable to replace hard coded MULTITHREAD variable Signed-off-by: Awsaf Arefin Sakif <[email protected]>
Problem Description
For running any benchmark, we need to fetch the HW specific variables that change depending on the machine selected. We also populate these HW specific variables on PerfNext GUI, as shown below in the screenshot, so that users are able to change the affinity and other commands if needed.
Currently, environment variables are hard-coded for just one machine right now. So, you would need to manually change environment variables such as
CLIENT
,DB_MACHINE
,LIBERTY_HOST
andAFFINITY
while running some benchmarks, especially the ones that require more than one machine, such as Liberty DayTrader.One example of hard-coded configs:
https://github.com/AdoptOpenJDK/openjdk-test-tools/blob/b528a63ea146080f4bb1430740a734c2af87df7e/PerfNext/config/benchmarks/data_simple/Liberty.xml#L18-L31
Proposed Solution
Task 1:
We should remove all machine specific environment variables from the various XML configs files under
PerfNext/config/benchmarks/data_simple
since they are already present in the/config/master_machine_list.xml
, which has all the machine specific configs, a file that the user provides while deploying PerfNext.Snippet from master_machine_list.xml
Task 2:
While PerfNext was being developed internally, I had already added majority of the functionality for fetching HW specific environment variables such as CPU Affinity variables by coding various functions (shown below) for it in
PerfNext/public/lib/js/util.js
. We need extend this functionality to fetch other HW specific environment variables that might be missing.Snippet Code from
PerfNext/public/lib/js/util.js
:https://github.com/AdoptOpenJDK/openjdk-test-tools/blob/b528a63ea146080f4bb1430740a734c2af87df7e/PerfNext/public/lib/js/util.js#L423-L635
Assigned Contributors
Awsaf (@pinicman) from my team would work on adding this functionality.
The text was updated successfully, but these errors were encountered: