diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 7 |
1 files changed, 4 insertions, 3 deletions
| @@ -17,7 +17,7 @@ Please cite this paper in any work which leverages our library. Here's the BibTe | |||
| 17 | } | 17 | } |
| 18 | ``` | 18 | ``` |
| 19 | 19 | ||
| 20 | Please see [the paper](https://www.cs.unc.edu/~jbakita/rtas23.pdf) and libsmctrl.h for details and examples of how to use this library. | 20 | Please see [the paper](https://www.cs.unc.edu/~jbakita/rtas23.pdf) and `libsmctrl.h` for details and examples of how to use this library. |
| 21 | We strongly encourage consulting those resources first; the below comments serve merely as an appendum. | 21 | We strongly encourage consulting those resources first; the below comments serve merely as an appendum. |
| 22 | 22 | ||
| 23 | ## Run-time Dependencies | 23 | ## Run-time Dependencies |
| @@ -104,6 +104,7 @@ make tests | |||
| 104 | - Only relevant on GPUs with over 128 TPCs, such as the RTX 6000 Ada | 104 | - Only relevant on GPUs with over 128 TPCs, such as the RTX 6000 Ada |
| 105 | - Untested on H100 (compute capability 9.0) | 105 | - Untested on H100 (compute capability 9.0) |
| 106 | - Untested on non-Jetson `aarch64` platforms | 106 | - Untested on non-Jetson `aarch64` platforms |
| 107 | - Untested on CUDA 11.8, 12.0, and 12.1 on Jetson `aarch64` | ||
| 107 | 108 | ||
| 108 | ## Important Limitations | 109 | ## Important Limitations |
| 109 | 110 | ||
| @@ -113,7 +114,7 @@ make tests | |||
| 113 | 2. No aspect of this system prevents implicit synchronization on the GPU. | 114 | 2. No aspect of this system prevents implicit synchronization on the GPU. |
| 114 | See prior work, particularly that of Amert et al. (perhaps the CUPiD^RT paper), for ways to avoid this. | 115 | See prior work, particularly that of Amert et al. (perhaps the CUPiD^RT paper), for ways to avoid this. |
| 115 | 116 | ||
| 116 | ## Porting to New Architectures | 117 | ## Porting Stream Masking to Newer CUDA Versions |
| 117 | 118 | ||
| 118 | Build the tests with `make tests`. And then run the following: | 119 | Build the tests with `make tests`. And then run the following: |
| 119 | ``` | 120 | ``` |
| @@ -124,7 +125,7 @@ How this works: | |||
| 124 | 125 | ||
| 125 | 1. If `MASK_OFF` is set, `libsmctrl` applies this as a byte offset to a base address for the location | 126 | 1. If `MASK_OFF` is set, `libsmctrl` applies this as a byte offset to a base address for the location |
| 126 | of the SM mask fields in CUDA's stream data structure. | 127 | of the SM mask fields in CUDA's stream data structure. |
| 127 | - That base address is the one for CUDA 12.2 at time of writing | 128 | - That base address is the one for CUDA 12.2 at time of writing. |
| 128 | 2. The stream masking test is run. | 129 | 2. The stream masking test is run. |
| 129 | 3. If the test succeeded (returned zero) the loop aborts, otherwise it increments the offset to attempt and repeats. | 130 | 3. If the test succeeded (returned zero) the loop aborts, otherwise it increments the offset to attempt and repeats. |
| 130 | 131 | ||
