<feed xmlns='http://www.w3.org/2005/Atom'>
<title>libsmctrl.git/.gitignore, branch master</title>
<subtitle>Library to enable intra-context SM/TPC partitioning on NVIDIA GPUs</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/libsmctrl.git/'/>
<entry>
<title>Add test that higher-granularity masks override lower-granularity ones</title>
<updated>2024-02-14T20:36:25+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>jbakita@cs.unc.edu</email>
</author>
<published>2024-02-14T20:36:25+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/libsmctrl.git/commit/?id=b5281f5fc01fc925898c9323edab41b817df8661'/>
<id>b5281f5fc01fc925898c9323edab41b817df8661</id>
<content type='text'>
Stream-level masks should always override globally-set masks.
Next-kernel masks should always override both stream-level masks
and globally-set masks.

Tests reveal an issue with the next-kernel mask not overriding the
stream mask on CUDA 11.0+. CUDA appears to apply the per-stream
mask to the QMD/TMD after `launchCallback()` is triggered, making
it impossible to override as currently implemented.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Stream-level masks should always override globally-set masks.
Next-kernel masks should always override both stream-level masks
and globally-set masks.

Tests reveal an issue with the next-kernel mask not overriding the
stream mask on CUDA 11.0+. CUDA appears to apply the per-stream
mask to the QMD/TMD after `launchCallback()` is triggered, making
it impossible to override as currently implemented.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a README and tests for stream masking and next masking</title>
<updated>2023-11-29T23:24:25+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-11-29T23:00:31+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/libsmctrl.git/commit/?id=8062646a185baa6d3934d1e19743ac671e943fa8'/>
<id>8062646a185baa6d3934d1e19743ac671e943fa8</id>
<content type='text'>
Also rewrite the global masking test to be much more thorough.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also rewrite the global masking test to be much more thorough.
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduce pysmctrl: A python interface to libsmctrl</title>
<updated>2023-03-16T06:18:35+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-03-16T06:18:35+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/libsmctrl.git/commit/?id=9ed721de0e9ce564b7c852e38359398b019a5c2f'/>
<id>9ed721de0e9ce564b7c852e38359398b019a5c2f</id>
<content type='text'>
Initially supports the GPU information functions via:
- pysmctrl.get_gpc_info(dev_id)
- pysmctrl.get_tpc_info(dev_id)
- pysmctrl.get_tpc_info_cuda(cuda_dev_id)
All functions are extensively documented. See pysmctrl/__init__.py
for details.

Device partitioning functions have yet to be mapped into Python, as
these will require more testing.

As part of this:
- libsmctrl_get_*_info() functions have been modified to consistently
  return positive error codes.
- libsmctrl_get_tpc_info() now uses nvdebug-style device numbering and
  uses libsmctrl_get_gpc_info() under the covers. This should be more
  reliable.
- libsmctrl_get_tpc_info_cuda() has been introduced as an improved
  version of the old libsmctrl_get_tpc_info() function. This continues
  to use CUDA-style device numbering, but is now resiliant to CUDA
  failures.
- Various minor style improvements in libsmctrl.c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Initially supports the GPU information functions via:
- pysmctrl.get_gpc_info(dev_id)
- pysmctrl.get_tpc_info(dev_id)
- pysmctrl.get_tpc_info_cuda(cuda_dev_id)
All functions are extensively documented. See pysmctrl/__init__.py
for details.

Device partitioning functions have yet to be mapped into Python, as
these will require more testing.

As part of this:
- libsmctrl_get_*_info() functions have been modified to consistently
  return positive error codes.
- libsmctrl_get_tpc_info() now uses nvdebug-style device numbering and
  uses libsmctrl_get_gpc_info() under the covers. This should be more
  reliable.
- libsmctrl_get_tpc_info_cuda() has been introduced as an improved
  version of the old libsmctrl_get_tpc_info() function. This continues
  to use CUDA-style device numbering, but is now resiliant to CUDA
  failures.
- Various minor style improvements in libsmctrl.c
</pre>
</div>
</content>
</entry>
<entry>
<title>Initial reimplementation of libsmctrl as a library</title>
<updated>2023-03-03T03:14:22+00:00</updated>
<author>
<name>Joshua Bakita</name>
<email>bakitajoshua@gmail.com</email>
</author>
<published>2023-03-03T03:14:22+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/libsmctrl.git/commit/?id=7db0d3088a6e25c7c64999a20267f55751571dee'/>
<id>7db0d3088a6e25c7c64999a20267f55751571dee</id>
<content type='text'>
- Tested working with cuda_scheduling_examiner
- Supports everything described in the accepted RTAS'23 paper
- Can be used as either a shared or staticly-linked library
- Documented in libsmctrl.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Tested working with cuda_scheduling_examiner
- Supports everything described in the accepted RTAS'23 paper
- Can be used as either a shared or staticly-linked library
- Documented in libsmctrl.h
</pre>
</div>
</content>
</entry>
</feed>
