| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Benchmark supports:
=> Spinning on-GPU until some number of preemptions have occured
=> Monitoring GPU scheduling by logging preempt and resume times
=> Logging the above as raw GPU, or converted CPU, times
=> Measuring launch overheads
Also imports task_host_utilities.cu from cuda_scheduling_examiner
as of commit 9fc0ca898ef64b82cbc3734c60405723650bc66f. This is
needed for timing logic used in both preemption_logger and
mon_cross_ctx_copies, thus the latter would not compile prior to
this commit.
Also adds a new testbench helper, and a .gitignore for binaries.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
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.
***
|