  
      def get_devices(self):
          """ Return name of devices """
          self.initialize()
          if IS_MACOS:
              names = [pynvx.cudaGetName(handle, ignore=True)
                       for handle in self.handles]
          else:
              names = [pynvml.nvmlDeviceGetName(handle).decode("utf-8")
                       for handle in self.handles]
 
</s> remove         self.driver = self.get_driver()
        self.devices = self.get_devices()
 </s> add 
        if self.device_count == 0:
            names = list()
        elif IS_MACOS:
  
      def get_devices(self):
          """ Return name of devices """
          self.initialize()
        if self.device_count == 0:
            names = list()
        elif IS_MACOS:
              names = [pynvx.cudaGetName(handle, ignore=True)
                       for handle in self.handles]
          else:
              names = [pynvml.nvmlDeviceGetName(handle).decode("utf-8")
                       for handle in self.handles]
keep keep keep keep replace keep keep keep keep keep
 Bugfix: Return empty list when no GPU found 
lib/gpu_stats.py