主机函数#

以下实用程序函数应从主机调用。它们遵循通常的 CUDA 流语义。

template<class PQC>
uint8_t *make_workspace(
size_t batch,
cudaStream_t stream = 0,
);#

PQC 描述的算法分配全局内存工作区,足以容纳 batch 批次。如果内存分配出现问题,此函数将抛出运行时错误。

template<class PQC>
uint8_t *get_entropy(
size_t batch,
cudaStream_t stream = 0,
);#

PQC 描述的算法分配和填充熵缓冲区,使用密码学安全的随机性,足以容纳 batch 批次。如果内存分配出现问题,此函数将抛出运行时错误。

void destroy_workspace(uint8_t *workspace, cudaStream_t stream = 0);#

释放由 make_workspace 分配的全局内存。

void release_entropy(uint8_t *workspace, cudaStream_t stream = 0);#

释放由 get_entropy 分配的全局内存。