Skip to content

Commit 5bdbaab

Browse files
authored
Update README.md
1 parent ff24f9f commit 5bdbaab

1 file changed

Lines changed: 31 additions & 7 deletions

File tree

README.md

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,61 @@
11
# GPUZIP
22

3-
GPUZIP is a library designed to enhance checkpointing on GPUs by combining data compression and prefetching techniques. It leverages the Revolve checkpoint algorithm and GPU-based data compression to optimize memory utilization and improve computation-to-communication ratios.
3+
GPUZIP is a library designed to enhance checkpointing on GPUs by combining data compression and prefetching techniques. It leverages the Revolve checkpoint algorithm and GPU-based data compression to optimize memory utilization and enhance the computation-to-communication ratio.
44

55
Supported compressors: [NVIDIA Bitcomp](https://developer.nvidia.com/nvcomp), [cuSZp](https://dl.acm.org/doi/10.1145/3581784.3607048), and [cuZFP](https://zfp.readthedocs.io/en/release1.0.1/execution.html#using-cuda).
66

77

88
## Tutorials & Documentation
99
- [C++/CUDA Examples](docs/CppCudaExamples.md) - Information of how to include GPUZIP on your C++/CUDA project and how to call its API.
10-
- [Installing cuZFP](docs/InstallingCuZFP.md) - A brief information of how to install cuZFP on the machine to be used by GPUZIP (NVCOMP bitcomp and cuSZp does not need to be manually installed.)
10+
- [Installing cuZFP](docs/InstallingCuZFP.md) - A brief information on how to install cuZFP on the machine to be used by GPUZIP (NVCOMP bitcomp and cuSZp do not need to be manually installed.)
1111
- [GPUZIPy - Python Package](docs/PythonExamples.md) - How to install and use GPUZIPy, a Python wrapper for GPUZIP (Compressor only).
12-
- [Paper (EuroPAR'2024)](https://doi.org/10.1007/978-3-031-69583-4_12)
12+
- [Conference Paper (GPUZIP 1.0.0) (EuroPAR'2024)](https://doi.org/10.1007/978-3-031-69583-4_12)
13+
- [Article (GPUZIP 2.0.0) (IJHPCA)](https://doi.org/10.1177/10943420251340794)
14+
- [Repro Data & Dataset Input Data](https://doi.org/10.25824/redu/KJ9KVA)
1315

1416
## This Repository Structure
1517
```
1618
- `src/` - Contains the source code for GPUZIP, including the core compression and prefetching algorithms.
17-
- `src/Prefetch` - Prefetching matters -- it can be used independent from `Compressor`.
19+
- `src/Prefetch` - Prefetching matters -- it can be used independently from `Compressor`.
1820
- `src/Prefetch/include` - The folder should be included in your project
19-
- `src/Compressor` - Compression matters -- it can be used independent from `Prefetch`.
21+
- `src/Compressor` - Compression matters -- it can be used independently from `Prefetch`.
2022
- `src/Compressor/include` - The folder should be included in your project
2123
- `GPUZIPy/` - Resources for the Python wrapper.
2224
- `docs/` - The documentation for this project.
2325
```
2426

2527
## Version
2628
- [1.0.0](https://github.com/LSC-Unicamp/GPUZIP/tree/1.0.0%2Beuropar24) - Presented at EuroPar 2024.
27-
- [2.0.0](https://github.com/LSC-Unicamp/GPUZIP/tree/2.0.0%2Bunpublished) - Latest version, still unpublished, under review.
29+
- [2.0.0](https://github.com/LSC-Unicamp/GPUZIP/tree/2.0.0%2Bijhpca) - Latest version, published with IJHPCA article (Published in 2025).
2830

2931
## Cite
3032

33+
### GPUZIP v2.0.0 (Preferable)
34+
35+
> Maltempi T, Rigo S, Pereira M, et al. Checkpointing fine-tuning for accelerating seismic applications in GPUs. The International Journal of High Performance Computing Applications. 2025;0(0). doi:10.1177/10943420251340794
36+
37+
```text
38+
@article{gpuzip2,
39+
author = {Thiago Maltempi and Sandro Rigo and Marcio Pereira and Hervé Yviquel and Gustavo Leite and Orlando Lee and Jessé Costa and Guido Araujo},
40+
title ={Checkpointing fine-tuning for accelerating seismic applications in GPUs},
41+
journal = {The International Journal of High Performance Computing Applications},
42+
volume = {0},
43+
number = {0},
44+
pages = {10943420251340794},
45+
year = {0},
46+
doi = {10.1177/10943420251340794},
47+
URL = {https://doi.org/10.1177/10943420251340794},
48+
eprint = {https://doi.org/10.1177/10943420251340794},
49+
abstract = { High-performance computing (HPC) systems are essential to handle computationally intensive tasks in fields such as physics, climate modeling, and seismic analysis. Reverse Time Migration (RTM), a widely used seismic imaging technique for oil reservoir exploration, exemplifies these challenges, requiring vast amounts of memory and extended computation times. RTM relies on checkpointing to store data during forward wave propagation for reuse in the backward phase. However, traditional checkpoint methods are constrained by costly host-GPU data transfers, which limits performance. GPUZIP v2.0 addresses these bottlenecks with several enhancements over its predecessor: (1) A GPU Checkpoint Cache with a least recently used (LRU) policy enables flexible checkpoint storage configurations and efficient prefetching; (2) A redesigned prefetch algorithm further increases cache hit ratios; and (3) The integration of three distinct checkpointing algorithms provides adaptability for diverse application profiles. These advancements allow fine-tuning of RTM and similar applications, significantly improving performance. The experimental results show that GPUZIP v2.0 achieves speedups of up to 5.12×, surpassing the 3.9× achieved by its previous version. GPUZIP v2.0 provides an effective solution for accelerating memory-intensive HPC applications by reducing data transfer overhead and offering customized checkpoint strategies. GPUZIP is publicly available via GitHub. }
50+
}a
51+
```
52+
53+
54+
### GPUZIP v1.0.0
3155
> Thiago Maltempi, Sandro Rigo, Marcio Pereira, Hervé Yviquel, Jessé Costa, and Guido Araujo. 2024. Combining Compression and Prefetching to Improve Checkpointing for Inverse Seismic Problems in GPUs. In Euro-Par 2024: Parallel Processing: 30th European Conference on Parallel and Distributed Processing, Madrid, Spain, August 26–30, 2024, Proceedings, Part III. Springer-Verlag, Berlin, Heidelberg, 167–181. https://doi.org/10.1007/978-3-031-69583-4_12
3256
3357
```text
34-
@inproceedings{10.1007/978-3-031-69583-4_12,
58+
@inproceedings{gpuzip1,
3559
author = {Maltempi, Thiago and Rigo, Sandro and Pereira, Marcio and Yviquel, Herv\'{e} and Costa, Jess\'{e} and Araujo, Guido},
3660
title = {Combining Compression and Prefetching to Improve Checkpointing for Inverse Seismic Problems in GPUs},
3761
year = {2024},

0 commit comments

Comments
 (0)