mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2026-10-28 19:53:22 +00:00
Correct spelling of recipes once and for all
This commit is contained in:
1 parent
09fb52f3d4
commit
1d64d39e01
90 files changed
+1593
-505
No files matched your search
@@ -0,0 +1,164 @@
|
||||
# NVidia GPU
|
||||
|
||||
!!! warning
|
||||
This is not a complete recipe - it's a component of the [cryptominer](/recipes/cryptominer/) "_uber-recipe_", but has been split into its own page to reduce complexity.
|
||||
|
||||
## Ingredients
|
||||
|
||||
1. [Nvidia drivers](http://www.nvidia.com/Download/driverResults.aspx/104284/en-us) for your GPU
|
||||
2. Some form of X11 GUI preconfigured on your linux host (yes, it's a PITA, but it's necessary for overclocking)
|
||||
|
||||
## Preparation
|
||||
|
||||
### Install kernel-devel and gcc
|
||||
|
||||
The nVidia drivers will need the kernel development packages for your OS installed, as well as gcc. Run the following (for CentOS - there will be an Ubuntu equivalent):
|
||||
|
||||
```yum install kernel-devel-$(uname -r) gcc```
|
||||
|
||||
### Remove nouveau
|
||||
|
||||
Your host probably already includes nouveau, free/libre drivers for Nvidia graphics card. These won't cut it for mining, so blacklist them to avoid conflict with the dirty, proprietary Nvidia drivers:
|
||||
|
||||
```
|
||||
echo 'blacklist nouveau' >> /etc/modprobe.d/blacklist.conf
|
||||
dracut /boot/initramfs-$(uname -r).img $(uname -r) --force
|
||||
systemctl disable gdm
|
||||
reboot
|
||||
```
|
||||
|
||||
### Install Nvidia drivers
|
||||
|
||||
Download and uncompress the [Nvidia drivers](http://www.nvidia.com/Download/driverResults.aspx/104284/en-us), and execute the installation as root, with a command something like this:
|
||||
|
||||
```bash NVIDIA-Linux-x86_64-352.30.run```
|
||||
|
||||
Update your X11 config by running:
|
||||
|
||||
```
|
||||
nvidia-xconfig
|
||||
```
|
||||
|
||||
### Enable GUID
|
||||
|
||||
```
|
||||
systemctl enable gdm
|
||||
ln -s '/usr/lib/systemd/system/gdm.service' '/etc/systemd/system/display-manager.service'
|
||||
reboot
|
||||
```
|
||||
|
||||
## Overclock
|
||||
|
||||
### Preparation
|
||||
|
||||
!!! warning
|
||||
Like overclocking itself, this process is still a work in progress. YMMV.
|
||||
|
||||
Of course, you want to squeeze the optimal performance out of your GPU. This is where the X11 environment is required - to adjust GPU clock/memory settings, you need to use the ```nvidia-settings``` command, which (_stupidly_) **requires** an X11 display, even if you're just using the command line.
|
||||
|
||||
The following command: configures X11 for a "fake" screen so that X11 will run, even on a headless machine managed by SSH only, and ensures that the PCI bus ID of every NVidia device is added to the xorg.conf file (to avoid errors about "_(EE) no screens found(EE)_")
|
||||
|
||||
```
|
||||
nvidia-xconfig -a --allow-empty-initial-configuration --cool-bits=28 --use-display-device="DFP-0" --connected-monitor="DFP-0" --enable-all-gpus --separate-x-screens
|
||||
```
|
||||
|
||||
!!! note
|
||||
The script below was taken from https://github.com/Cyclenerd/ethereum_nvidia_miner
|
||||
|
||||
Make a directory for your overclocking script. Mine happens to be /root/overclock/, but use whatever you like.
|
||||
|
||||
Create settings.conf as follows:
|
||||
|
||||
```
|
||||
# Known to work with Nvidia 1080ti, but probably not optimal. It's an eternal work-in-progress.
|
||||
MY_WATT="200"
|
||||
MY_CLOCK="100"
|
||||
MY_MEM="400"
|
||||
MY_FAN="60"
|
||||
```
|
||||
|
||||
Then create nvidia-overclock.sh as follows:
|
||||
|
||||
```
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#
|
||||
# nvidia-overclock.sh
|
||||
# Author: Nils Knieling - https://github.com/Cyclenerd/ethereum_nvidia_miner
|
||||
#
|
||||
# Overclocking with nvidia-settings
|
||||
#
|
||||
|
||||
# Load global settings settings.conf
|
||||
if ! source ~/overclock/settings.conf; then
|
||||
echo "FAILURE: Can not load global settings 'settings.conf'"
|
||||
exit 9
|
||||
fi
|
||||
|
||||
export DISPLAY=:0
|
||||
|
||||
# Graphics card 1 to 6
|
||||
for MY_DEVICE in {0..5}
|
||||
do
|
||||
# Check if card exists
|
||||
if nvidia-smi -i $MY_DEVICE >> /dev/null 2>&1; then
|
||||
nvidia-settings -a "[gpu:$MY_DEVICE]/GPUPowerMizerMode=1"
|
||||
# Fan speed
|
||||
nvidia-settings -a "[gpu:$MY_DEVICE]/GPUFanControlState=1"
|
||||
nvidia-settings -a "[fan:$MY_DEVICE]/GPUTargetFanSpeed=$MY_FAN"
|
||||
# Graphics clock
|
||||
nvidia-settings -a "[gpu:$MY_DEVICE]/GPUGraphicsClockOffset[3]=$MY_CLOCK"
|
||||
# Memory clock
|
||||
nvidia-settings -a "[gpu:$MY_DEVICE]/GPUMemoryTransferRateOffset[3]=$MY_MEM"
|
||||
# Set watt/powerlimit. This is also set in miner.sh at autostart.
|
||||
sudo nvidia-smi -i "$MY_DEVICE" -pl "$MY_WATT"
|
||||
fi
|
||||
done
|
||||
|
||||
echo
|
||||
echo "Done"
|
||||
echo
|
||||
```
|
||||
|
||||
### Start your engine!
|
||||
|
||||
**Once** you've got X11 running correctly, execute ,/nvidia-overclock.sh, and you should see something like the following:
|
||||
|
||||
```
|
||||
[root@kvm overclock]# ./nvidia-overclock.sh
|
||||
Attribute 'GPUPowerMizerMode' (kvm.funkypenguin.co.nz:0[gpu:0]) assigned value 1.
|
||||
Attribute 'GPUFanControlState' (kvm.funkypenguin.co.nz:0[gpu:0]) assigned value 1.
|
||||
Attribute 'GPUTargetFanSpeed' (kvm.funkypenguin.co.nz:0[fan:0]) assigned value 60.
|
||||
Attribute 'GPUGraphicsClockOffset' (kvm.funkypenguin.co.nz:0[gpu:0]) assigned value 100.
|
||||
Attribute 'GPUMemoryTransferRateOffset' (kvm.funkypenguin.co.nz:0[gpu:0]) assigned value 400.
|
||||
|
||||
Power limit for GPU 00000000:04:00.0 was set to 150.00 W from 150.00 W.
|
||||
All done.
|
||||
|
||||
Done
|
||||
|
||||
[root@kvm overclock]#
|
||||
```
|
||||
|
||||
Play with changing your settings.conf file until you break it, and then go back one revision :)
|
||||
|
||||
## Continue your adventure
|
||||
|
||||
Now, continue to the next stage of your grand mining adventure:
|
||||
|
||||
1. Build your [mining rig](/recipes/cryptominer/mining-rig/) 💻
|
||||
2. Setup your [AMD](/recipes/cryptominer/amd-gpu/) or Nvidia (_this page_) GPUs 🎨
|
||||
3. Sign up for [mining pools](/recipes/cryptominer/mining-pool/) :swimmer:
|
||||
4. Setup your miners with [Miner Hotel](/recipes/cryptominer/minerhotel/) 🏨
|
||||
5. Send your coins to [exchanges](/recipes/cryptominer/exchange/) or [wallets](/recipes/cryptominer/wallet/) 💹
|
||||
6. [Monitor](/recipes/cryptominer/monitor/) your empire :heartbeat:
|
||||
7. [Profit](/recipes/cryptominer/profit/)! 💰
|
||||
|
||||
|
||||
## Chef's Notes
|
||||
|
||||
### Tip your waiter (donate) 👏
|
||||
|
||||
Did you receive excellent service? Want to make your waiter happy? (_..and support development of current and future recipes!_) See the [support](/support/) page for (_free or paid)_ ways to say thank you! 👏
|
||||
|
||||
### Your comments? 💬
|
||||
Reference in new issue
Block a user