Ultimas do CanalQb

Ubuntu -- Procedimento para Instalar ROCm 5.1.1 funciona no Pop!_OS 22.04 também

@CanalQb


Ubuntu -- Procedimento para Instalar ROCm 5.1.1 funciona no Pop!_OS 22.04 também



CanalQb



Sempre crie uma frase de segurança única para jogos, Airdrops e qualquer outra coisa de origem desconhecida, em vez de usar sua carteira principal.




1. Preparação do Ambiente

   
Abrir o Terminal Ctrl + Alt + T ou se via remoto pode fazer com putty, considere gedit como nano.

Crie um diretório para organizar os arquivos de instalação:

mkdir ~/ROCm && cd ~/ROCm
sudo apt update
sudo apt install binutils

sudo apt install ii

 

Configure as pastas dos modulos no path do linux

nano ~/.bashrc

Cole na primeira linha do bashrc:

export PATH=$PATH:/home/qb/.local/bin

Execute
source ~/.bashrc

2. Instalar amdgpu-install

Instale dos modulos:
sudo apt install libstdc++5   
sudo apt update && sudo apt install build-essential
sudo apt install clinfo
sudo apt install mesa-opencl-icd

Atualize os repositórios e baixe o pacote .deb para o amdgpu-install:

sudo apt update -y

Se Linux Focal, veja com o comando lsb_release -a

wget https://repo.radeon.com/amdgpu-install/22.20.1/ubuntu/focal/amdgpu-install_22.20.50201-1_all.deb
sudo apt-get install ./amdgpu-install_22.20.50201-1_all.deb

sudo mv ./amdgpu-install_22.20.50201-1_all.deb /tmp/
sudo apt-get install /tmp/amdgpu-install_22.20.50201-1_all.deb

# Garantir permissões no arquivo .deb
sudo chmod 755 /tmp/amdgpu-install_22.20.50201-1_all.deb

# Forçar a reinstalação do pacote
sudo dpkg --install --force-all /tmp/amdgpu-install_22.20.50201-1_all.deb

Se for Jammy troque o arquivo pelo
https://repo.radeon.com/amdgpu-install/22.20.1/ubuntu/jammy/amdgpu-install_22.20.50201-1_all.deb
 

# Adicionar variáveis de ambiente ao .bashrc
echo 'export PATH=/opt/rocm/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/opt/rocm/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

# Reiniciar o sistema para aplicar todas as alterações
sudo reboot 
 

Abra o arquivo script amdgpu-install para edição:

sudo gedit /usr/bin/amdgpu-install


Encontre a linha com `ubuntu` e adicione `|pop` ao final, resultando em algo como:

ubuntu|pop


Encontre a função 'debian_build_package_list' e substitua-a por:

function debian_build_package_list() { echo 'empty function'; }


Salve e feche o editor.

3. Instalar Python 3.9


Adicionar Repositório e Instalar Python 3.9

sudo add-apt-repository --yes ppa:deadsnakes/ppa
sudo apt-get update
sudo apt install --yes python3.9
sudo apt install python3-pip
Eu uso 3 versões do python nesta maquina, então preciso deixar padrão qualquer um maior que python 3.9

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.10 3

sudo update-alternatives --config python



4. Configurar Repositórios ROCm

   
Adicione o repositório para ROCm 5.1.1:

echo 'deb [arch=amd64] https://repo.radeon.com/rocm/apt/5.1.1 ubuntu main' | sudo tee /etc/apt/sources.list.d/rocm.list
sudo apt update

Baixar e Editar Pacotes

sudo ln -s /usr/bin/python3.8 /usr/bin/python 

Baixe e edite o pacote rocm-llvm5.1.1:

apt download rocm-llvm5.1.1
ar x rocm-llvm5.1.1 aperte TAB
tar xf control.tar.xz
gedit control

Altere a linha `Depends` no arquivo control para:

Depends: python3, libc6, libstdc++6|libstdc++8, libstdc++-5-dev|libstdc++-7-dev|libstdc++-10-dev, libgcc-5-dev|libgcc-7-dev|libgcc-10-dev, rocm-core5.1.1


Em seguida, repacote e instale:

