Kompletní technický průvodce: flashování CMP 170HX a odemčení 64 GB HBM2e na Ubuntu 22.04 LTS
Sdílet
# Kompletní technický návod: flashování CMP 170HX & odemčení 64 GB HBM2e na Ubuntu 22.04 LTS
Tento návod popisuje kompletní postup, jak na kartě **NVIDIA CMP 170HX** (architektura GA100, Device ID `10de:20c2` / `10de:20b0`) obejít tovární omezení OTP pomocí nástroje **`CMPUnlocker`**. Obnovíte tím zakázané Streaming Multiprocessory (SM) a odemknete spící geometrii paměti HBM2e (u 8GB modelů až na 64 GB VRAM).
---
## Technické předpoklady & systémové požadavky
Než začnete, ujistěte se, že Váš hostitelský server splňuje tato kritéria:
* **OS:** Ubuntu 22.04 LTS nebo 24.04 LTS (x86_64).
* **Cílový ovladač:** balíček ovladačů NVIDIA Open GPU Kernel Modules (větev v580.x).
* **Systémová oprávnění:** přístup root / `sudo`.
* **Chlazení hardwaru:** nucené proudění vzduchu s vysokým statickým tlakem (ventilátory 4,000+ RPM ve 4U rackovém šasi), aby na pasivních chladičích nedošlo k tepelnému vypnutí.
---
### Krok 1: audit systému a instalace závislostí
Nejprve ověřte, že je karta detekována na sběrnici PCIe, a nainstalujte vývojové prostředí Python 3 a parser YAML, které skript unlockeru vyžaduje.
```bash
# 1. Ověření GA100 / CMP 170HX na sběrnici PCI
lspci -nn | grep -i nvidia
# Výstup by měl ukázat Device ID 10de:20c2 nebo 10de:20b0
# 2. Aktualizace indexů repozitářů a instalace systémových závislostí
sudo apt update && sudo apt install -y \
build-essential \
python3 \
python3-pip \
python3-yaml \
git \
pciutils \
wget
3. Ověření instalace PyYAML
python3 -c "import yaml; print(yaml.__version__)"
Krok 2: instalace open-source jaderných ovladačů NVIDIA (větev 580.x)
CMPUnlocker spoléhá na konkrétní přepisy registrů ve firmwaru NVIDIA GSP (GPU System Processor), který načítá ovladač nvidia-open řady 580.
# 1. Přidání oficiálního PPA Graphics Drivers
sudo add-apt-repository ppa:graphics-drivers/ppa -y
sudo apt update
# 2. Instalace open-kernel ovladače GPU a nástrojů CUDA
sudo apt install -y nvidia-driver-580-open nvidia-utils-580
# 3. Zabránění automatickým aktualizacím, které by rozbily moduly jádra
sudo apt-mark hold nvidia-driver-580-open
4. Ověření přítomnosti firmwaru GSP
ls -la /lib/firmware/nvidia/580.*/gsp_tu10x.bin
Krok 3: záloha továrního firmwaru GSP
Před spuštěním odemykacího patche si vždy vytvořte zálohu nezměněného binárního souboru firmwaru (gsp_tu10x.bin).
# Zjištění přesné cesty k adresáři ovladače
GSP_DIR=$(dirname$(ls /lib/firmware/nvidia/580.*/gsp_tu10x.bin | head -n1))
Vytvoření trvalé zálohy továrního souboru
sudo cp "${GSP_DIR}/gsp_tu10x.bin" "${GSP_DIR}/gsp_tu10x.bin.stock"
echo "Backup saved to ${GSP_DIR}/gsp_tu10x.bin.stock"
Krok 4: naklonování CMPUnlockeru a volba profilu VRAM
Naklonujte zdrojový repozitář a u fyzických 8GB variant nastavte výchozí cílovou geometrii paměti na unlocked_64gb.
# 1. Naklonování repozitáře do lokálního pracovního adresáře
cd /opt
sudo git clone [https://github.com/amoghmunikote/cmpunlocker.git](https://github.com/amoghmunikote/cmpunlocker.git)
cd cmpunlocker
# 2. Kontrola nastavení profilu v konfiguraci constants
# Pro fyzické 8GB karty cílící na 64 GB VRAM:
sudo ./install.sh --profile=8gb
# (Pozn.: u vzácných 10GB revizí cílících na 40 GB/80 GB použijte místo toho --profile=10gb)
Krok 5: proveďte studený restart napájení
Na rozdíl od běžného znovunačtení ovladače vyžaduje první odemčení registru WPR2 a vymazání stavu kondenzátorů SEC2 plný studený start. Při teplém softwarovém restartu odemykací payload napoprvé selže.
# 1. Úplné vypnutí systému
sudo poweroff
Provozní poznámka: Jakmile se server vypne, fyzicky odpojte napájecí kabely na 60 sekund, aby se z kondenzátorů základní desky i desky GPU zcela vybilo pohotovostní napětí. Poté napájení znovu připojte a nabootujte zpět do Ubuntu.
Krok 6: spusťte odemykací pipeline & povolte démona systemd
Protože úpravy registrů samy o sobě hluboké odpojení napájení nepřežijí, sleduje registry služba na pozadí CMPUnlocker, která patch automaticky znovu aplikuje při startu i při znovunačtení ovladače.
cd /opt/cmpunlocker
# 1. Spuštění instalačního skriptu odemčení s právy roota
sudo ./install.sh
# 2. Kontrola stavu služby systemd
sudo systemctl status cmpunlocker.service
# 3. Sledování logů démona pro potvrzení aplikace patche
journalctl -u cmpunlocker -f -n 20
Krok 7: ověřte odemčenou paměť a výpočetní stav
Zadejte dotaz přes nvidia-smi a spusťte krátký inicializační CUDA skript, abyste potvrdili plný výpočetní výkon i rozpoznání VRAM.
# 1. Ověření odstranění limitu taktu SM a hlášení VRAM
nvidia-smi --query-gpu=name,memory.total,clocks.max.sm --format=csv
# Očekávaný výstup:
# name, memory.total [MiB], clocks.max.sm [MHz]
# NVIDIA Graphics Device, 65536 MiB, 1410 MHz
# 2. Spuštění testovacího CUDA skriptu s ctypes v Pythonu
python3 -c "
import ctypes
cuda = ctypes.CDLL('libcuda.so.1')
init_res = cuda.cuInit(0)
print(f'CUDA Init Status: {init_res} (0 = SUCCESS)')
"
Řešení potíží & typy selhání
| Problém / příznak | Pravděpodobná příčina | Náprava |
nvidia-smi stále hlásí 8 GB VRAM |
Nezdařený přepis registru GSP-RM nebo vynechaný studený restart. | Proveďte důsledné 60sekundové fyzické odpojení napájení. Ověřte, že gsp_patch.py během instalace správně aktualizoval sh_size. |
| GPU mizí ze sběrnice PCIe / tepelné omezování výkonu | Nedostatečné proudění vzduchu přes pasivní chladič. | Zajistěte, aby ventilátory šasi s vysokým průtokem hnaly vzduch přímo přes žebra GPU. Proudění vzduchu v běžné stolní skříni nestačí. |
| Pád jádra při velké zátěži LLM | Vada křemíku v odemčeném stacku HBM2e. | Spusťte znovu ./install.sh --profile=40gb (nebo upravte constants.yaml), abyste omezili alokaci VRAM na stabilních 32 GB/40 GB. |