Blender no SteamDeck

Demorou mas saiu: Agora o Blender no SteamDeck pode ser usado para renderizações Cycles! Entenda mais nesta publicação.


| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.


Introdução

Mostramos anteriormente em nosso site – mais especificamente aqui – o quanto o Blender é uma ferramenta poderosa, gratuita e livre para modelagem e renderizações, enquanto também quebra o galho com edição de vídeo.

E já mostramos também aqui o quanto o SteamDeck é um hardware muito interessante. Até a data desta publicação é o melhor na categoria em custo benefício pelo preço praticado e o que ele consegue entregar com sua GPU RDNA2.

Porém conforme enunciamos na publicação do SteamDeck, o Blender não funcionava. Agora funciona!

É possível configurar o SteamDeck para usá-lo para renderização usando o Cycles exclusivamente pela GPU.

1. Atualização Janeiro de 2026

É plenamente possível configurar o Blender no SteamOS e fazê-lo renderizar tanto as engines Cycles quanto a EEVEE utilizando a GPU de maneira dedicada, o que pode tornar o aparelho muito interessante para os mais diversos projetos!

  • Só testei na imagem do Ubuntu 24.04 via Distrobox.
  • Só funciona com o atual Blender 5.0.1. As versões 3.0 e 4.0 não suportam. – Se não me engano a 4.5 suporta também mas precisa testar.
  • Não requer acessos desbloqueio do SteamOS para gravar dados no sistema ou configurar drivers via DKMS.

1.2 Reunindo o material

  • Se possível, troque o armazenamento interno de seu SteamDeck.

Eu saí do NVMe padrão de 64 Gb para um NVMe de 980 Gb! Assim não apenas tenho jogos mas espaço suficiente para os dados dos browsers – tanto Chrome quanto Edge – dados do Thunderbird para quem precisar gerir e-mails, entre outras aplicações. Isso será fundamental já que a configuração completa vai consumir ~40 Gb extras – explicarei melhor abaixo.

  • Conferir se existe o Podman no sistema.

O SteamOS atual possui o Podman direto no sistema; caso não tenha, execute esta sequência de comandos:

$ sudo touch /etc/subuid /etc/subgid
$ sudo usermod –add-subuid 100000-165535 –add-subgid 100000-165535 $USER
$ wget https://github.com/89luca89/podman-launcher/releases/download/v0.0.5/podman-launcher-amd64 -O $HOME/.local/bin

O SteamOS atual também possui o distrobox direto no sistema; caso não tenha, execute esta sequência de comandos:

$ mkdir ~/.local/distrobox/
$ curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s — –prefix ~/.local/distrobox/

  • Se você precisou configurar o Podman e o Distrobox manualmente, adicione estas linhas ao final do seu arquivo /home/deck/.bashrc
    Do contrário, ignore essa parte, o sistema já possui os campos e variáveis para isso.

export PATH=$HOME/.local/distrobox/bin:$PATH
export PATH=$HOME/.local/distrobox/podman/bin:$PATH
xhost +si:localuser:$USER

Caso queira adicionar temporariamente, cole estas linhas no terminal sempre que for executar!

1.3 Configurando o Ubuntu 24.04

Vamos utilizar o Ubuntu 24.04 então faça estes comandos:

$ distrobox create –name ubuntu2404 -i ubuntu:24.04
$ distrobox enter ubuntu2404

Uma vez dentro do sistema execute lá dentro:

$ sudo apt update
$ sudo apt install build-essential
$ sudo apt install libnuma-dev
$ sudo apt-get install wget gnupg2

Depois, configure estas variáveis:

sudo usermod -a -G video $LOGNAME
echo ‘ADD_EXTRA_GROUPS=1’ | sudo tee -a /etc/adduser.conf
echo ‘EXTRA_GROUPS=video’ | sudo tee -a /etc/adduser.conf
echo ‘EXTRA_GROUPS=render’ | sudo tee -a /etc/adduser.conf

Acesse esse link: https://repo.radeon.com/amdgpu-install/latest/ubuntu/noble/ e pegue a versão mais recente do amdgpu.
Até a data desta publicação é amdgpu-install_7.1.1.70101-1_all.deb.

Com isso, execute este comando dentro do Ubuntu:
$ wget https://repo.radeon.com/amdgpu-install/latest/ubuntu/noble/amdgpu-install_7.1.1.70101-1_all.deb

Em seguida instale o pacote:

$ sudo apt install ./amdgpu-install_7.1.1.70101-1_all.deb

Ele vai dar erros! Ignore e continue.

$ sudo apt update

E agora instale:

$ sudo amdgpu-install –usecase=rocm,hip –no-dkms

Serão instalados uns 30 Gb de dados! O ROCm completo é bem pesado em disco.

Assim você terá o ROCm® citado abaixo no tópico 3.1, que permite usar HIP pra renderizar no SteamDeck.
Execute, se quiser, adicione ao /home/deck/.basrch

export PATH=$PATH:/opt/rocm/bin:/opt/rocm/rocprofiler/bin:/opt/rocm/opencl/bin

Saia do container, encerre o serviço e volte:

$ exit
$ podman stop ubuntu2404
$ distrobox enter ubuntu2404

Se tudo correu bem, rode este comando:

$ rocminfo

Você verá uma saída com detalhes do driver!
Agora instale mais alguns pacotes extras:

$ sudo apt install rocm-libs hipcub miopen-hip rccl

Serão instalados mais uns 10 Gb de dados de complementos para o ROCm!

E pegue o Blender +5.0, exemplo o blender-5.0.1-linux-x64.tar.xz do site oficial. Baixe como executável empacotado! O repositório do Ubuntu 24.04 tem só o Blender 4.0 e ele não funciona. Baixe aqui a versão mais recente do Blender!
Extraia, a exemplo, até a data desta publicação, é a versão 5.0.1:

$ tar xf blender-5.0.1-linux-x64.tar.xz

Execute:

$ cd blender-5.0.1-linux-x64/
$ ./blender

Se você seguiu tudo até aqui e deu certo, este tutorial acabou!

Abra o menu Edit > Preferences… e vá na aba SYSTEM/Cycles Render Devices… Lá, vá na aba HIP e veja quem é detectado agora! Marque a GPU para usar a GPU, ou marque a APU para usar a APU (GPU + CPU) porém eu não recomendo esse modo porque qualquer renderização vai congelar a interface gráfica. Usando só a GPU, você ainda pode usar o sistema e fazer outras coisas sem precisar preocupar tanto com travamentos na tela, a exemplo, usar um navegador de internet enquanto renderiza.

1.4 Removendo tudo!

Caso queira remover tudo, execute:

$ podman stop ubuntu2404
$ distrobox rm ubuntu2404

Daqui em diante mantive a estrutura do tutorial antigo caso alguém ainda tenha problemas com o SteamOS e queira fazer a configuração em um armazenamento externo em outro sistema!

2. TUTORIAL ANTIGO de 2023!

Antes mesmo de adentrar as profundezas desta publicação eu preciso tirar um parágrafo pra algumas justificativas porque eu tenho certeza que vão me questionar:

Não usei o SteamOS, o sistema padrão original do SteamDeck para isso!

Depois de muito utilizar o aparelho, na minha humilde opinião, os motivos são:

  • Observei que a utilidade do Desktop Mode não foi feito para usar no dia a dia, mas sim, puramente para dar manutenções no cliente Steam, bibliotecas de games, scripts de otimizações/correções, updates de pacotes Flatpak e outros.
  • Minha versão de 64 Gb limita drasticamente o uso para tal proposito: Deixando o sistema original, sem qualquer pacote extra e instalando os games em vários microSD Cards, ainda restaram 15 Gb livres que normalmente serão usados para caches dos games.
  • O SteamOS é engessado na parte que condiz ao sistema: Mesmo instalando os drivers necessários, a cada update de sistema disponibilizado pela Valve você precisará refazer todo o processo.

Para evitar dores de cabeça, apenas peguei um microSD Card de 64 Gb classe A2 – ou seja, altíssima velocidade de I/O aleatório, o que é ideal para sistemas operacionais – e instalei o EndeavourOS.

Cartão De Memória Micro SDXC 64GB EXTREME 170MB - SANDISK - Conecta Informática

O boot é pela firmware no “seletor de boot” segurando “Power + Volume Menos”, não afetando o sistema original do armazenamento interno e, portanto, não afetando os games. Assim o SteamDeck inicializa como um sistema de um computador convencional e terei todo o suporte a tal!

2.1 EndeavourOS

