Tinker9 70bd052 (Thu Nov 9 12:11:35 2023 -0800)
|
Namespaces | |
namespace | tinker::g |
Global handles for the GPU runtime libraries. | |
Variables | |
int | tinker::g::q0 |
Default OpenACC async queue. More... | |
int | tinker::g::q1 |
Default OpenACC sync queue. More... | |
int | tinker::g::qpme |
OpenACC async queue for PME. More... | |
bool | tinker::use_pme_stream |
Logical flag for use of a separate CUDA stream for PME. More... | |
cudaStream_t | tinker::g::s0 |
CUDA stream for the default OpenACC async queue. More... | |
cudaStream_t | tinker::g::s1 |
CUDA stream for the default OpenACC sync queue. More... | |
cublasHandle_t | tinker::g::h0 |
CUDA BLAS handle using s0. More... | |
cublasHandle_t | tinker::g::h1 |
CUDA BLAS handle using s1. More... | |
By default, the host thread will wait until the parallel loop finishes. If you want the host thread to proceed without waiting for the parallel loop to finish, you may add async
,
where queue
is an optional hardwired integer or an integer variable. A special integer constant value acc_async_sync
is defined by the OpenACC standard that can be used in the async
directive as a queue number, to achieve an synchronous/blocking behavior. Implementations may be different on different platforms though, on the CUDA platform every OpenACC queue is built on top of a CUDA stream.
|
extern |
CUDA BLAS handle using s0.
|
extern |
CUDA BLAS handle using s1.
|
extern |
Default OpenACC async queue.
|
extern |
Default OpenACC sync queue.
|
extern |
OpenACC async queue for PME.
|
extern |
CUDA stream for the default OpenACC async queue.
|
extern |
CUDA stream for the default OpenACC sync queue.
|
extern |
Logical flag for use of a separate CUDA stream for PME.