# Módulos generados por el plugin

Cada GPU `i` (0-indexado) genera los siguientes módulos:

| Módulo | Tipo | Unidad | Descripción |
|---|---|---|---|
| `GPU_<i>_Status` | `generic_proc` | - | 1 si la GPU está detectada, 0 si no |
| `GPU_<i>_Utilization` | `generic_data` | % | Utilización de cómputo de la GPU |
| `GPU_<i>_Throttle_Active` | `generic_data` | - | Bitmask de razones de throttling activas |
| `GPU_<i>_Throttle_Reasons` | `generic_data_string` | - | Etiquetas de throttling separadas por coma |
| `GPU_<i>_Memory_Controller_Utilization` | `generic_data` | % | Utilización del controlador de memoria |
| `GPU_<i>_Memory_Used` | `generic_data` | MiB | Memoria usada |
| `GPU_<i>_Memory_Free` | `generic_data` | MiB | Memoria libre |
| `GPU_<i>_Memory_Total` | `generic_data` | MiB | Memoria total |
| `GPU_<i>_Memory_Used_Percent` | `generic_data` | % | (usada/total) * 100 redondeado a 1 decimal |
| `GPU_<i>_Temperature` | `generic_data` | °C | Temperatura de la GPU |
| `GPU_<i>_Power_Draw` | `generic_data` | W | Consumo actual de energía |
| `GPU_<i>_Power_Limit` | `generic_data` | W | Límite de energía |
| `GPU_<i>_Fan_Speed` | `generic_data` | % | Velocidad del ventilador (omitido con `--include-fan=false`) |
| `GPU_<i>_Graphics_Clock` | `generic_data` | MHz | Frecuencia del reloj de gráficos |
| `GPU_<i>_Performance_State` | `generic_data_string` | - | Etiqueta del estado de rendimiento (ej: P0) |
| `GPU_<i>_Performance_State_Number` | `generic_data` | PNumber | Valor numérico del estado de rendimiento |
| `GPU_<i>_Critical_Errors` | `generic_data` | - | Conteo de errores ECC no corregidos |
| `GPU_<i>_Name` | `generic_data_string` | - | Nombre del modelo de GPU |

## Módulos globales (3 total)

| Módulo | Tipo | Descripción |
|---|---|---|
| `GPU_Count` | `generic_proc` | Número de GPUs detectadas (0 = CRITICAL) |
| `GPU_Driver_Version` | `generic_data_string` | Versión del driver NVIDIA |
| `GPU_CUDA_Version` | `generic_data_string` | Versión máxima de CUDA soportada |

## Política de thresholds

| Módulo | Normal | Warning | Critical |
|---|---|---|---|
| Temperature | [0, 69] | [70, 89] | [90, 110] |
| Memory_Used_Percent | [0, 69] | [70, 84] | [85, 100] |
| Critical_Errors | 0 | (ninguno) | [1, 1000000] |

Los thresholds están hardcodeados en el binario. Para modificarlos, usar plantillas de alerta en la consola de Pandora FMS.

## Grupos de módulos

- Todos los módulos por GPU usan `module_group=GPU`
- Los módulos globales (`GPU_Count`, `GPU_Driver_Version`, `GPU_CUDA_Version`) no tienen module_group