Ubuntu 16.04システムでOpenCLを実行できません。

Ubuntu 16.04システムでOpenCLを実行できません。

私は単純なIntel AtomベースのCPUとAMD RX Vega 56 GPUを使用してIntelシステムをセットアップしました。

GPUにフルロードを生成し、いくつかのOpenCL / Cプログラムを試してみたいです。 (私もハッシュキャットを使いたいです。)

AMDGPU-Proドライバはこのバージョンとのみ互換性があるため、Ubuntu 16.04 Serverをインストールしました。インストール手順に従い、./amdgpu-pro-install -y -opencl=romパラメータを使用しました。今日まで、インストールは成功しました。また、ocl-icd-dev、clinfo、opencl-headersパッケージ、およびmesa-ocl-などのパッケージをインストールしました。

動作していることを確認するために、「clinfo」コマンドを使用してみました。次の出力を提供します。

    root@atomium:/home/chairman/opencl-experiments/tools-master# clinfo
Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.0 AMD-APP (2117.10)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 0

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  No platform
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   No platform
  clCreateContext(NULL, ...) [default]            No platform
  clCreateContext(NULL, ...) [other]              <error: no devices in non-default plaforms>
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  No platform

そのため、別の方法で確認するために、このリポジトリからいくつかのOpenCLの例を複製しました。

https://github.com/rsnemmen/OpenCL-examples

すぐにコンパイルできますが、実行すると次のエラーが発生します。

    root@atomium:/home/chairman/opencl-experiments/tools-master# ./print-devices
platform 0: vendor 'Advanced Micro Devices, Inc.'
*** 'clGetDeviceIDs' in 'cl-helper.c' on line 134 failed with error 'device not found'.
Aborted (core dumped)

私はいくつかの人々がhashcatを使用して同様の問題を経験していますが、単純化された普遍的なソリューションを見つけることができなかったことを発見しました。

おそらく、誰かがこの問題を解決するために進む方法についていくつかのステップを指摘できます。 (私はOpenCLを好む。)

ベストアンサー1

おすすめ記事