## Uses of Class
org.apache.sysds.runtime.instructions.gpu.context.GPUObject

- Packages that use GPUObject
  Package | Description
  --- | ---
  org.apache.sysds.runtime.controlprogram.caching |
  org.apache.sysds.runtime.instructions.gpu.context |
  org.apache.sysds.runtime.lineage |

- - ### Uses of GPUObject in org.apache.sysds.runtime.controlprogram.caching

    Methods in org.apache.sysds.runtime.controlprogram.caching that return GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `GPUObject` | CacheableData.`getGPUObject​(GPUContext gCtx)` |

    Methods in org.apache.sysds.runtime.controlprogram.caching with parameters of type GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | CacheableData.`setGPUObject​(GPUContext gCtx, GPUObject gObj)` |

  - ### Uses of GPUObject in org.apache.sysds.runtime.instructions.gpu.context

    Fields in org.apache.sysds.runtime.instructions.gpu.context declared as GPUObject
    Modifier and Type | Field | Description
    --- | --- | ---
    `GPUObject` | GPUObject.`lineageCachedChainHead` | Next GPUObject that points to the same lineage cached GPU pointer
    `GPUObject` | GPUObject.`nextLineageCachedEntry` | Head of the linked list of GPUObjects that point to the same lineage cached GPU pointer

    Methods in org.apache.sysds.runtime.instructions.gpu.context that return GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `GPUObject` | GPUContext.`createGPUObject​(MatrixObject mo)` | Instantiates a new `GPUObject` initialized with the given `MatrixObject`.
    `GPUObject` | GPUContext.`shallowCopyGPUObject​(GPUObject source, MatrixObject mo)` | Shallow copy the given source `GPUObject` to a new `GPUObject` and assign that to the given `MatrixObject`.

    Methods in org.apache.sysds.runtime.instructions.gpu.context with parameters of type GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | GPUMemoryManager.EvictionPolicyBasedComparator.`compare​(GPUObject p1, GPUObject p2)` |
    `void` | GPUMemoryManager.`removeGPUObject​(GPUObject gpuObj)` | Removes the GPU object from the memory manager
    `GPUObject` | GPUContext.`shallowCopyGPUObject​(GPUObject source, MatrixObject mo)` | Shallow copy the given source `GPUObject` to a new `GPUObject` and assign that to the given `MatrixObject`.

    Constructors in org.apache.sysds.runtime.instructions.gpu.context with parameters of type GPUObject
    Constructor | Description
    --- | ---
    `GPUObject​(GPUContext gCtx, GPUObject that, MatrixObject mat)` |
    `ShadowBuffer​(GPUObject gpuObj)` |

  - ### Uses of GPUObject in org.apache.sysds.runtime.lineage

    Methods in org.apache.sysds.runtime.lineage that return GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `GPUObject` | LineageCacheEntry.`getGPUObject()` |

    Methods in org.apache.sysds.runtime.lineage with parameters of type GPUObject
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | LineageCacheEntry.`setGPUValue​(GPUObject gpuObj, long computetime)` |