Skip to content

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

Merged
jedwards4b merged 6 commits into
ESCOMP:mainfrom
sjsprecious:add_gpu_gust
Aug 9, 2023
Merged

Add new XML variables for flexible controls of GPU configuration#363
jedwards4b merged 6 commits into
ESCOMP:mainfrom
sjsprecious:add_gpu_gust

Conversation

@sjsprecious
Copy link
Copy Markdown
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
Copy Markdown
Contributor Author

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

@sjsprecious sjsprecious reopened this Aug 8, 2023
@sjsprecious sjsprecious requested a review from jedwards4b August 8, 2023 16:33
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