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

Refactor mc ica #12

Open
wants to merge 77 commits into
base: master
Choose a base branch
from
Open

Refactor mc ica #12

wants to merge 77 commits into from

Conversation

lxavier
Copy link

@lxavier lxavier commented Mar 8, 2021

This PR is to discuss this implementation - not necessarily for merging
Note compilation on daint

module load daint-gpu
module switch PrgEnv-cray/6.0.8 PrgEnv-pgi;
module load cudatoolkit
/apps/daint/UES/jenkins/7.0.UP01/gpu/easybuild/software/CMake/3.18.1/bin/cmake -S ../ -DGPU_ACC=ON -DGPU_ACC_TARGET_CC=cc60 -DNETCDF_DIR=/opt/cray/pe/netcdf-hdf5parallel/4.7.4.0/PGI/20.1
export CUDA_HOME=$CUDATOOLKIT_HOME
make -j6

FrostyMike and others added 30 commits December 1, 2020 21:18
Mikhail Zhigun and others added 28 commits February 1, 2021 18:24

!$acc loop independent worker
Copy link
Author

Choose a reason for hiding this comment

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

@FrostyMike is there a reason why you use worker and not vector for the inner most loop ?

Choose a reason for hiding this comment

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

Yes, check the old message in slack channel for details.
"2. Compiler (pgfortran 20.11) does not respect OpenACC "vector_length" specification.
This means that Gang -> Vector parallelism model I outlined in my variants is not going to work as is. However, this can be easily fixed by introducing workers, in the amount required to fill the vector. I.e. if you want 1 vector of 128 threads, create 4 workers with 32 threads each instead."

huppd pushed a commit that referenced this pull request Oct 11, 2021
Merge in ESCAPE/dwarf-p-radiation-ecrad from dwd-verbose-aerosol to master

* commit 'b37dcdef664cc6d11188cbc1a647217196f612be':
  [dwd-verbose-aerosol] Moved aerosol_optics%print_description call into iverbosesetup >= 1 as this produces a lot of stdout otherwise (when running with multiple tasks)
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