| 1 | { |
| 2 | "jsonSchema": { |
| 3 | "$schema": "http://json-schema.org/draft-07/schema#", |
| 4 | "title": "NVIDIA SMI collector configuration.", |
| 5 | "type": "object", |
| 6 | "properties": { |
| 7 | "update_every": { |
| 8 | "title": "Update every", |
| 9 | "description": "Data collection interval, measured in seconds.", |
| 10 | "type": "integer", |
| 11 | "minimum": 1, |
| 12 | "default": 10 |
| 13 | }, |
| 14 | "autodetection_retry": { |
| 15 | "title": "Detection retry", |
| 16 | "description": "Recheck interval in seconds. Zero means no recheck will be scheduled.", |
| 17 | "type": "integer", |
| 18 | "minimum": 0, |
| 19 | "default": 60 |
| 20 | }, |
| 21 | "binary_path": { |
| 22 | "title": "Binary path", |
| 23 | "description": "Path to the `nvidia-smi` binary.", |
| 24 | "type": "string", |
| 25 | "default": "nvidia-smi" |
| 26 | }, |
| 27 | "timeout": { |
| 28 | "title": "Timeout", |
| 29 | "description": "The maximum duration, in seconds, to wait for an `nvidia-smi` command to complete.", |
| 30 | "type": "number", |
| 31 | "minimum": 0.5, |
| 32 | "default": 10 |
| 33 | }, |
| 34 | "loop_mode": { |
| 35 | "title": "Loop Mode", |
| 36 | "description": "When enabled, `nvidia-smi` is executed continuously in a separate thread using the `-l` option.", |
| 37 | "type": "boolean", |
| 38 | "default": true |
| 39 | } |
| 40 | }, |
| 41 | "required": [ |
| 42 | "binary_path" |
| 43 | ] |
| 44 | }, |
| 45 | "uiSchema": { |
| 46 | "uiOptions": { |
| 47 | "fullPage": true |
| 48 | }, |
| 49 | "binary_path": { |
| 50 | "ui:help": "If an absolute path is provided, the collector will use it directly; otherwise, it will search for the binary in directories specified in the PATH environment variable." |
| 51 | }, |
| 52 | "timeout": { |
| 53 | "ui:help": "This setting applies differently based on the collector's mode. **Loop Mode:** In loop mode, the timeout primarily determines how long to wait for the initial `nvidia-smi` execution. If the initial query takes longer than the timeout, the collector may report an error. For systems with multiple GPUs, the initial load time can sometimes be significant (e.g., 5-10 seconds). **Regular Mode:** If the collector is in regular mode, the timeout specifies how long to wait for each individual `nvidia-smi` execution." |
| 54 | }, |
| 55 | "loop_mode": { |
| 56 | "ui:help": "In loop mode, `nvidia-smi` will repeatedly query GPU data at specified intervals, defined by the `-l SEC` or `--loop=SEC` parameter, rather than just running the query once. This enables ongoing performance tracking by putting the application to sleep between queries." |
| 57 | } |
| 58 | } |
| 59 | } |