- Inleiding
-
Intelligent Growth Solutions
Intelligent Growth Services
Intelligent Green Solutions
Om te kunnen minen heb je meer rekencapaciteit nodig dan dat de CPU van je computer (meer info over de PC hier) kan leveren. Een extra grafische kaart is de oplossing. Deze PC heeft al een on board Intel video chip dus de grafische kaart kan 100% worden gebruikt voor het minen.
- Cuda vs OpenCL
- Cuda en OpenCL zijn beiden programmeer omgevingen die er voor zorgen dat je GPU algemene taken parallel kan uitvoeren. Cuda is echter speciaal ontwikkeld door Nvidia voor zijn eigen kaarten terwijl OpenCL open-source software is voor vrijwel alle kaarten inclusief Nvidia. Als je een Nvidia kaart hebt om te minen dan wil je Cuda gebruiken in plaats van OpenCL omdat Cuda betere prestaties geeft. Het mining programma ethminer kan met beiden omgaan dus in mijn geval wil ik met Cuda werken en niet met OpenCL.
- Slots
PCI (5 volt): 1 stuk 4.2 in full height 6.6 in lengte 25 W maximum power
PCI Express x1 (2.0): 2 stuks 4.2 in full height 6.6 in lengte 10 W maximum power
PCI Express x16 (3.0 - Primary): 1 stuk 4.2 in full height 6.6 in lengte 725 W maximum power. Oeps: Dit blijkt dus niet waar. De voedingsunit levert slechts 325 Watt en daar moet alles mee gebeuren in deze PC. Dit probleem heeft ook een oplossing.
7 PCIe x1 vs PCI Express x16
- Videokaart
- Videokaart toevoegen
- Schakel de PC uit.
- Steek de video kaart in de PC. Het is verstandig om het zijpaneel blijvend te verwijderen in verband met de gewenste koeling. De videokaart heeft niet voor niets 2 ventilatoren en ik wil hem flink aan het werk zetten. Het moederboard heeft slechts 1 slot waar de videokaart in past dus dat kan niet fout. Volgens de specificaties levert deze sleuf ruim voldoende vermogen (725 Watt) om de videokaart te kunnen voeden. Oeps: gelijk het eerste serieuze probleem. De grafische kaart is te groot en past niet in de PC. De koeling van de CPU zit in de weg. De oplossing: een riser cable bestellen en er tussen monteren.
- Het lijkt wel of een hogere macht mij wil behoeden om te gaan minen. Na de installatie van de grafische kaart met riser herkent Ubuntu de grafische kaart en schakelt direct over naar de nieuwe kaart. Helaas want ik wil eigenlijk dat hij bij de originele on board video chip blijft, maar ja. En de enige aansluiting die zowel op de kaart als op mijn monitor zit is HDMI. Dus eerst maar een HDMI-HDMI kabel uit de tv gerobt.
- Dat geeft een erg beperkt beeld, namelijk slechts 1 regel op de monitor die zegt: Sluit een voedingskabel aan op de grafische kaart. Hieruit blijkt dat mijn riser werkt en mijn grafische kaart ook, dat is leuk. Maar dan blijkt het moederboard daar geen aansluitingen voor te hebben en de voedingsunit ook niet. En dat is niet leuk. Oftewel: een extra voedingsunit kopen blijkt noodzakelijk. Wel slim van de grafische kaart dat hij met een beperkte voeding tegen mij zegt dat hij een zwaardere voeding nodig heeft. Dat dan weer wel.
- Kortom voeding aangeschaft en niet van el Cheapo want ik wil nu dat het in 1 keer werkt. Blijkt dat er een complete kabelset wordt meegeleverd met de voeding. Dat is leuk. Kortom grafische kaart met passend kabeltje op de PSU aangesloten. Stekker in het stopcontact. Reboot en... niets. Nou ja de fans op de grafische kaart draaien maar verder geen reactie. Alles uit. Eerste nadere onderzoek leert mij dat ik in ieder geval een onjuist aansluitkabeltje heb gebruikt. Dat kabeltje blijkt te zijn bedoeld voor de CPU. Nu dus maar een PCIe kabeltje gebruikt. Stekker in het stopcontact. Reboot en... niets. Nou ja de fans op de grafische kaart draaien maar verder geen reactie. Alles uit. Tweede nadere onderzoek leert mij dat dit een probleem met de voeding is. De voeding lijkt geen spanning te leveren. Of ik heb de ingang van de voeding op de grafische kaart gesloopt met het verkeerde kabeltje. Oeps dat zou niet best zijn. Afijn eerst maar zoeken op internet. Daar vind ik een filmpje van Corsair. Je moet met een paperclip aan de gang.
- Verschillende grafische testen
- nvidia-settings
Dit commando geeft een window met alle mogelijke informatie over de Nvidia grafische kaart.
- Het zou niet nodig moeten zijn om aparte drivers te installeren omdat deze al met Cuda worden geïnstalleerd. Installeer dus niet direct de standaard NVIDIA drivers. Deze drivers bieden OpenCL support en dat willen we juist niet want wij willen Cuda.
- nvidia-smi -q zou info moeten geven voor een Nvidia kaart
- glxinfo | grep "Device" zou info moeten geven voor een Intel GPU
- Voor de installatie: vraagt om installatie van sudo apt install mesa-utils. Vervolgens is het antwoord: Mesa DRI Intel(R) HD Graphics 2500 (IVB GT1) (0x152)
- Na de installatie: Niets
- nvcc --version Test video kaart
- glxinfo | egrep -i "device|memory" zou info moeten geven voor een Intel GPU
- Voor de installatie: zou info moeten geven voor een Intel GPU. Vervolgens krijg je
Device: Mesa DRI Intel(R) HD Graphics 2500 (IVB GT1) (0x152)
Video memory: 1536MB
Unified memory: yes
- Na de installatie:
GLX_NV_multigpu_context, GLX_NV_robustness_video_memory_purge,
GLX_NV_robustness_video_memory_purge, GLX_NV_swap_group,
GLX_NV_multigpu_context, GLX_NV_robustness_video_memory_purge,
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 6144 MB
Total available memory: 6144 MB
Currently available dedicated video memory: 5691 MB
GL_EXT_import_sync_object, GL_EXT_memory_object, GL_EXT_memory_object_fd,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop,
GL_NV_light_max_exponent, GL_NV_memory_attachment,
GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage,
GL_NV_robustness_video_memory_purge, GL_NV_sample_locations,
GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory,
GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program,
GL_EXT_import_sync_object, GL_EXT_memory_object, GL_EXT_memory_object_fd,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop,
GL_NV_light_max_exponent, GL_NV_memory_attachment,
GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage,
GL_NV_robustness_video_memory_purge, GL_NV_sample_locations,
GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory,
GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program,
GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_multi_draw_indirect,
GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader,
- sudo lshw -C display Test video kaart
- Voor de installatie: Dit geeft:
*-display
description: VGA compatible controller
product: Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:28 memory:f7800000-f7bfffff memory:e0000000-efffffff ioport:f000(size=64) memory:c0000-dffff
- Na de installatie:
*-display
description: VGA compatible controller
product: TU116 [GeForce GTX 1660 SUPER]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:33 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:c0000-dffff
*-display
description: Display controller
product: Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm bus_master cap_list
configuration: driver=i915 latency=0
resources: irq:31 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)
- cat /proc/driver/nvidia/version Kijk of er een driver is geïnstalleerd.
- ubuntu-drivers devices Bekijk deze website voor de grafische methode.
- sudo lspci | grep VGA Test video kaart
- Voor de installatie: 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09)
- Na de installatie:
01:00.0 VGA compatible controller: NVIDIA Corporation TU116 [GeForce GTX 1660 SUPER] (rev a1)
Cuda installeren
- Cuda is een toolchain van Nvidia speciaal bedoeld om de rekenpower van hun grafische kaarten optimaal te benutten. Volgens Nvidia zal Cuda de rekenpower van de GPU `dramatisch` opvoeren. Dat is uiteraard wat we willen.
- systemctl status nvidia-persistenced Controleer of deze daemon loopt.
● nvidia-persistenced.service - NVIDIA Persistence Daemon
Loaded: loaded (/lib/systemd/system/nvidia-persistenced.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-05-31 13:48:34 CEST; 48min ago
Process: 933 ExecStart=/usr/bin/nvidia-persistenced --verbose (code=exited, status=0/SUCCESS)
Main PID: 941 (nvidia-persiste)
Tasks: 1 (limit: 4503)
Memory: 1.0M
CGroup: /system.slice/nvidia-persistenced.service
└─941 /usr/bin/nvidia-persistenced --verbose
mei 31 13:48:33 www systemd[1]: Starting NVIDIA Persistence Daemon...
mei 31 13:48:33 www nvidia-persistenced[941]: Verbose syslog connection opened
mei 31 13:48:33 www nvidia-persistenced[941]: Started (941)
mei 31 13:48:33 www nvidia-persistenced[941]: device 0000:01:00.0 - registered
mei 31 13:48:34 www nvidia-persistenced[941]: device 0000:01:00.0 - persistence mode enabled.
mei 31 13:48:34 www nvidia-persistenced[941]: device 0000:01:00.0 - NUMA memory onlined.
mei 31 13:48:34 www nvidia-persistenced[941]: Local RPC services initialized
mei 31 13:48:34 www systemd[1]: Started NVIDIA Persistence Daemon.
- sudo lspci | grep -i nvidia Check correcte GPU voor Cuda. Zou moeten lukken volgens internet. Nvidia lijst wordt slecht bijgehouden.
1:00.0 VGA compatible controller: NVIDIA Corporation TU116 [GeForce GTX 1660 SUPER] (rev a1)
01:00.1 Audio device: NVIDIA Corporation TU116 High Definition Audio Controller (rev a1)
01:00.2 USB controller: NVIDIA Corporation TU116 USB 3.1 Host Controller (rev a1)
01:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU116 [GeForce GTX 1650 SUPER] (rev a1)
richard@www:~$ sudo uname -m && cat /etc/*release
sudo uname -m && cat /etc/*release Check correcte Linux versie. In de Cuda `Toolkit release notes` staan de geschikte versies.
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS"
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
sudo gcc --version Check correcte compiler versie. Minimaal 5.
gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
sudo uname -r Check Linux versie om later de juiste headers te installeren.
5.11.0-38-generic
sudo apt-get install linux-headers-$(uname -r) Installeer kernel headers en ontwikkel pakketten.
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin Zie de Cuda download handleiding.
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600 Verplaats de repository naar de juiste map.
wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda-repo-ubuntu1804-11-3-local_11.3.0-465.19.01-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804-11-3-local_11.3.0-465.19.01-1_amd64.deb Neem de installatie voorschriften op in het systeem.
sudo apt-key add /var/cuda-repo-ubuntu1804-11-3-local/7fa2af80.pub Installeer de controle sleutel.
sudo apt-get update Download alle benodigde software.
sudo apt-get -y install cuda Installeer alle software.
export PATH=/usr/local/cuda-11.5/bin${PATH:+:${PATH}} Check of dit pad klopt voordat het wordt UITGEVOERD.
systemctl status nvidia-persistenced Controleer of deze daemon loopt. Indien niet voer dan het onderstaande commando.
sudo systemctl enable nvidia-persistenced Start deze daemon.
sudo gedit /lib/udev/rules.d/40-vm-hotadd.rules Edit dit bestand in verband met de baas zijn over het geheugen.
sudo gedit ???? Ik snap wel waarom maar nog niet hoe die edit moet gebeuren.
Xorg monitor instellen On-board GPU voor gewone video output gebruiken.
|