GitPedia
uiuc-hpc

uiuc-hpc/Recorder

Comprehensive Parallel I/O Tracing and Analysis

16 Releases
Latest: 1y ago
Recorder 3.0.0v3.0.0Latest
wangvsawangvsa·1y ago·December 27, 2024
GitHub

📋 Changes

  • Automatic Tracing Code Generation: Introduced a new tracing mechanism that employs a three-phase generic tracing wrapper for each function of interest. These tracing wrappers can be generated automatically and compiled as plugins, making it extremely easy to extend support for additional functions and I/O libraries. Added support for nearly all functions of PnetCDF and NetCDF.
  • Supporting Diverse Programs: Extend Recorder to trace a wide range of program types, including single-threaded, multi-threaded, MPI, non-MPI programs, and CUDA kernels. Recorder also captures rich metadata, such as thread IDs and function call depth, offering a deeper insight into the traced data. These features enable the tracing and analysis of I/O operations across a broader range of HPC scenarios.
  • Pattern-Recognition-Based Compression: Implemented a compression algorithm based on pattern recognition, capable of identifying and compressing recurring code patterns and common I/O patterns. This algorithm also includes an inter-process compression stage, effectively reducing redundancy across processes.
Recorder 2.5.1v2.5.1
wangvsawangvsa·1y ago·August 2, 2024
GitHub

Update reader code to make it compatible with older traces

Recorder 2.5.0v2.5.0
wangvsawangvsa·1y ago·August 2, 2024
GitHub

1. Updated documents 2. Several bug fixes 3. Fixed compile issues on more HPC systems 4. Changed default tracing layers: all I/O layers will be traced by default. MPI layer is disabled by default

Recorder 2.4.0v2.4.0
wangvsawangvsa·3y ago·April 4, 2023
GitHub
Recorder 2.3.3v2.3.3
wangvsawangvsa·3y ago·January 23, 2023
GitHub
Recorder 2.3.2v2.3.2
wangvsawangvsa·4y ago·January 19, 2022
GitHub
Recorder 2.3.1v2.3.1
wangvsawangvsa·4y ago·November 30, 2021
GitHub
Recorder 2.3.0v2.3.0
wangvsawangvsa·4y ago·October 19, 2021
GitHub

1. Now we switched to a new compression algorithm and thus a new tracing format. 2. Changed CMAKE system. 3. Developed two format converters.

Recorder 2.2.1v2.2.1
wangvsawangvsa·4y ago·August 25, 2021
GitHub

1. Included a tool for checking I/O synchronization. It supports both MPI-IO semantics and POSIX semantics. 2. Fixed a few bugs.

Recorder 2.2.0v2.2.0
wangvsawangvsa·5y ago·January 25, 2021
GitHub
Recorder 2.1.6v2.1.6
wangvsawangvsa·5y ago·November 5, 2020
GitHub
Recorder 2.1.5v2.1.5
wangvsawangvsa·5y ago·August 27, 2020
GitHub
Recorder 2.1.4v2.1.4
wangvsawangvsa·5y ago·August 26, 2020
GitHub
Recorder 2.1.3v2.1.3
wangvsawangvsa·5y ago·August 26, 2020
GitHub
Recorder 2.1.2v2.1.2
wangvsawangvsa·5y ago·August 7, 2020
GitHub
Recorder 2.0v2.0
wangvsawangvsa·6y ago·July 19, 2019
GitHub

Basically re-write the code. 1. Add the binary format output. 2. Implement a converter that can output OTF2 trace format. 3. Write a separate log unit to provide an uniform logging interface. Re-write most of the code to use this new log unit. 4. Ignore files (e.g. /sockets) that are not used the application itself. 5. Add a built-in hashmap to support mappings from function name and filename to integers. 6. Put all function (that we plan to intercept) signatures in the same header file