tar c postinst prerm control | xz -c > control.tar.xz
ar rcs rocm-llvm5.1.1_14.0.0.22114.50101-48_amd64.deb debian-binary control.tar.xz data.tar.xz
sudo apt install libstdc++-10-dev libgcc-10-dev rocm-core5.1.1
sudo dpkg -i rocm-llvm5.1.1_14.0.0.22114.50101-48_amd64.deb

Crie um diretório para o pacote openmp-extras:

mkdir openmp && cd openmp

Baixe e edite o pacote openmp-extras5.1.1:

apt download openmp-extras5.1.1
ar x openmp-extras5.1.1_13.51.0.50101-48_amd64.deb
tar xf control.tar.xz
gedit control


 
Altere a linha `Depends` da mesma forma que o pacote anterior e depois repacote e instale:

tar c control | xz -c > control.tar.xz
ar rcs openmp-extras5.1.1_13.51.0.50101-48_amd64.deb debian-binary control.tar.xz data.tar.xz
sudo apt install rocm-device-libs5.1.1
sudo dpkg -i openmp-extras5.1.1_13.51.0.50101-48_amd64.deb

5. Instalar o ROCm

   
Instale o ROCm com os casos de uso desejados:

sudo amdgpu-install --rocmrelease=5.1.1 --usecase=rocm,hip --no-dkms

Adicione seu usuário aos grupos render e video:

sudo usermod -a -G render $LOGNAME
sudo usermod -a -G video $LOGNAME

Reinicie o computador para aplicar as alterações.

Após reiniciar, verifique se o ROCm está carregado:

rocminfo


6. Configuração do PyTorch

   
Instale o PyTorch NVidia com suporte para ROCm:

pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/rocm5.1.1

ou AMD

pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/rocm5.2

 


Ele baixa tudo, então se prepare, demora um pouco...

Execute o Python e verifique se a GPU está disponível:

import torch
torch.cuda.is_available()
torch.cuda.get_device_name(torch.cuda.current_device())

7. Limpeza

   
Depois de verificar que tudo está funcionando, você pode remover o diretório de trabalho criado:

rm -rf ~/ROCm

Este procedimento detalha a instalação e configuração do ROCm 5.1.1. Certifique-se de seguir todos os passos para garantir que o ambiente esteja corretamente configurado para utilizar o ROCm com PyTorch.

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/libstdc++-7-dev_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libstdc++-7-dev_7.5.0-6ubuntu2_amd64.deb


wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/gcc-7-base_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./gcc-7-base_7.5.0-6ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/libgcc-7-dev_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libgcc-7-dev_7.5.0-6ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/libasan4_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libasan4_7.5.0-6ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/libubsan0_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libubsan0_7.5.0-6ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-7/libcilkrts5_7.5.0-6ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libcilkrts5_7.5.0-6ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-8/libmpx2_8.4.0-3ubuntu2_amd64.deb
sudo dpkg --install --force-all ./libmpx2_8.4.0-3ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-8/gcc-8-base_8.4.0-3ubuntu2_amd64.deb
sudo dpkg --install --force-all ./gcc-8-base_8.4.0-3ubuntu2_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-defaults/gcc-multilib_11.2.0-1ubuntu1_amd64.deb
sudo dpkg --install --force-all ./gcc-multilib_11.2.0-1ubuntu1_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-11/gcc-11-multilib_11.2.0-19ubuntu1_amd64.deb
sudo dpkg --install --force-all ./gcc-11-multilib_11.2.0-19ubuntu1_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-11/gcc-11-base_11.2.0-19ubuntu1_amd64.deb
sudo dpkg --install --force-all ./gcc-11-base_11.2.0-19ubuntu1_amd64.deb

wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-defaults/g++-multilib_11.2.0-1ubuntu1_amd64.deb


wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-11/gcc-11-base_11.2.0-19ubuntu1_amd64.deb
sudo dpkg --install --force-all ./g++-multilib_11.2.0-1ubuntu1_amd64.deb

https://pkgs.org/search/?q=rocminfo

sudo ln -sf /usr/bin/python3.10 /usr/bin/python
sudo ln -sf /usr/bin/pip3 /usr/bin/pip




Nenhum comentário

Comente só assim vamos crescer juntos!

Observação: somente um membro deste blog pode postar um comentário.