-
Notifications
You must be signed in to change notification settings - Fork 195
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
CTest follow-up: expand range of tolerances used for checksum benchmarks #5256
Comments
Copied from #5205 (comment) because it is relevant here as well:
|
I guess I would go for multiple arguments, say
because I don't see a good way to handle defaults if we pass a dictionary. For example, with multiple arguments, we could do something like checksumAPI.evaluate_checksum(testname, filename, rtol_double_portable=1e-3) whenever a test needs to pass a larger "double-portable" tolerance for whatever reason, without having to worry about the defaults for On the other end, how would we do this if we have to pass a dictionary? Something like checksumAPI.evaluate_checksum(testname, filename, tol_dict={"single_portable": None, "double_portable": 1e-3, "double_machine_precision": None}) and then having, inside I feel like the first option could be easier to use. |
Fix #5206 and prepare for #5256: - [x] Add missing checksums - [x] `test_1d_background_mcc_picmi` - [x] `test_2d_background_mcc_picmi` - [x] `test_3d_particle_absorption` - [x] `test_2d_dirichlet_bc` - [x] `test_2d_dirichlet_bc_picmi` - [x] `test_2d_field_probe` - [x] `test_3d_embedded_boundary_picmi` - [x] `test_2d_particle_reflection_picmi` - [x] `test_rz_laser_acceleration_opmd` - [x] `test_2d_runtime_components_picmi` - [x] Clean up calls to `evaluate_checksum` Calls to `evaluate_checksum` are now uniform across the analysis scripts, making it easier to automatize further changes. Hopefully the uniformity will be preserved by copy/pasting the necessary code: - ```py import os import sys ``` - ```py sys.path.insert(1, "../../../../warpx/Regression/Checksum/") from checksumAPI import evaluate_checksum ``` - ```py # compare checksums evaluate_checksum( test_name=os.path.split(os.getcwd())[1], output_file=sys.argv[1], ) ``` with this last one possibly modified by adding other arguments, e.g., `output_format`, `rtol`, `do_particles`, etc.
Expand on what is described in #5205, expose more tolerances:
The text was updated successfully, but these errors were encountered: