Cray Hyperthreading Support


This is to notify the community that PBS supports hyper threading on Cray X* series systems using ALPS.  No code changes to PBS are required.  To use hyper threading, only the aprun call in the job script needs to request hyper threads. 

On a Cray X* series system using ALPS PBS creates the values for the vnode's resources based on what is returned in the ALPS inventory response.
PBS sets the resources_available.ncpus value based on the number of compute unit elements returned in the XML inventory response.  Refer to the following Cray documentation for an explanation about compute units and CPUs: https://pubs.cray.com/content/S-2529/17.05/xctm-series-programming-environment-user-guide-1705-s-2529/compute-units-and-cpus

This allows PBS to make ALPS reservations for compute units of a node and get all of the hyper threads associated with those compute units.
On a Cray X* series system with ALPS using Cray's aprun command a user can request to use the hyper threads.  Please refer to Cray's man page for aprun.

It is up to the the PBS administrator to create any node distinctions (e.g. hyper threaded versus non-hyperthreaded) by using custom resources.





OSS Site Map

Developer Guide Pages