Eu já expliquei aqui o por quê eu optar pelo EndeavourOS já a alguns meses em uso cotidiano e sempre que possível nos testes também. Mas para os fins de executar o Blender no SteamDeck, funcionará bem em qualquer sistema baseado em ArchLinux que você escolher, como o próprio ArchLinux ou Manjaro!

Aqui, com o EndeavourOS, temos:

O que funcionou e o que não funcionou:

  • WiFi: Sim
    Acessos 2.4 Ghz e 5.0 Ghz
  • Bluetooth: Sim
    Busca e conectividade de periféricos.
  • Portas USB: Sim
    Velocidade e reconhecimento.
  • Touchscreen: Sim
    Layout do Touch Input: Retrato
    Requer este script pra funcionar!
  • Multi-telas via USB: Sim
    Tela conectada via HDMI em HUB USB.
  • Teclado Virtual Automático: Depende
    Depende da interface e pacotes extras que você instalou!
  • Status da Bateria: Sim
    Permitindo controle de Modo de Economia e/ou verificar a % restante antes de desligar.
  • Dois toques simultâneos na tela = Clique direito: Não
    Alternativo à utilizar os demais comandos disponíveis.
  • L2/R2 reconhecidos como cliques esquerdo e direito: Sim
    Padrão do SteamOS, se o client Steam inicializar com o sistema!
  • Modo touch integrado: Depende
    Depende da interface e pacotes extras que você instalou!
  • Áudio: Sim
    Com suporte a troca dos dispositivos de saída: Auto falante embutido, fone de ouvido ou HDMI.
  • Aceleração 3D: Sim
    Driver em uso: AMDGPU, com Vulkan e HIP através do ROCm®!

3. Preparo

Primeiro, instale os seguintes pacotes em seu sistema:

$ sudo pacman -S rocm-hip-runtime rocm-opencl-runtime rocminfo opencl-headers opencl-mesa radeontop

Espera, quem é ROCm®?

3.1 ROCm®

O ROCm® (Radeon Open Compute platforM) é um software gratuito e de código aberto (exceto os blobs de firmware de GPU) sendo desenvolvido pela Advanced Micro Devices (AMD) objetivando programação de unidade de processamento gráfico – É uma alternativa à tecnologia CUDA® da NVIDIA.

O ROCm® abrange várias áreas: computação de uso geral em unidades de processamento gráfico (GPGPU), computação de alto desempenho (HPC) e computação heterogênea. Além disso, ele oferece vários modelos de programação: HIP (programação baseada em núcleo de GPU ), OpenMP ou Message Passing Interface (MPI) e OpenCL.

E aí temos uma sigla conhecida, o HIP: O Blender é compatível com essa!

3.2 Configurando a UserSpace

Continuando, você pode fazer a modificação temporária do PATH GLOBAL com:

$ export PATH=$PATH:/opt/rocm/hip/bin

Ou permanentemente, editando o arquivo /etc/profile, adicione a seguinte linha:

append_path ‘/opt/rocm/hip/bin’

Salve e reinicie o sistema. Assim os binários do rocm vão estar acessíveis para as aplicações.

4. Blender

Agora a hora da verdade, abrimos o Blender que em um sistema ArchLinux deve ser o mais novo, até a data desta publicação é o 3.6.0.

Abra o menu Edit > Preferences… e vá na aba SYSTEM/Cycles Render Devices… Lá, vá na aba HIP e veja quem é detectado agora! Marque a GPU para usar a GPU, ou marque a APU para usar a APU.

Mas o que muda?

  • GPU: Fará a renderização executar somente pela GPU do SteamDeck.
    Nesse modo 1 dos 8 núcleos da CPU ficará em 100% para ajudar no gerenciamento, e a renderização poderá executar em segundo plano enquanto outras tarefas menos onerosas para o hardware, como abrir o Google Chrome, ficam fluídas.
  • APU: Nesse modo a renderização utilizará a CPU + GPU, usando tanto a placa de vídeo quanto os 8 núcleos da CPU.
    Nesse modo o sistema pode ficar lento para trabalhos paralelos à renderização mas é o modo de maior desempenho. O consumo de energia também é mais alto.
  • Se em vez da aba HIP marcar NONE, usará apenas a CPU, desligando a GPU.

5. Testes

5.1 NeonCity

Para este teste usei o cenário Neon City, parte de um game que desenvolvi a alguns meses utilizando o Blender e a engine UPBGE.

A referida cena:

A renderização foi ajustada para ser realizada em 2048 samples com resolução padrão 1280×800 pixels e motor de renderização Cycles, que permite renderizações mais realistas com ray tracing ativo por padrão.

5.1.1 CPU

Primeiro o teste padrão, desativando totalmente a aceleração de hardware, deixando NONE na seleção de SYSTEM/Cycles Render Devices. Ao usar o aplicativo radeontop, vemos que o uso da GPU é mínimo. A memória VRAM está calculada junto, já que é compartilhada com a RAM pela BIOS.

Porém a CPU está em 100% em todos os núcleos:

E com o sistema congelando, temos:

Se passaram 5 minutos… com mais 19 minutos restantes… Cancelei e desisti do teste aqui.

5.1.2 GPU

Agora ficou interessante: Ao selecionar a GPU e mandar renderizar temos o alto uso de GPU agora no radeontop.

Nota-se que o consumo de VRAM também está maior que antes.

Já o consumo de CPU:

Bem tranquilo, apenas 1 núcleo 100% e o resto ocioso. E a renderização por fim:

Tudo acabou em 4 minutos e 27 segundos. E fim.

Não é algo absurdamente rápido como seria numa GTX 1050 ou mesmo uma placa da família RTX, porém é escalafobeticamente superior a qualquer placa de vídeo Intel HD Graphics disponíveis para Notebooks ou mesmo Desktops!

5.2 Classroom

A demonstração oficial da Blender Foundation foi nosso alvo da vez. Dessa vez a comparação será contra outra placa vídeo, uma RTX 2060 com 6 Gb de VRAM:

São 300 samples com resolução 1920×1080. Acabou em 1 minuto e 9 segundos.

Já no SteamDeck o mesmo cenário em resolução menor 1280×800:

Acabou em 3 minutos e 53 segundos. Um tempo consideravelmente maior mas dentro do esperado para a aplicação.

Lembrando que tudo depende de quanto foi otimizado o cenário e os efeitos, e quanto será o consumo de RAM – não pode passar de 12 Gb – e o consumo de VRAM – que não pode passar de 4 Gb. Assim você fica tranquilo que a renderização será bem sucedida sem erros de falta de memória de vídeo ou excesso de despejo de SWAP.

O mesmo teste porém somente com a CPU do SteamDeck levou ~9 minutos e esquentou muito mais o aparelho. Usar a GPU é vantajoso em quaisquer aspectos com os drivers ROCm®!

6. Análise Opinativa

A partir deste artigo eu posso dizer que o SteamDeck, dadas as devidas proporções e fazendo os ajustes necessários, pode sim substituir tranquilamente um computador de mesa, um tablet ou mesmo um notebook para funções avançadas e com aceleração de hardware tanto Vulkan quanto HIP para as mais diversas aplicações.

Se o problema for a tela pequena, pode transmitir a imagem a um monitor ou TV externa via USB Type-C > HDMI e fazer todo o processo de modelagem e renderização normalmente com mais conforto, principalmente se usar um teclado e mouse USB em uma Dock.

O fato é que o SteamDeck amplia seu potencial quando se expande as possibilidades com outros sistemas operacionais além do original. O SteamOS é incrível, continua sendo o principal que cumpre bem seu papel: Ser um sistema gamer definitivo para o portátil. Mas se você quer fazer mais com o aparelho, recomendo fortemente usar outro sistema a seu favor!

Considerações finais:

  • O uso do SteamDeck para os recursos citados acima são condizentes a usuários domésticos e talvez medianos. Não é um equipamento de ponta, recomendado para profissionais de design e modelagem que queiram uma alternativa barata para renderizações 3D. Até porque ele roda bem renderizando cenas na resolução nativa 1280×800, mas em 1080p a situação fica contraproducente. – A menos que você não tenha pressa de ver uma renderização que perdure horas a fio e saiba otimizar o aparelho para não extrapolar os 12 Gb de RAM e os 4 Gb de VRAM!
  • Não analisei a renderização pelo modo APU porque seria 100% de GPU, 100% de CPU e sistema travando. É mais potente mas pouco eficiente. Além disso o interessante é o consumo energético: Em média 5h restantes de bateria renderizando tão somente pela GPU!
  • Não tenho planos de testar Windows com o driver ROCm®. Se alguém testou, deixe nos comentários!

#UrbanCompassPony

Deixe um comentário