Converts Python object with __sycl_usm_array_interface__ property to one of MemoryUSMShared, MemoryUSMDevice, or MemoryUSMHost instances depending on the type of USM allocation they represent.

  • ValueError – When object does not expose the __sycl_usm_array_interface__, or it is malformed

  • TypeError – When unexpected types of entries in the interface are encountered

  • SyclQueueCreationError – When a dpctl.SyclQueue could not be created from the information given by the interface