code: @Override
      public Pointer allocate(long bytes, MemoryKind kind, boolean initialize) {
          Pointer ptr = NativeOpsHolder.getInstance().getDeviceNativeOps().mallocHost(bytes, 0);
  
          if (ptr == null || ptr.address() == 0L)
              throw new OutOfMemoryError("Failed to allocate [" + bytes + "] bytes");
  
          //log.info("Allocating {} bytes at MemoryManager", bytes);
  
          if (initialize)
              Pointer.memset(ptr, 0, bytes);
  
          return ptr;
      }
docs: This method returns
  PLEASE NOTE: Cache options depend on specific implementations
  
  @param bytes
  @param kind
  @param initialize