mirror of
https://github.com/mbilker/vgpu_unlock-rs.git
synced 2025-06-08 13:28:23 +02:00
Add README.md
This commit is contained in:
parent
e121e65859
commit
87df1c35e5
57
README.md
Normal file
57
README.md
Normal file
@ -0,0 +1,57 @@
|
||||
# Rust-based vgpu\_unlock
|
||||
|
||||
Unlock vGPU functionality for consumer-grade NVIDIA GPUs.
|
||||
|
||||
**This tool is to be used with the kernel patches from the main
|
||||
[`vgpu_unlock`](https://github.com/DualCoder/vgpu_unlock) repository!**
|
||||
|
||||
## Dependencies
|
||||
|
||||
* This tool requires Rust. You can install it via your package manager or via
|
||||
[](https://rustup.rs).
|
||||
* Rust requires a linker to be installed to be able to create the shared
|
||||
library. Typically, this is installed with the C compiler through your
|
||||
distribution's package manager.
|
||||
* The dependencies from the main `vgpu_unlock` project excluding Python and
|
||||
`frida`.
|
||||
|
||||
## Installation
|
||||
|
||||
In the following instructions `<path_to_vgpu_unlock_rs>` needs to be replaced
|
||||
with the path to this repository on the target system.
|
||||
|
||||
Install the NVIDIA vGPU driver and kernel driver patches as detailed in the
|
||||
main `vgpu_unlock` project README. Ignore the steps regarding editing the
|
||||
systemd service unit files.
|
||||
|
||||
Run `cargo build --release` to compile the shared library.
|
||||
|
||||
Create the directories `/etc/systemd/system/nvidia-vgpud.service.d` and
|
||||
`/etc/systemd/system/nvidia-vgpu-mgr.service.d`.
|
||||
|
||||
Create the files `/etc/systemd/system/nvidia-vgpud.service.d/vgpu_unlock.conf`
|
||||
and `/etc/systemd/system/nvidia-vgpu-mgr.service.d/vgpu_unlock.conf`
|
||||
with the following:
|
||||
```
|
||||
[Service]
|
||||
Environment=LD_PRELOAD=<path_to_vgpu_unlock_rs>/target/release/libvgpu_unlock_rs.so
|
||||
```
|
||||
|
||||
Create the directory `/etc/vgpu_unlock` which will house the vGPU profile
|
||||
override configuration file.
|
||||
|
||||
Create the file `/etc/vgpu_unlock/profile_override.toml` with the profile
|
||||
fields that are to be overridden. The following is an example that sets
|
||||
the number of heads to 1, sets the framebuffer to be 1920x1080 (1920 * 1080
|
||||
= 2073600 pixels), enables CUDA, and disables the frame-rate limiter.
|
||||
|
||||
```toml
|
||||
num_displays = 1
|
||||
display_width = 1920
|
||||
display_height = 1080
|
||||
max_pixels = 2073600
|
||||
cuda_enabled = 1
|
||||
frl_enabled = 0
|
||||
```
|
||||
|
||||
Happy hacking!
|
Loading…
x
Reference in New Issue
Block a user