Main Content


Reset GPU device and clear its memory



reset(gpudev) resets the GPU device and clears its memory of gpuArray and CUDAKernel data. The GPU device identified by gpudev remains the selected device, but all gpuArray and CUDAKernel objects in MATLAB representing data on that device are invalid. The CachePolicy property of the device is reset to the default. For more information, see gpuDevice.


collapse all

Select the GPU device and create a gpuArray.

D = gpuDevice;
M = eye(4,"gpuArray")
M =

     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1

Reset the device


Show that the device is still selected.

D = 
  CUDADevice with properties:

                      Name: 'Quadro P620'
                     Index: 2
         ComputeCapability: '6.1'
            SupportsDouble: 1
     GraphicsDriverVersion: '511.79'
               DriverModel: 'WDDM'
            ToolkitVersion: 11.2000
        MaxThreadsPerBlock: 1024
          MaxShmemPerBlock: 49152 (49.15 KB)
        MaxThreadBlockSize: [1024 1024 64]
               MaxGridSize: [2.1475e+09 65535 65535]
                 SIMDWidth: 32
               TotalMemory: 2147287040 (2.15 GB)
           AvailableMemory: 1614636238 (1.61 GB)
               CachePolicy: 'balanced'
       MultiprocessorCount: 4
              ClockRateKHz: 1354000
               ComputeMode: 'Default'
      GPUOverlapsTransfers: 1
    KernelExecutionTimeout: 1
          CanMapHostMemory: 1
           DeviceSupported: 1
           DeviceAvailable: 1
            DeviceSelected: 1

Show that the gpuArray variable name is still in the MATLAB workspace.

  Name      Size            Bytes  Class                      Attributes

  D         1x1                 8  parallel.gpu.CUDADevice              
  M         4x4                 0  gpuArray                             

Try to display the gpuArray.

M =

    Data no longer exists on the GPU.

Clear the variable.

clear M

Input Arguments

collapse all

GPU device, specified as a GPUDevice object that represents the currently selected device


After you reset a GPU device, any variables representing arrays or kernels on the device are invalid; you should clear or redefine them.

Extended Capabilities

Version History

Introduced in R2012a