Class IOReportClientFFM

java.lang.Object
oshi.driver.mac.IOReportClientFFM

public final class IOReportClientFFM extends Object
FFM equivalent of IOReportClient: manages a single IOReport subscription for GPU Stats and Energy Model channels, providing per-instance sampling of GPU active ticks, utilization, and power draw.

Returns sentinel values ((0,0) / -1.0) when IOReport is unavailable.

Call close() when done to release all CoreFoundation references.

  • Method Details

    • create

      public static IOReportClientFFM create()
      Creates a new IOReportClientFFM subscribed to GPU Stats and Energy Model channels.
      Returns:
      a new client, or null if IOReport is unavailable or subscription fails
    • sampleGpuTicks

      public GpuTicks sampleGpuTicks()
      Returns a GpuTicks snapshot of cumulative GPU active and idle ticks.
      Returns:
      GpuTicks snapshot; never null
    • sampleGpuUtilization

      public double sampleGpuUtilization()
      Returns instantaneous GPU utilization as a percentage (0–100), or -1.0 if unavailable or closed.
      Returns:
      GPU utilization percentage, or -1.0
    • samplePowerWatts

      public double samplePowerWatts()
      Returns instantaneous GPU power in watts, or -1.0 if unavailable or closed.
      Returns:
      GPU power in watts, or -1.0
    • close

      public void close()
      Releases all CoreFoundation references held by this client. Idempotent.