edu.stanford.rsl.konrad.cuda
Class CUDAVolume3D
java.lang.Object
edu.stanford.rsl.konrad.volume3d.Volume3D
edu.stanford.rsl.konrad.cuda.CUDAVolume3D
public class CUDAVolume3D
- extends Volume3D
CUDAVolume3D models a Volume3D in the CUDA memory. All functions of Volume3D are also available for this class, but directly implemented in CUDA. If an algorithm is implemented and tested using Volume3D, it can easily ported to CUDA by setting the VolumeOperator to CUDAVolumeOperator. The AnisotropicFilterFunction is a nice example on how to use this interface.
- Author:
- akmaier
- See Also:
CUDAVolumeOperator
,
Volume3D
,
VolumeOperator
Constructor Summary |
CUDAVolume3D(ij.ImagePlus image,
int mirror,
int cuty,
boolean uneven)
|
CUDAVolume3D(int[] size2,
float[] dim2,
int inDim)
|
Method Summary |
void |
destroy()
releases the memory on the device for this volume. |
void |
fetch()
Fetches the data from the CUDA memory to the Java memory. |
jcuda.driver.CUdeviceptr |
getDevicePointer()
|
void |
setDevicePointer(jcuda.driver.CUdeviceptr deviceX)
|
void |
updateOnDevice()
Moves the data from the Java memory to the CUDA memory |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CUDAVolume3D
public CUDAVolume3D(int[] size2,
float[] dim2,
int inDim)
CUDAVolume3D
public CUDAVolume3D(ij.ImagePlus image,
int mirror,
int cuty,
boolean uneven)
fetch
public void fetch()
- Fetches the data from the CUDA memory to the Java memory.
updateOnDevice
public void updateOnDevice()
- Moves the data from the Java memory to the CUDA memory
destroy
public void destroy()
- releases the memory on the device for this volume.
- Overrides:
destroy
in class Volume3D
getDevicePointer
public jcuda.driver.CUdeviceptr getDevicePointer()
setDevicePointer
public void setDevicePointer(jcuda.driver.CUdeviceptr deviceX)