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

Add new XML variables for flexible controls of GPU configuration #363

Merged
merged 6 commits into from
Aug 9, 2023

Conversation

sjsprecious
Copy link
Contributor

@sjsprecious sjsprecious commented Apr 17, 2023

This PR introduces four new XML variables for a more flexible control of GPU configuration:

  • GPU_TYPE: the type of GPU device to be used, such as NVIDIA A100 GPU, AMD MI250, etc.
  • GPU_OFFLOAD: the type of GPU programming model for GPU offload, such as OpenACC, OpenMP target offload, etc.
  • MAX_CPUTASKS_PER_GPU_NODE: the maximum number of CPU cores / MPI ranks per GPU node that can be used for simulation. This variable is needed for machines (e.g., Gust at NCAR) where CPU and GPU nodes have different number of CPU cores.
  • MPI_GPU_WRAPPER_SCRIPT: the wrapper script that will be attached to the MPI run command and map different MPI ranks to different GPUs within the same compute node.

This PR will work properly with the PRs in CIME (ESMCI/cime#4396) and ccs_config_cesm (ESMCI/ccs_config_cesm#97).

Update nvhpc compiler for GPU settings
Remove PGI compiler

	modified:   cime_config/config_component.xml
so that they could assign multiple values to the config_machines.xml
file

	modified:   cime_config/config_component.xml
@sjsprecious
Copy link
Contributor Author

@jedwards4b will issue a separate PR to introduce these changes.

@sjsprecious sjsprecious reopened this Aug 8, 2023
@jedwards4b jedwards4b merged commit e951fdc into ESCOMP:main Aug 9, 2023
2 checks passed
@sjsprecious sjsprecious deleted the add_gpu_gust branch October 4, 2024 07:17
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