Como obtenho uma Radeon RX 550 trabalhando com OpenCL no Ubuntu 16.04?

2

Quando eu sigo o guia oficial para instalar os drivers AMDGPU-Pro (eu tentei as versões 17.30 e muito recentes 17.40), tudo parece funcionar, mas clinfo ainda retorna

Number of platforms 0

Alguém tem alguma ideia?

    
por tamale 18.11.2017 / 22:42

2 respostas

1

Eu passei o dia inteiro nisto também - eu não consegui encontrar nenhuma instrução de trabalho então aqui está o que eu criei para o AMD Radeon RX 580 no sistema Ubuntu 16.04 sem desktop gráfico, instalado sobre SSH:

Assuma um novo sistema de instalação do Ubuntu

  1. Obtenha o AMD APP SDK em aqui - Baixar, Descompactar e use sudo para executar o script de instalação.

  2. Faça o download do driver Linux mais recente (17.50 no momento da gravação desta resposta) em aqui , extraia o arquivo .xz usando tar Jxvf <filename> e cd no diretório criado depois de extrair o arquivo .xz .

  3. Agora, execute o instalador com sudo :

    sudo ./amdgpu-pro-install --opencl=legacy -y
    
  4. Reinicializar

  5. Execute clinfo novamente e você verá que agora tem suporte a OpenCL 1.2 :

    $ clinfo|grep OpenCL
    
    Platform Version:               OpenCL 2.1 AMD-APP (2527.3)
    Execute OpenCL kernels:         Yes
    Device OpenCL C version:        OpenCL C 1.2
    Version:                        OpenCL 1.2 AMD-APP (2527.3)
    

A razão para isso é que a especificação de --legacy extrai o opencl-amdgpu-pro-icd , que normalmente não é instalado.

Acho que isso acontece porque os drivers mais recentes querem fazer coisas com o ROCm: link

No meu próprio equipamento, o ROCM é inutilizável porque eu tenho slots PCI-e 1x com risers e um processador Pentium básico ao invés de um i7. Você verifica que o ROCm foi desativado assim:

$ dmesg |grep atomic
[4.885958] kfd kfd: skipped device 1002:67df, PCI rejects atomics

Então eu acho que é por isso que eu tive que fazer legado para fazer o OpenCL funcionar.

Não sei quais são os prós / contras do OpenCL 1.2 vs OpenCL 2.0 vs ROCm, ou mesmo se o driver ROCm apresenta como OpenCL 2.0 externamente - seria ótimo se alguém com mais insight pudesse comentar.

    
por Geoff Williams 06.01.2018 / 10:05
0

O OpenCL falhou porque tive problemas ao criar o módulo DKMS, devido ao meu kernel.

Atualizando meu kernel para a seguinte versão, obtive o clinfo reportando o suporte a OpenCL no Ubuntu 16.04.4 LTS.

link

linux-headers-4.15.11-041511_4.15.11-041511.201803190530_all.deb

linux-headers-4.15.11-041511-generic_4.15.11-041511.201803190530_amd64.deb

linux-image-4.15.11-041511-generic_4.15.11-041511.201803190530_amd64.deb

clinfo|grep OpenCL
  Platform Version          OpenCL 2.0 AMD-APP (2482.3)
  Device Version            OpenCL 1.2 AMD-APP (2482.3)
  Device OpenCL C Version   OpenCL C 1.2 
    Run OpenCL kernels      Yes
    
por jaycorpinc 19.03.2018 / 21:56