|
Tissue Forge C++ 0.2.1
Interactive, particle-based physics, chemistry and biology modeling and simulation environment
|
CUDA runtime control interface for Tissue Forge bonds. More...
#include <tfBondConfig.h>
Static Public Member Functions | |
| static bool | onDevice () |
| Check whether the bonds are currently on a device. | |
| static int | getDevice () |
| Get the id of the device designated for running bonds. | |
| static HRESULT | setDevice (int deviceId=0) |
| Set the id of the device for running bonds. | |
| static HRESULT | toDevice () |
| Send bonds to device. If bonds are already on device, then the call is ignored. | |
| static HRESULT | fromDevice () |
| Pull engine from device. If engine is not on a device, then the call is ignored. | |
| static HRESULT | setBlocks (unsigned int numBlocks) |
| Set the number of blocks of the CUDA configuration for a CUDA device. | |
| static HRESULT | setThreads (unsigned int numThreads) |
| Set the number of threads of the CUDA configuration for a CUDA device. | |
| static HRESULT | refreshBond (BondHandle *bh) |
| Update a bond on a CUDA device. | |
| static HRESULT | refreshBonds (std::vector< BondHandle * > bonds) |
| Update bonds on a CUDA device. | |
| static HRESULT | refresh () |
| Update all bonds on a CUDA device. | |
CUDA runtime control interface for Tissue Forge bonds.
This object provides control for configuring bond calculations on CUDA devices.
At any time during a simulation, supported bond calculations can be sent to a particular CUDA device, or brought back to the CPU when deployed on a CUDA device. CUDA dynamic parallelism can also be specified before deploying bond calculations to a CUDA device. Future Tissue Forge versions will support deployment on multiple devices.
|
static |
Pull engine from device. If engine is not on a device, then the call is ignored.
|
static |
Get the id of the device designated for running bonds.
|
static |
Check whether the bonds are currently on a device.
|
static |
Update all bonds on a CUDA device.
Useful for notifying the device that bonds have changed.
If engine is not on a device, then the call is ignored.
|
static |
Update a bond on a CUDA device.
Useful for notifying the device that a bond has changed.
If engine is not on a device, then the call is ignored.
| bh | bond to update |
|
static |
Update bonds on a CUDA device.
Useful for notifying the device that bonds have changed.
If engine is not on a device, then the call is ignored.
| bonds | bonds to update |
|
static |
Set the number of blocks of the CUDA configuration for a CUDA device.
Throws an error if called when the bonds are already deployed to a CUDA device.
| numBlocks | number of blocks |
|
static |
Set the id of the device for running bonds.
Can be safely called while bonds are currently on a device.
| deviceId |
|
static |
Set the number of threads of the CUDA configuration for a CUDA device.
Throws an error if called when bonds are already deployed to a CUDA device.
| numThreads | number of threads |
|
static |
Send bonds to device. If bonds are already on device, then the call is ignored.