Skip to content

Instantly share code, notes, and snippets.

View csullivan's full-sized avatar

Chris Sullivan csullivan

  • NVIDIA
  • Portland
View GitHub Profile
@csullivan
csullivan / LU_decomp.ipynb
Last active October 29, 2017 00:57
Examples of LU decomposition using gaussian elimination and cholesky factorization.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@csullivan
csullivan / discretization_example.ipynb
Last active November 25, 2017 04:50
Examples of various eigenvalue decomposition techniques for the Sturm-Liouville PDE (Power Method, Inverse Power Method, QR iteration, etc.)
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@csullivan
csullivan / passthrough_notes.md
Last active May 14, 2024 12:12
QEMU/KVM GPU passthrough on 18.04 LTS notes

For blacklisting an Nvidia GTX1070 gpu on Ubuntu 18.04 with Intel integrated graphics for the host

Blacklist the nvidia driver:

sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf" 
sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"

/etc/default/grub:

[{"name":"Function_1","ops":[{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_9972","op":"Parameter","outputs":["Parameter_9972_0"],"shape":[1024,30]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_9967","op":"Parameter","outputs":["Parameter_9967_0"],"shape":[2000]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_9966","op":"Parameter","outputs":["Parameter_9966_0"],"shape":[2000,200]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7694","op":"Parameter","outputs":["Parameter_7694_0"],"shape":[800]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7693","op":"Parameter","outputs":["Parameter_7693_0"],"shape":[800,200]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7686","op":"Parameter","outputs":["Parameter_7686_0"],"shape":[800]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7685","op":"Parameter","outputs":["Parameter_7685_0"],"shape":[800,20
[{"name":"Function_7","ops":[{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30611","op":"Parameter","outputs":["Parameter_30611_0"],"shape":[1024,200]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30612","op":"Parameter","outputs":["Parameter_30612_0"],"shape":[1024,200]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30613","op":"Parameter","outputs":["Parameter_30613_0"],"shape":[]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30614","op":"Parameter","outputs":["Parameter_30614_0"],"shape":[1024,200]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30615","op":"Parameter","outputs":["Parameter_30615_0"],"shape":[]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30616","op":"Parameter","outputs":["Parameter_30616_0"],"shape":[1024,200]},{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_30617","op":"Parameter","outputs":["Parameter_30617
[{"name":"Function_2","ops":[{"cacheable":false,"element_type":"float","inputs":[],"name":"Parameter_9972","op":"Parameter","outputs":["Parameter_9972_0"],"shape":[1024,30]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_9967","op":"Parameter","outputs":["Parameter_9967_0"],"shape":[2000]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_9966","op":"Parameter","outputs":["Parameter_9966_0"],"shape":[2000,200]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7694","op":"Parameter","outputs":["Parameter_7694_0"],"shape":[800]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7693","op":"Parameter","outputs":["Parameter_7693_0"],"shape":[800,200]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7686","op":"Parameter","outputs":["Parameter_7686_0"],"shape":[800]},{"cacheable":true,"element_type":"float","inputs":[],"name":"Parameter_7685","op":"Parameter","outputs":["Parameter_7685_0"],"shape":[800,20
chrissul@nervana-titanxp22 /localdisk/sullivan/projects $ sudo apt install clinfo
chrissul@nervana-titanxp22 /localdisk/sullivan/projects $ sudo apt install clinfo
[sudo] password for chrissul:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libnvidia-container-tools libnvidia-container1 nvidia-container-runtime nvidia-container-runtime-hook pigz
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
chrissul@nervana-titanxp22 /localdisk/sullivan/projects $ nvidia-smi
Wed Aug 8 08:34:41 2018
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 396.26 Driver Version: 396.26 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 TITAN Xp Off | 00000000:06:00.0 Off | N/A |
| 23% 28C P8 17W / 250W | 588MiB / 12196MiB | 0% Default |
[ RUN ] gpu_fusion.fuse_lstm_cells
[DEBUG] 2018-08-27T20:46:02z graph_rewrite.cpp 35 Running matcher Unnamed(Divide_77) on Parameter_109
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 276 [MATCHER] Starting match pattern = Divide_77 , graph_node = Parameter_109
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 150 [MATCHER] in match_node : pattern = Divide_77 matched Parameter_109
[DEBUG] 2018-08-27T20:46:02z graph_rewrite.cpp 35 Running matcher Unnamed(Multiply_107) on Parameter_109
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 276 [MATCHER] Starting match pattern = Multiply_107 , graph_node = Parameter_109
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 150 [MATCHER] in match_node : pattern = Multiply_107 matched Parameter_109
[DEBUG] 2018-08-27T20:46:02z graph_rewrite.cpp 35 Running matcher Unnamed(Divide_77) on Parameter_110
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 276 [MATCHER] Starting match pattern = Divide_77 , graph_node = Parameter_110
[DEBUG] 2018-08-27T20:46:02z matcher.cpp 150 [MATCHER] in match_node : pattern = Divid