public abstract class BatchedCompressor extends Object
构造方法和说明 |
---|
BatchedCompressor(long chunkSize, long maxOutputChunkSize, long maxIntermediateBufferSize)
构造批量压缩器实例
|
修饰符和类型 | 方法和说明 |
---|---|
protected abstract void |
batchedCompressAsync(long devInPtrs, long devInSizes, long chunkSize, long batchSize, long tempPtr, long tempSize, long devOutPtrs, long compressedSizesOutPtr, long stream)
异步压缩一批缓冲区。
|
protected abstract long |
batchedCompressGetTempSize(long batchSize, long maxChunkSize)
获取执行整个批量压缩所需的临时工作区大小。
|
DeviceMemoryBuffer[] |
compress(BaseDeviceMemoryBuffer[] origInputs, Cuda.Stream stream)
压缩一批缓冲区。
|
public BatchedCompressor(long chunkSize, long maxOutputChunkSize, long maxIntermediateBufferSize)
chunkSize
- 作为单个块压缩的未压缩数据的最大量。大于此大小的输入将被分成多个块进行压缩。maxIntermediateBufferSize
- 压缩期间使用的中间设备缓冲区的所需最大大小。public DeviceMemoryBuffer[] compress(BaseDeviceMemoryBuffer[] origInputs, Cuda.Stream stream)
origInputs
- 要压缩的缓冲区stream
- 要使用的 CUDA 流protected abstract long batchedCompressGetTempSize(long batchSize, long maxChunkSize)
batchSize
- 批次中的块数maxChunkSize
- 未压缩块的最大大小(字节)protected abstract void batchedCompressAsync(long devInPtrs, long devInSizes, long chunkSize, long batchSize, long tempPtr, long tempSize, long devOutPtrs, long compressedSizesOutPtr, long stream)
devInPtrs
- 未压缩缓冲区地址向量的设备地址devInSizes
- 未压缩缓冲区大小向量的设备地址chunkSize
- 未压缩块的最大大小(字节)batchSize
- 批次中的块数tempPtr
- 临时工作区缓冲区的设备地址tempSize
- 临时工作区缓冲区的大小(字节)devOutPtrs
- 输出缓冲区地址向量的设备地址compressedSizesOutPtr
- 用于写入相应输出缓冲区中压缩数据大小的设备地址。必须指向一个缓冲区,该缓冲区每批次输出缓冲区至少有 8 字节内存。stream
- 要使用的 CUDA 流版权所有 © 2025。保留所有权利。