condor_gpu_discovery man page

condor_gpu_discovery Output GPU-related ClassAd attributes


condor_gpu_discovery -help

condor_gpu_discovery [ <options> ]


condor_gpu_discovery runs discovery software to determine the host's GPU capabilities, which are output as ClassAd attributes.

This tool is not available for MAC OS platforms.

With no command line options, the single ClassAd attribute  DetectedGPUs is printed. If the value is 0, no GPUs were detected. If one or more GPUS were detected, the value is a string, presented as a comma and space separated list of the GPUs discovered, where each is given a name further used as the prefix string in other attribute names. Where there is more than one GPU of a particular type, the prefix string includes an integer value numbering the device; these integer values monotonically increase from 0. For example, a discovery of two GPUs may output

DetectedGPUs="CUDA0, CUDA1"

Further command line options use  "CUDA" either with or without one of the integer values 0 or 1 as the prefix string in attribute names.


Print usage information and exit.
In addition to the  DetectedGPUs attribute, display standard CUDA attributes. Each of these attribute names will have a prefix string at the beginning of its name. For a host with more than one of the same GPU type, those attribute values that are the same across all of the GPUs will not have an integer value in the prefix string . The attributes are  Capability ,  DeviceName ,  DriverVersion ,  ECCEnabled ,  GlobalMemoryMb , and  RuntimeVersion . The displayed standard Open CL attributes are  DeviceName ,  ECCEnabled ,  OpenCLVersion , and  GlobalMemoryMb .
Display the additional attributes of Each of these attribute names will have a prefix string at the beginning of its name.  ClockMhz ,  ComputeUnits , and  CoresPerCU for a CUDA device, and  ClockMhz and  ComputeUnits for an OCL device.
Display attributes of NVIDIA devices that change values as the GPU is working. Each of these attribute names will have a prefix string at the beginning of its name. These are  FanSpeedPct ,  BoardTempC ,  DieTempC ,  EccErrorsSingleBit , and  EccErrorsDoubleBit .
When displaying attribute values, assume that the machine has a heterogeneous set of GPUs, so always include the integer value in the prefix string .
-device <N>
Display properties only for GPU device <N> , where <N> is the integer value defined for the prefix string . Note that the attribute names in this output will not contain the value for <N> .
-tag string
Set the resource tag portion of the intended machine ClassAd attribute  Detected<ResourceTag> to be string . If this option is not specified, the resource tag is  "GPUs" , resulting in attribute name  DetectedGPUs .
-prefix str
When naming attributes, use str as the prefix string . When this option is not specified, the prefix string is either  CUDA or  OCL .
For testing purposes, assume that N devices of type D were detected. No discovery software is invoked. If D is 0, it refers to GeForce GT 330, and a default value for N is 1. If D is 1, it refers to GeForce GTX 480, and a default value for N is 2.
Prefer detection via OpenCL rather than CUDA. Without this option, CUDA detection software is invoked first, and no further Open CL software is invoked if CUDA devices are detected.
Do only CUDA detection.
For Windows platforms only, use a CUDA driver rather than the CUDA run time.
Output in the syntax of HTCondor configuration, instead of ClassAd language. An additional attribute is produced  NUM_DETECTED_GPUs which is set to the number of GPUs detected.
For interactive use of the tool, output extra information to show detection while in progress.
Show diagnostic information, to aid in tool development.

Exit Status

condor_gpu_discovery will exit with a status value of 0 (zero) upon success, and it will exit with the value 1 (one) upon failure.


Center for High Throughput Computing, University of Wisconsin-Madison