Complete Technical Guide: Flashing CMP 170HX & Unlocking 64 GB HBM2e on Ubuntu 22.04 LTS

Kompletní technický průvodce: flashování CMP 170HX a odemčení 64 GB HBM2e na Ubuntu 22.04 LTS

# 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.
Zpět na blog