Class GPUUtils

java.lang.Object
io.antmedia.statistic.GPUUtils

public class GPUUtils extends Object
  • Field Details

    • logger

      private static org.slf4j.Logger logger
    • instance

      private static GPUUtils instance
    • noGPU

      private static boolean noGPU
    • deviceCount

      private Integer deviceCount
  • Constructor Details

    • GPUUtils

      private GPUUtils()
  • Method Details

    • getInstance

      public static GPUUtils getInstance()
      Multiple threads can enter here and may cause an unexpected exception. So it's synch
      Returns:
    • getDeviceCount

      public int getDeviceCount()
    • getDevice

      public org.bytedeco.cuda.nvml.nvmlDevice_st getDevice(int deviceIndex)
    • getUtilization

      private org.bytedeco.cuda.nvml.nvmlUtilization_t getUtilization(int deviceNo)
    • getMemoryStatus

      public GPUUtils.MemoryStatus getMemoryStatus(int deviceNo)
    • getEncoderUtilization

      public int getEncoderUtilization(int deviceNo)
      Get the encoder utilization of the device
      Parameters:
      deviceNo -
      Returns:
      encoder utilization by percentage
    • getDecoderUtilization

      public int getDecoderUtilization(int deviceNo)
      Get the decoder utilization of the device
      Parameters:
      deviceNo -
      Returns:
      decoder utilization by percentage
    • getDeviceName

      public String getDeviceName(int deviceIndex)
    • getMemoryUtilization

      public int getMemoryUtilization(int deviceNo)
    • getGPUUtilization

      public int getGPUUtilization(int deviceNo)