Какая связь между червем длиной около миллиметра и OpenCL?

    image

    Недавно на хабре была статья про проект OpenWorm. Проект использует OpenCL для расчета гидродинамики сглаженных частиц как на CPU, так и на GPU. Среди исследователей/разработчиков есть наши соотечественники Андрей Пальянов и Сергей Хайрулин из сибирского отделения Российской академии наук.

    Под катом география комьюнити OpenWorm, а так же рейтинг популярности разработки на OpenCL по странам и ссылки на примеры для версии стандарта 2.0

    Судя по публикациям, Андрей Пальянов и Сергей Хайрулин участвуют в проекте NeuroML и выполняли оптимизацию алгоритма PCI-SPH для GPGPU. А узнал о том, что этот проект собирается использовать OpenCL, в марте прошлого года от их коллеги по проекту Matteo Cantarelli.

    География комьюнити openworm по данным сайта:

    image

    Ситуация же с популярностью и использованием OpenCL в России странная. Судя по статистике моего блога и ссылкам на него с форума сайта консорциума khronos.org и документации JavaCL, у нас в стране тема GPGPU не популярна. Возможно, не очень репрезентативно, но рейтинг популярности разработки на OpenCL по странам (на основе моего блога и без учета последнего хабр эффекта):

    1. United States
    2. Germany
    3. Ukraine
    4. United Kingdom
    5. Poland
    6. Latvia
    7. France
    8. Canada
    9. China
    10. Russia

    Печально… При том что OpenCL — это не только GPU, CPU, но FPGA. Как вы считаете, почему сложилась такая ситуация?

    Напоследок новость для тех, кому интересно. Состоялся релиз новой версии AMD APP SDK 3.0 Beta для OpenCL 2.0. Которая также включает в себя библиотеку шаблонов C++ «Bolt» и оптимизированную версию OpenCV (Open Computer Vision) для OpenCL.

    Примеры в архиве SDK позволят разобраться с появившимися в 2.0 версии фичами: SVM Coarse Grain, Pipe, New Workgroup Built-in APIs, Image Read and Write, Program Scope Variable, Generic Address Space, Shared Virtual Memory pointer with offset, SVM Fine Grain Buffer, C++ 11 Atomics, Device-side Enqueue, Depth Image.

    Подробное описание примеров в блоге AMD и SDK.

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 3

      0
      Я пробовал в OpenCL разобраться года 3-4 назад. Даже мои первые статьи на Хабр были про него. Но в реальных проектах его ни разу не видел. Обычно Cuda берут, или даже OpenMP. Как я понял, причина в следующем: если собирают крупный кластер или вычислитель, или делают коммерческое решение, то его скорее делают на nVidia, исторически такие решения считаются более стабильными (хотя это не обязательно так). Как следствие — бизнесу требуются именно CUDA-программисты.
      Если решение должно быть универсальным и работать на многих машинах, то берут какой-то открытый фреймворк, реализующей это, так как писать на OpenCL универсальный для всех устройств код занимает больше времени на разработку. В результате ниша OpenCL это не более 5-10% от всего многопоточного программирования на видеокартах в России. А я думаю, что вы понимаете, что сама по себе ниша тоже не очень велика.
        0
        OpenCL это не только HPC, но и обычные десктопные и мобильные приложения. Т.к. OpenCL 1.1 embedded profile поддерживается и некоторыми ARM ядрами. Только из Android убрали его API, чтобы протолкнуть под предлогом борьбы с сегментированием платформы Renderscript. И очень жаль что ограничили разработчиков, т.к. внутри Renderscript писали на форумах что используют OpenCL
          0
          Если решение должно быть универсальным и работать на многих машинах, то берут какой-то открытый фреймворк, реализующей это

          Можно примеры что используют?

        Only users with full accounts can post comments. Log in, please.