<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpu-microbench.git/copy_experiments/Makefile, 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>Don't assume that nvcc is available on PATH by default</title>
<updated>2025-05-14T04:45:14+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>jbakita@cs.unc.edu</email>
</author>
<published>2025-05-14T04:45:14+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=0acdbe85fc1bd10160f27df847507f3e9a82f743'/>
<id>0acdbe85fc1bd10160f27df847507f3e9a82f743</id>
<content type='text'>
This change better aligns gpu-microbench with the assumptions of
the cuda_scheduling_examiner Makefile.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change better aligns gpu-microbench with the assumptions of
the cuda_scheduling_examiner Makefile.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add gl_copies benchmark and make target</title>
<updated>2024-02-27T01:33:25+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>jbakita@cs.unc.edu</email>
</author>
<published>2024-02-27T01:33:25+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=d1576765658fc866bed806cbde969d39cc6a8dd8'/>
<id>d1576765658fc866bed806cbde969d39cc6a8dd8</id>
<content type='text'>
=&gt; Uploads a large texture to the GPU on every frame
=&gt; Requires the freeglut library (freeglut3-dev on Ubuntu)
=&gt; Due to special requirements, not built by default
=&gt; Written for Anderson and Bakita RTAS'24 paper
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
=&gt; Uploads a large texture to the GPU on every frame
=&gt; Requires the freeglut library (freeglut3-dev on Ubuntu)
=&gt; Due to special requirements, not built by default
=&gt; Written for Anderson and Bakita RTAS'24 paper
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow custom nvcc location when running make + ignore gdb history</title>
<updated>2023-10-25T13:50:48+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-10-25T13:50:48+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=a1418db164af92d350234dfe6846884562c9e227'/>
<id>a1418db164af92d350234dfe6846884562c9e227</id>
<content type='text'>
To specify a custom path to nvcc when building:
`make NVCC=/my/path/to/nvcc`
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To specify a custom path to nvcc when building:
`make NVCC=/my/path/to/nvcc`
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a "clean" target to the Makefiles</title>
<updated>2023-07-05T20:49:03+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-07-05T20:49:03+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=b587ea88f62a207a18b6efa56025bc307e06d5ae'/>
<id>b587ea88f62a207a18b6efa56025bc307e06d5ae</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add mon_cross_ctx_copies benchmark and make target</title>
<updated>2023-06-13T12:24:26+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-06-13T12:24:26+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=d82c60cbfb35697b1dbd579eccc35e0d7902e453'/>
<id>d82c60cbfb35697b1dbd579eccc35e0d7902e453</id>
<content type='text'>
Benchmark supports:
=&gt; Generating parallel copies from CPU to GPU in seperate process
=&gt; Granular timestamping of when each portion of the copy completes
=&gt; Monitoring of copy process from either CPU or GPU
=&gt; 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.
***
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Benchmark supports:
=&gt; Generating parallel copies from CPU to GPU in seperate process
=&gt; Granular timestamping of when each portion of the copy completes
=&gt; Monitoring of copy process from either CPU or GPU
=&gt; 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.
***
</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>
<entry>
<title>Add copy_contender benchmark, Makefile, and copy_testbench header</title>
<updated>2023-06-09T22:55:07+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-06-09T22:55:07+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/gpu-microbench.git/commit/?id=e63404cfda97050b9d516232ceb4f918f48edcfc'/>
<id>e63404cfda97050b9d516232ceb4f918f48edcfc</id>
<content type='text'>
Benchmark supports:
=&gt; Generating a chain of copies in a single context
    - No timing pause between copies
=&gt; Copies to, from, or between device(s)
=&gt; Variable size and number of copies
=&gt; 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.
***
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Benchmark supports:
=&gt; Generating a chain of copies in a single context
    - No timing pause between copies
=&gt; Copies to, from, or between device(s)
=&gt; Variable size and number of copies
=&gt; 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.
***
</pre>
</div>
</content>
</entry>
</feed>
