Palun selgita seda lähemalt. Kuidas installida ja kuidas kontrollida linuxi arvutis, et töötab? ROCm on AMD-i avatud lähtekoodiga tarkvarapakk GPU-dega üldotstarbeliseks arvutamiseks (GPGPU), masinõppeks ja HPC-ks; see sisaldab draivereid, kompilaatorit, teeke (HIP, BLAS, RCCL jne) ja tööriistu, et kasutada AMD GPU-d sarnaselt sellele, kuidas CUDA kasutatakse NVIDIA kaartidel. ROCm toetab nüüd hästi kaasaegseid Instinct ja Radeon RDNA/Vega kaarte ning on suunatud just AI‑ ja ML‑koormuste kiirendamiseks.[^1][^2][^3][^4] ## Mis on ROCm? - ROCm on tarkvarakiht, mis ulatub kernelidraiverist kuni kasutaja taseme teekide ja programmimismudeliteni (HIP, OpenMP, OpenCL), et GPU‑d kasutada üldotstarbeliseks arvutuseks.[^3][^1] - See on enamasti avatud lähtekoodiga platvorm, mille eesmärk on pakkuda sarnast ökosüsteemi nagu CUDA, kuid AMD riistvarale.[^2][^1] ## Eeldused Pop!_OS 24.04 ja muu Linuxi jaoks - Vajalik on sobiv AMD GPU (nt uuemad GCN5, RDNA, RDNA2/3/4; Instinct MI‑seeria), vastasel juhul ROCm ei tuvasta kaarti või funktsionaalsus on piiratud.[^4][^1] - ROCm ametlik tugi on dokumenteeritud Ubuntu 22.04/24.04‑le, kuid Pop!_OS 24.04 (Noble‑baasil) saab tavaliselt sama repo kaudu tööle; mõnikord on vaja piisavalt värsket Mesa versiooni (vähemalt 24.2 mõnedel juhtudel).[^5][^6][^7] ## ROCm paigaldamine Pop!_OS 24.04 (bash) Näidiskäskude mõte on: lisada AMD ROCm APT repo, uuendada ja installida baas‑paketid (vajadusel kohanda versiooninumbrit 6.2 → 6.3+, kui AMD docs seda näitab).[^6][^7][^5] ```bash # 1. Lisa AMD ROCm GPG võti sudo mkdir -p /etc/apt/keyrings wget https://repo.radeon.com/rocm/rocm.gpg.key -O - | \ gpg --dearmor | sudo tee /etc/apt/keyrings/rocm.gpg > /dev/null # 2. Lisa ROCm APT repositoorium (näiteks ROCm 6.2 noble jaoks) echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rocm.gpg] \ https://repo.radeon.com/rocm/apt/6.2 noble main" | \ sudo tee /etc/apt/sources.list.d/rocm.list # 3. Soovi korral sea kõrgem prioriteet ROCm repo pakettidele printf "Package: *\nPin: origin repo.radeon.com\nPin-Priority: 600\n" | \ sudo tee /etc/apt/preferences.d/rocm # 4. Uuenda paketiloend sudo apt update # 5. Paigalda ROCm põhiplokk sudo apt install rocm # (Alternatiiv: konkreetne versioon, nt rocm-6.2.4) # sudo apt install rocm-6.2.4 ``` Kui kasutad muud distro varianti (Ubuntu 22.04/24.04, Debian jne), kasuta vastava versiooni repo‑rida AMD ROCm ametlikust dokumentatsioonist.[^8][^7][^5] ## Keskkonnamuutujad ja PATH Pärast paigaldust soovitatakse lisada ROCm tööriistad PATH‑i ja LD_LIBRARY_PATH‑i, eriti kui kasutad mitut versiooni.[^9][^8] ```bash # Lisa ~/.bashrc või ~/.zshrc lõppu echo 'export ROCM_PATH=/opt/rocm' >> ~/.bashrc echo 'export PATH=$ROCM_PATH/bin:$ROCM_PATH/llvm/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=$ROCM_PATH/lib:$ROCM_PATH/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc # Lae shell uuesti source ~/.bashrc ``` ## Kuidas kontrollida, et ROCm töötab? AMD dokumentatsiooni järgi kasutatakse kontrolliks eelkõige `rocminfo`, `clinfo` ja `amd-smi`.[^10][^11] ```bash # 1. Kontrolli, et paketid on paigaldatud apt list --installed | grep rocm # 2. Põhidiagnostika GPU ja ROCm kohta /opt/rocm/bin/rocminfo | grep -i "Marketing Name:" # 3. OpenCL info (kui clinfo on paigaldatud) sudo apt install clinfo clinfo | grep -i "Board name" # 4. AMD GPU seisund, temperatuur, mälu, draiver /opt/rocm/bin/amd-smi ``` - Kui `rocminfo` väljundis näed oma GPU nime ja “Agent” infot, siis ROCm tuvastab kaardi korrektselt.[^11][^10] - Kui `amd-smi` näitab kaarti, mälu ja draiveri versiooni ning ei kuvata tõsiseid vigu, on draiverid ja ROCm baasiosa enamasti korras.[^10][^11] ## Lühike Python/HIP kontroll (valikuline) Kui soovid kiiresti kontrollida, kas HIP/PyTorch ROCm töötab, võid installida vastava raamteegi (nt PyTorch ROCm‑i jaoks vastav `pip` või `conda` rat AMD juhendist) ja teha lihtsa testi. Näide PyTorchiga (eeldab, et ROCm‑iga ühilduv PyTorch on juba paigaldatud):[^2][^4] ```python import torch print("ROCm/CUDA nähtav:", torch.cuda.is_available()) print("GPU arv:", torch.cuda.device_count()) if torch.cuda.is_available(): print("GPU nimi:", torch.cuda.get_device_name(0)) x = torch.randn(1000, 1000, device="cuda") y = torch.matmul(x, x) print("Matmul OK, kuju:", y.shape) ``` Kui see programm näitab, et GPU on saadaval ja arvutused töötavad, on ROCm koos vastava ML‑raamistikuga funktsionaalne. [^12][^13][^14][^15][^16][^17][^18][^19][^20]