$darkmode
Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
gpu_usage.c File Reference
#include "gpu_usage.h"
#include "log.h"
#include "utils.h"
#include <string.h>
Include dependency graph for gpu_usage.c:

Functions

void gpu_usage_init (GPUUsageMonitor *mon)
 Scans /proc/self/fdinfo/ and opens streams for GPU engine time reading. More...
 
void gpu_usage_cleanup (GPUUsageMonitor *mon)
 Closes all open fdinfo streams. More...
 
void gpu_usage_update (GPUUsageMonitor *mon)
 Re-reads fdinfo streams and computes GPU load %. Should be called periodically (e.g., every 500ms). More...
 
float gpu_usage_get_load (const GPUUsageMonitor *mon)
 Returns the last computed GPU load (0.0–100.0). More...
 
bool gpu_usage_is_available (const GPUUsageMonitor *mon)
 Returns true if a supported DRM driver was detected. More...
 

Function Documentation

◆ gpu_usage_cleanup()

void gpu_usage_cleanup ( GPUUsageMonitor *  mon)

Closes all open fdinfo streams.

◆ gpu_usage_get_load()

float gpu_usage_get_load ( const GPUUsageMonitor *  mon)

Returns the last computed GPU load (0.0–100.0).

◆ gpu_usage_init()

void gpu_usage_init ( GPUUsageMonitor *  mon)

Scans /proc/self/fdinfo/ and opens streams for GPU engine time reading.

◆ gpu_usage_is_available()

bool gpu_usage_is_available ( const GPUUsageMonitor *  mon)

Returns true if a supported DRM driver was detected.

◆ gpu_usage_update()

void gpu_usage_update ( GPUUsageMonitor *  mon)

Re-reads fdinfo streams and computes GPU load %. Should be called periodically (e.g., every 500ms).