Skip to content

Hemepure benchmark #371

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

Open
wants to merge 16 commits into
base: main
Choose a base branch
from
Open

Hemepure benchmark #371

wants to merge 16 commits into from

Conversation

connoraird
Copy link
Collaborator

  • This relies on some changes from Gromacs benchmark #370 in order to work on cosma8, kathleen or myriad
  • Adding benchmarks for hememure on CPU and GPU

@connoraird connoraird requested a review from tkoskela March 25, 2025 10:29
@connoraird connoraird force-pushed the hemepure-benchmark branch from 224b2b3 to 6760333 Compare April 1, 2025 15:45
@connoraird connoraird changed the base branch from main to gromacs-benchmark April 2, 2025 10:25
Comment on lines 57 to 68
self.perf_patterns = {
'Runtime': sn.extractsingle(r'\[Rank \d+, (?P<runtime>\S+) s, \d+ kB] :: SIMULATION FINISHED',
self.stdout, 'runtime', float, item=-1)
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I asked Jon McCulloug about performance metrics, his response was

Regarding performance metrics, time steps / wall clock does make sense, though for LBM codes this is usually expressed in terms of millions of lattice updates per second (MLUPS)
Calculated as (number sites * number steps)/(1000000 * wall clock time for simulation). We typically separated initialisation time and simulation time for this. MLUPS can also be expressed cumulatively or on a per core or per node basis depending on the information you want to convey.

I haven't looked at the output so I don't know what's there. If we can extract either time steps/unit of wall time or MLUPS, those would be a better performance metric

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay so simulated time steps divided by reported the wall time?


HemePure is a optimized verion of HemeLB with improved memory, compilation and scaling

This directory includes a data directory, `input_data/pipe`, which can be used to benchmark both GPU and CPU machines. This data file was taken from https://github.com/UCL-CCS/HemePure/tree/master/cases/pipe.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the same as the TestPipe data in https://zenodo.org/records/14859634

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does not appear to be the same

@connoraird connoraird force-pushed the hemepure-benchmark branch 4 times, most recently from 122fd01 to 3feb602 Compare April 3, 2025 14:48
@connoraird connoraird force-pushed the hemepure-benchmark branch from 3feb602 to c551a2b Compare April 4, 2025 15:10
@connoraird connoraird marked this pull request as ready for review April 4, 2025 15:29
@tkoskela tkoskela moved this to In Progress in HemeLB benchmark May 7, 2025
Base automatically changed from gromacs-benchmark to main May 7, 2025 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants