/NVCOMP_CompressionBenchmarks

A repository consisting of data and charts gathered through NVCOMP for my UTwente thesis.

Primary LanguageC++GNU General Public License v3.0GPL-3.0

📄 NVCOMP_CompressionBenchmarks

This repository is used as data storage for all data gathered throuhgot my final university project. The research project performed in 2022 at the University of Twente in the Netherlands, follows to develop an analytical model that can be used to estimate the performance of compressors on the GPU. Moreover, the main research question analyzes the difference between the CPU-based decompression and the possible improvements followed by GPU decompression

The full thesis can be read by accessing the following URL: Enabling faster processing of big-data through GPU decompression

💻 Testing setup

The table below lists the hardware used to gather data. Furthermore, details about the DAS-6 system can be found here DAS-6 :like:

UvA Showcees DAS-6
CPU Intel Xeon Gold 6148 AMD EPYC-2 7402P
AMD EPYC-2 7282
GPU* NVIDIA GTX 1080Ti NVIDIA RTX A4000
NVIDIA RTX A5000
NVIDIA RTX A6000
GPU NVIDIA A100
RAM** 400GB 128 GB
OS Cent OS 7 Rocky Linux 8

Quick results:

Best Algorithms using the Analytical Model

Data Compression Decompression Ratio
Bool ANS ZLIB FastLZMA
Float Cascaded Cascaded FastLZMA
Integer Bitcomp Cascaded FastLZMA
String Bitcomp ANS ANS

Compression Ratio

Compression Ratio results

Compression Throughput (GB/s)

Compression Throughput

Decompression Throughput (GB/s)

Decompression Throughput

Furthermore, our analysis has analyzed and indirectly proved that chunk sizes have a high impact on the performance of GPU compression/decompression. Our results show that the lower the chunk size, the higher the throughput while the ratio usually takes a hit.

Chunk size performance