summaryrefslogtreecommitdiffstats
path: root/copy_experiments/Makefile
Commit message (Collapse)AuthorAge
* Don't assume that nvcc is available on PATH by defaultJoshua Bakita2025-05-14
| | | | | This change better aligns gpu-microbench with the assumptions of the cuda_scheduling_examiner Makefile.
* Add gl_copies benchmark and make targetJoshua Bakita2024-02-26
| | | | | | | => Uploads a large texture to the GPU on every frame => Requires the freeglut library (freeglut3-dev on Ubuntu) => Due to special requirements, not built by default => Written for Anderson and Bakita RTAS'24 paper
* Allow custom nvcc location when running make + ignore gdb historyJoshua Bakita2023-10-25
| | | | | To specify a custom path to nvcc when building: `make NVCC=/my/path/to/nvcc`
* Add a "clean" target to the MakefilesJoshua Bakita2023-07-05
|
* Add mon_cross_ctx_copies benchmark and make targetJoshua Bakita2023-06-13
| | | | | | | | | | | | | | | | Benchmark supports: => Generating parallel copies from CPU to GPU in seperate process => Granular timestamping of when each portion of the copy completes => Monitoring of copy process from either CPU or GPU => Tested on platforms including the GV100 and GV11B Formerly known as diff_ctx_diff_stream. *** Warning *** * The current implementation requires some hardcoded parameters * (such as the number of monitoring threads on the GPU) to be * updated and recompiled when switching test platform. ***
* Add constant_cycles_kernel benchmark + header split and MakefileJoshua Bakita2023-06-09
| | | | | | | | | | Benchmark supports: => Looping on the GPU for a specified number of iterations => Looping infinitely on the GPU => Logging the sum time (ns and ms) for all iterations to complete Also splits `testbench.h` out of `copy_testbench.h` for use in other benchmarks.
* Add copy_contender benchmark, Makefile, and copy_testbench headerJoshua Bakita2023-06-09
Benchmark supports: => Generating a chain of copies in a single context - No timing pause between copies => Copies to, from, or between device(s) => Variable size and number of copies => Logging how many milliseconds each copy takes *** Warning *** * Relies on implicit synchronization of unidirectional copies across * streams. Verify that this is still the case with CUDA before * trusting results. One can check by verifying that the runtime for * one iteration roughly matches the time for each iteration in a * multi-iteration run. ***