<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpu-microbench.git/testbench.h, branch master</title>
<subtitle>Lightweight, hyper-accurate microbenchmarks and measurement tools for GPU scheduling examination.</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/'/>
<entry>
<title>Split SAFE() macro into API-specific typed variants</title>
<updated>2024-02-20T01:39:39+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2024-02-20T01:39:39+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=cd9ee070e2fcaa49fe35944ea0fd60ed5d197ba2'/>
<id>cd9ee070e2fcaa49fe35944ea0fd60ed5d197ba2</id>
<content type='text'>
Avoids incorrectly interpreting CUDA Driver Library error codes as
though they were CUDA Runtime Library error codes (the numbering is
similar, but not identical).

Also cleans up how we initialize and terminate a context for
capability checking in `mon_cross_ctx_copies`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoids incorrectly interpreting CUDA Driver Library error codes as
though they were CUDA Runtime Library error codes (the numbering is
similar, but not identical).

Also cleans up how we initialize and terminate a context for
capability checking in `mon_cross_ctx_copies`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add preemption_logger benchmark, make target, and fix d82c60c</title>
<updated>2023-07-06T15:45:59+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-07-06T15:45:59+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=e415e282be53a3d8264b67d22b4b15b518f71099'/>
<id>e415e282be53a3d8264b67d22b4b15b518f71099</id>
<content type='text'>
Benchmark supports:
=&gt; Spinning on-GPU until some number of preemptions have occured
=&gt; Monitoring GPU scheduling by logging preempt and resume times
=&gt; Logging the above as raw GPU, or converted CPU, times
=&gt; 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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Benchmark supports:
=&gt; Spinning on-GPU until some number of preemptions have occured
=&gt; Monitoring GPU scheduling by logging preempt and resume times
=&gt; Logging the above as raw GPU, or converted CPU, times
=&gt; 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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add constant_cycles_kernel benchmark + header split and Makefile</title>
<updated>2023-06-09T23:38:01+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-06-09T23:38:01+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=5ba80e14efb595688a3dc3d49c212bc393840513'/>
<id>5ba80e14efb595688a3dc3d49c212bc393840513</id>
<content type='text'>
Benchmark supports:
=&gt; Looping on the GPU for a specified number of iterations
=&gt; Looping infinitely on the GPU
=&gt; 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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Benchmark supports:
=&gt; Looping on the GPU for a specified number of iterations
=&gt; Looping infinitely on the GPU
=&gt; 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.
</pre>
</div>
</content>
</entry>
</feed>
