Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/srvm/cupti_profiler
CUPTI GPU Profiler
https://github.com/srvm/cupti_profiler
Last synced: 2 months ago
JSON representation
CUPTI GPU Profiler
- Host: GitHub
- URL: https://github.com/srvm/cupti_profiler
- Owner: srvm
- License: mit
- Created: 2014-10-02T20:10:01.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2019-02-26T00:48:05.000Z (almost 6 years ago)
- Last Synced: 2024-08-04T02:09:50.691Z (6 months ago)
- Language: C++
- Size: 40 KB
- Stars: 36
- Watchers: 4
- Forks: 10
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- AwesomeCppGameDev - cupti_profiler
README
# CUDA Profiling Library
This library provides an API for collecting CUDA profiling metrics and events
from within a CUDA application. Programmers specify what metrics and events
they want, and start the profiler before calling one or more CUDA kernels. The library
sets up the appropriate CUPTI callbacks, calculates the number of
kernel passes required, gathers values for the specified
metrics and events, and returns them to the programmer on a per-kernel basis.**Example Usage:**
``` c++
vector event_names {
"active_warps",
"gst_inst_32bit",
"active_cycles"
};
vector metric_names {
"flop_count_dp",
"flop_count_sp",
"inst_executed"
};cupti_profiler::profiler profiler(event_names, metric_names);
// Get #passes required to compute all metrics and events
const int passes = profiler.get_passes();profiler.start();
for(int i=0; i