The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз PoCL 6.0 с независимой реализацией стандарта OpenCL

19.06.2024 10:39

Опубликован релиз проекта PoCL 6.0 (Portable Computing Language OpenCL), развивающего реализацию стандарта OpenCL, независимую от производителей графических ускорителей и позволяющую использовать различные бэкенды для выполнения OpenCL-ядер на разных типах графических и центральных процессоров. Код проекта распространяется под лицензией MIT. Поддерживается работа на платформах X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU и различных специализированных ASIP (Application-Specific Instruction-set Processor) и TTA-процессорах (Transport Triggered Architecture) c архитектурой VLIW.

Реализация компилятора ядер OpenCL построена на базе LLVM, а в качестве фронтэнда для OpenCL C используется Clang. Для обеспечения должной переносимости и производительности компилятор ядер OpenCL может генерировать комбинированные функции, которые могут использовать различные аппаратные ресурсы для распараллеливания выполнения кода, такие как VLIW, суперскалярность, SIMD, SIMT, многоядерность и многопоточность. Имеется поддержка ICD-драйверов (Installable Client Driver). Присутствуют бэкенды для обеспечения работы через CPU, ASIP (TCE/TTA), GPU на базе архитектуры HSA и GPU NVIDIA (через libcuda).

В новой версии:

  • Добавлена поддержка Clang/LLVM 18.0, прекращена поддержка LLVM 10, 11, 12 и 13.
  • Реализован новый бэкенд cpu-tbb, использующий для распараллеливания операций и планирования выполнения задач библиотеку OneTBB, развиваемую компанией Intel.
  • В бэкенде cpu, обеспечивающем выполнение OpenCL-ядер на CPU, добавлена поддержка стандарта параллельного программирования OpenMP, добавлен метод clGetDeviceAndHostTimer(), а также реализованы экспериментальные расширения cl_pocl_svm_rect, cl_pocl_command_buffer_svm и cl_pocl_command_buffer_host_buffer.
  • В бэкенд "Remote", предназначенный для организации распределённых вычислений через вынос обработки команд OpenCL на другие хосты в сети, на которых запущен фоновый процесс pocld, добавлена поддержка CG SVM (Coarse-Grain Shared Virtual Memory), возможность обращения к бэкенду с использованием коммуникационного протокола Vsock и поддержка компиляции и связывания программ при помощи функций clCompileProgram() и clLinkProgram().
  • В бэкенде LevelZero, использующем API Level Zero, разрешено создавать буферы, размером больше 4ГБ, и реализованы оптимизации процессов синхронизации.
  • В бэкенде CUDA реализованы операции sub_group_shuffle и sub_group_shuffle_xor, а также увеличен лимит CL_DEVICE_MAX_MEM_ALLOC_SIZE.


  1. Главная ссылка к новости (https://github.com/pocl/pocl/r...)
  2. OpenNews: Релиз PoCL 5.0 с независимой реализацией стандарта OpenCL
  3. OpenNews: Опубликованы финальные спецификации OpenCL 3.0
  4. OpenNews: Vortex - открытый GPGPU на базе архитектуры RISC-V, совместимый с OpenCL
  5. OpenNews: Открытый драйвер Rusticl сертифицирован на совместимость с OpenCL 3.0
  6. OpenNews: Intel открыл код реализации OpenCL, выполняемой на CPU
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/61399-pocl
Ключевые слова: pocl, opencl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (13) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 11:32, 19/06/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Хм, интересно где оно используется?
    Если кто-то сталкивался, напишите впечатления.

    ps кажется у нас есть достойный конкурент Fedor'ы для rastberryPI))

     
     
  • 2.4, ryoken (ok), 12:56, 19/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >>rastberryPI
     
  • 2.9, onanim (?), 15:01, 19/06/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > где оно используется?

    hashcat

     

  • 1.2, Аноним (2), 12:12, 19/06/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Напоминаю, что существует неофициальный Vilkan-драйвер для TeraScale : https://gitlab.freedesktop.org/Triang3l/mesa
     
     
  • 2.5, ryoken (ok), 12:57, 19/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >>Vilkan

    Вилка?

     

  • 1.3, Аноним (2), 12:13, 19/06/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Реализован новый бэкенд cpu-tbb, использующий для распараллеливания операций и планирования выполнения задач библиотеку OneTBB

    Мои эксперименты со своим софтом (не OpenCL) показали: ничего быстрее std::thread нет. Ни OpenMP, ни TBB и рядом не стояли.

     
     
  • 2.7, Аноним (7), 13:24, 19/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Posix Threads только по ядрам CPU раскидывает.
     
  • 2.12, Аноним (12), 15:15, 19/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Task-based это скорее про асинхронный код, асинхронный код не обязательно эффективнее параллельного во всех случаях, но определённо лучше и проще масштабируется.
     
  • 2.13, Аноним (-), 04:01, 20/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Мои эксперименты со своим софтом (не OpenCL) показали: ничего быстрее std::thread нет.
    > Ни OpenMP, ни TBB и рядом не стояли.

    GPU среднего пошиба может обставить проц в добрых 50 раз. При том же потреблении. Если алго параллелилось. И где ваш std::thread теперь? OpenCL для именно акселерации именно таких вычислений, а не general purpose.

     
     
  • 3.14, Аноним (14), 19:17, 20/06/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >OneTBB
    >GPU

    TBB - это либа для многопоточности на CPU.

     

  • 1.6, corvuscor (ok), 13:07, 19/06/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Поддерживается работа на платформах X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU и различных специализированных ASIP

    Из документации:
    > Note: PoCL’s HSA runtime support is deprecated.

    The experimental HSA driver currently only works with generic HSA Agent support (e.g. for your CPU);

     
  • 1.8, Аноним (7), 13:30, 19/06/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Релиз PoCL 6.0

    PoCL 5.0 вышел 12.2023, хотят догнать Chrome?

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру