Supported data formats by nvcomp
wjh1913703465 opened this issue · 3 comments
Hello, I have a query regarding the data formats supported by the nvcomp library. While reviewing the documentation, I noticed that all compression algorithms are listed as supporting strings and integers, but there is no mention of support for float16 (__half) data type. I am interested in utilizing the nvcomp library for float16 data. Could you kindly recommend a suitable algorithm for this purpose?
Hi! The compressors in nvCOMP just receive bytes as input, so most of the compressors are ambivalent about what data is being compressed. The Bitcomp, Cascaded, and LZ4 compressors do have a data type option, (-t short
in the benchmark programs, or NVCOMP_TYPE_SHORT
from C++, to specify 16-bit), because they have some behaviour that can be affected by the size of the input data type, but even those won't reject the input data if it's __half
data instead of int16_t
data. They see the two as the same, since they're both 16-bit data types.
I'd recommend trying Bitcomp and Gdeflate first for floating-point data, though it's always safest to try benchmarking multiple algorithms, depending on whether you want to maximize compression throughput, decompression throughput, or compression ratio. Cascaded probably won't do well on floating-point data unless the integer representations happen to be in a limited range.
This issue has been labeled inactive-30d
due to no recent activity in the past 30 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed. This issue will be labeled inactive-90d
if there is no activity in the next 60 days.
This issue has been labeled inactive-90d
due to no recent activity in the past 90 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed.