Установить OpenCL с графикой Intel 4400 на Arch linux? - PullRequest
1 голос
/ 05 января 2020

Я хотел бы включить OpenCL для вычислений на GPU на моем ноутбуке. Его характеристики следующие:

  • ОС: Manjaro (Arch linux)
  • CPU / GPU: Core-i7 4600U / Intel Graphics 4400

Я действительно новичок в этом. До сих пор я устанавливал все необходимые зависимости, как описано здесь , включая:

  • intel-opencl
  • ocl-icd
  • clinfo

Выполнение clinfo возвращает следующее вывод:


Number of platforms                               1
  Platform Name                                   Intel(R) OpenCL
  Platform Vendor                                 Intel(R) Corporation
  Platform Version                                OpenCL 1.2 
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir
  Platform Extensions function suffix             INTEL

  Platform Name                                   Intel(R) OpenCL
Number of devices                                 2
  Device Name                                     Intel(R) HD Graphics
  Device Vendor                                   Intel(R) Corporation
  Device Vendor ID                                0x8086
  Device Version                                  OpenCL 1.2 
  Driver Version                                  r5.0.63503
  Device OpenCL C Version                         OpenCL C 1.2 
  Device Type                                     GPU
  Device Profile                                  FULL_PROFILE
  Device Available                                Yes
  Compiler Available                              Yes
  Linker Available                                Yes
  Max compute units                               20
  Max clock frequency                             1100MHz
  Device Partition                                (core)
    Max number of sub-devices                     0
    Supported partition types                     by <unknown> (0x563e00000000)
    Supported affinity domains                    (n/a)
  Max work item dimensions                        3
  Max work item sizes                             256x256x256
  Max work group size                             256
Speicherzugriffsfehler (Speicherabzug geschrieben)

Обратите внимание на последнюю строку. Я на немецкой рабочей станции, поэтому в последней строке указывается ошибка доступа к памяти. Я не знаю, как это исправить. Любые советы были бы очень хорошими. Заранее спасибо :-) РЕДАКТИРОВАТЬ: Точно сообщение об ошибке на английском языке sh: segmentation error Может быть, это поможет для дальнейших решений ...

1 Ответ

0 голосов
/ 08 января 2020

Обычно это означает некоторое несоответствие между различными частями аппаратного / программного обеспечения на вашем устройстве. У вас есть одна платформа (что нормально) с двумя устройствами - первое устройство имеет тип GPU, но clinfo не может запросить информацию о втором устройстве, которое, вероятно, является вашим процессором.

Я думаю Вы должны разработать ряд простых программ на C / C ++, чтобы имитировать c того, что делает clinfo. Это будет очень познавательно - в любом случае, это первый шаг, с которого начинается любая программа OpenCL. Используйте онлайн-руководство Khronos:

  • clGetPlatformIds - для получения списка платформ
  • clGetPlatformInfo - для запроса информации о платформе
  • clDeviceIds - получить список устройств для конкретной платформы
  • clGetDeviceInfo - запросить информацию об устройстве
  • и т. Д. ..

Надеюсь, это поможет вам.

...