Skip to content
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

Single-precision support for HIP variants #93

Merged
merged 2 commits into from
Nov 4, 2024

Conversation

MichaelSt98
Copy link
Contributor

HIP SP tested on LUMI via e.g.

./cloudsc-bundle build --clean --build-dir=build-sp-hip --arch=arch/eurohpc/lumi/cray-gpu/16.0.1 --with-hip --single-precision [--with-serialbox]

Copy link
Collaborator

@reuterbal reuterbal left a comment

Choose a reason for hiding this comment

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

Many thanks, this looks great and confirmed to work on LUMI!

A few minor clean-up comments but no show-stoppers

@@ -10,17 +10,18 @@

#include "cloudsc_validate.h"

#include <float.h>
#include <dtype.h>
Copy link
Collaborator

Choose a reason for hiding this comment

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

#include "dtype.h" or redundant?

Was previously used for DBL_EPSILON, I think.

Comment on lines 63 to 64
// #pragma omp parallel for default(shared) private(b, bsize, jk) \
// reduction(min:zminval) reduction(max:zmaxval,zmaxerr) reduction(+:zerrsum,zsum)
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think you re-enabled this in the othe rPR?

Comment on lines 101 to 102
// #pragma omp parallel for default(shared) private(b, bsize, jl, jk) \
// reduction(min:zminval) reduction(max:zmaxval,zmaxerr) reduction(+:zerrsum,zsum)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Same comment

Comment on lines 91 to 92
// dtype (*field)[nlev][nlon] = (dtype (*)[nlev][nlon]) v_field;
// dtype (*reference)[nlev][nlon] = (dtype (*)[nlev][nlon]) v_ref;
Copy link
Collaborator

Choose a reason for hiding this comment

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

debug leftover?

Comment on lines 54 to 55
//dtype (*field)[nlon] = (dtype (*)[nlon]) v_field;
//dtype (*reference)[nlon] = (dtype (*)[nlon]) v_ref;
Copy link
Collaborator

Choose a reason for hiding this comment

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

debug leftover?

Comment on lines 133 to 134
// dtype (*field)[nclv][nlev][nlon] = (dtype (*)[nclv][nlev][nlon]) v_field;
// dtype (*reference)[nclv][nlev][nlon] = (dtype (*)[nclv][nlev][nlon]) v_ref;
Copy link
Collaborator

Choose a reason for hiding this comment

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

debug leftover?

Comment on lines 142 to 143
// #pragma omp parallel for default(shared) private(b, bsize, jl, jk, jm) \
// reduction(min:zminval) reduction(max:zmaxval,zmaxerr) reduction(+:zerrsum,zsum)
Copy link
Collaborator

Choose a reason for hiding this comment

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

re-enable or remove?

@reuterbal reuterbal changed the title HIP SP Single-precision support for HIP variants Jul 26, 2024
Copy link
Collaborator

@reuterbal reuterbal left a comment

Choose a reason for hiding this comment

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

Great, many thanks. Tested in conjunction with #97 and seems to work fine.

@reuterbal reuterbal merged commit f914829 into develop Nov 4, 2024
18 checks passed
@reuterbal reuterbal deleted the nams-hip-sp-single-dir branch November 4, 2024 16:41
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