Add CP2K grid integration benchmark#10
Conversation
| npts: 18 | ||
| seed: 17 | ||
| XL: | ||
| num_tasks: 8192 |
There was a problem hiding this comment.
What is the work size on XL?
I think "seed" is not a size parameter but a config parameter, shouldn't it go to configs? I assume seed is random seet?
| from numpy.ctypeslib import ndpointer | ||
| import pytest | ||
|
|
||
| HERE = Path(__file__).resolve().parent |
There was a problem hiding this comment.
We should not need sys.path insert.
The folder should be added to repo via init.py
Also the test should be moved to the top level tests folder, You import the sources from tests folder
There was a problem hiding this comment.
For Fortran source we need to have a path - move that closer to it
|
|
||
| RTOL = 3.0e-13 | ||
| ATOL = 3.0e-13 | ||
| FORTRAN_SOURCE = HERE.parent / "cp2k_density_matrix_trs4_original.f90" |
There was a problem hiding this comment.
For Fortran source we need to have a path yes.
| STATE_SIZE, blocked_csr_multiply, cp2k_density_matrix_trs4, | ||
| ) | ||
|
|
||
| RTOL = 3.0e-13 |
There was a problem hiding this comment.
RTOL and ATOL are global constants in this repo, read it from the repo config
| spin_scale: 2.0 | ||
| seed: 19 | ||
| XL: | ||
| n_block_rows: 192 |
There was a problem hiding this comment.
We should try to aim to have a working set size of around at-least 4GB for problems, have you checked it.
Also parameters are the parameters that are required for allocating arrays and sizes.
Configuration parameters such as seed, eps_in, eps_max, threshold should go to the config. Those parameters can't be fuzzed and thus it will create problems when running, this is important!
There was a problem hiding this comment.
But I think I also ensure the fuzzing is more robust by reading array shapes
There was a problem hiding this comment.
Still, move config paramters (the ones that are constant across shape parameters) to config.
This PR adds two standalone CP2K benchmarks extracted from production code.
Included:
• CP2K Grid Integration (Level 2)
• CP2K TRS4 Density Matrix Purification (Level 3)
Validation: