Материалы по тегу: api

23.02.2021 [22:23], Андрей Галадей

Вышло обновление ZLUDA v2, открытой реализации CUDA для GPU Intel

Ранее мы уже писали об экспериментальнои проекте ZLUDA, развивающем открытую реализацию CUDA для GPU Intel, которая позволила бы нативно исполнять CUDA-приложения на ускорителях Intel без каких-либо модификаций. При этом её разработка ведётся независимо и от Intel, и от NVIDIA.

Новинка построена на базе интерфейса Intel oneAPI Level Zero, и может работать на картах Intel UHD/Xe с неплохим уровнем производительности. Однако у первой версии был ряд ограничений. Вчера же вышла вторая версия, которая получила ряд улучшений. Кроме того, автор проекта объявил о переходе на модель непрерывного выпуска релизов.

Основной упор в новой версии сделан на улучшение поддержки Geekbench и работы в Windows-окружении. Собственно говоря, автор прямо говорит, что оптимизация под Geekbench пока является основной целью, а другие CUDA-приложения могут не работать. Кроме того, такое ПО, запущенное с помощью ZLUDA будет работать медленнее, чем на картах NVIDIA, в силу разности архитектур GPU и необходимости эмуляции некоторых возможностей. Подробности приведены на странице проекта.

Постоянный URL: http://servernews.ru/1033317
17.02.2021 [19:31], Андрей Галадей

Библиотека Intel oneDNN 2.1 получила поддержку NVIDIA GPU

Компания Intel выпустила новую версию библиотеки oneDNN (ранее известна как MKL-DNN) с открытым исходным кодом. Она используется для глубокого обучения нейросетей. В новой версии 2.1 теперь есть поддержка ускорителей на базе GPU от NVIDIA, а также ряд улучшений для работы на будущих процессорах Intel.

Отмечается, что новая библиотека оптимизирована для работы с графикой Intel Xe. Улучшилась работа с процессорами Intel Xeon с поддержкой матричных расширений AMX (их получат чипы Sapphire Rapids). Также поддерживаются различные оптимизации AVX-512 и так далее.

Отдельно отметим начальную поддержку будущих процессоров Alder Lake с AVX2 и DL Boost. Есть даже некоторые оптимизации INT8 для процессоров с SSE4.1 и ряд других низкоуровневых улучшений. Помимо этого, есть улучшения для архитектуры AArch64. А сама библиотека в целом стала работать быстрее.

Что касается поддержки GPU NVIDIA, то она пока находится в начальной стадии и полагается на компилятор Intel DPC++, cuDNN и cuBLAS. Тем не менее, это важный шаг для платформы oneAPI, которая обещает стать универсальным средством разработки для различных аппаратных архитектур. Ссылки для скачивания и все подробности о выпуске oneDNN 2.1 можно найти на GitHub.

Постоянный URL: http://servernews.ru/1032843
10.02.2021 [20:28], Андрей Галадей

Khronos выпустила спецификацю SYCL 2020 для гетерогенного параллельного программирования на C++

Khronos Group сообщила, что спецификация для гетерогенного программирования на основе C++ 17 под названием SYCL пересмотрена и выпущена в виде релиза SYCL 2020. Новая версия является преемником стандарта SYCL 1.2.x, с которым она обратно совместима.

Новая версия добавляет поддержку унифицированной разделяемой памяти (USM), расширенную совместимость, атомарные операции SYCL, поведение которых похоже на аналогичные функции в C ++, а также много другое. В общей сложности, в SYCL 2020 добавлено более 40 новых функций для расширения возможностей программирования. При этом разработчики заявили, что главной задачей при создании SYCL 2020 было не только введение новых функций, но и сохранение обратной совместимости, поскольку стандарт используется в суперкомпьютерных системах и реальных приложениях.

Параллельно с выпуском спецификации SYCL 2020 экосистема SYCL продолжает расти за счёт расширения разработки компиляторов, сред выполнения, библиотек и инструментов. В частности, многие компоненты Intel oneAPI Data Parallel C++ (DPC++) включены в состав SYCL 2020. Реализация, совместимая с ComputeCpp SYCL 1.2.1 от Codeplay, включает избранные функции SYCL 2020 в качестве расширений, в том числе поддержку DSP и RISC-V с добавлением дополнительных функций со временем.

Реализации Intel, Codeplay и Xilinx (triSYCL) основаны на платформе LLVM и несколько более универсальны. hipSYCL от Гейдельбергского университета также поддерживает ключевые функции SYCL 2020, начиная с версии 0.9, и предлагает поддержку CUDA и ROCm. Наконец, NEC имеет свой вариант neoSYCL для запуска на векторных ускорителях SX-AURORA. Разработчики могут загрузить любую из этих реализаций и поэкспериментировать с возможностями SYCL 2020 уже сегодня.

Постоянный URL: http://servernews.ru/1032346
08.02.2021 [13:11], Владимир Мироненко

IBM представила план по упрощению разработки ПО для квантовых вычислений

IBM представила план по ускорению повсеместного развёртывания квантовых вычислений за счёт внедрения более простых инструментов программирования в течение следующих пяти лет. Он является дополнением к плану разработки аппаратного обеспечения для квантовых вычислений, анонсированному компанией в сентябре прошлого года.

В настоящее время большинство современных квантовых компьютеров находятся только на пороге коммерциализации. Ряд компаний, включая IBM, Google, Honeywell, D-Wave Systems и Rigetti Computing, предлагают доступ к квантовым компьютерам по облачной модели. И уже несколько крупных компаний экспериментируют с использованием этих компьютеров для ускорения таких процессов, как оценка рисков финансовых портфелей или оптимизация маршрутов доставки. Целый ряд других компаний разрабатывает алгоритмы, основанные на квантовых вычислениях, некоторые из которых могут использоваться для повышения производительности и при работе на традиционных компьютерах.

Misha Friedman/Getty Images

Misha Friedman/Getty Images

Но программировать квантовые компьютеры непросто. В традиционном компьютере вся информация представлена в двоичном формате с использованием нулей и единиц. В квантовом компьютере информация используются кубитов, которые могут иметь значение 0 и 1 одновременно. В традиционном компьютере предполагается, что состояние каждого бита не зависит от всех остальных битов, а в квантовом статус кубитов взаимозависим. На традиционном компьютере вы получаете один и тот же ответ каждый раз, когда запускаете вычисления. В квантовом компьютере один и тот же расчёт должен выполняться сотни или даже тысячи раз с последующим анализом распределение вероятностей возможных ответов, причём наиболее вероятный ответ обычно является лучшим решением.

Более того в настоящее время квантовые компьютеры разных разработчиков формируют кубиты по-разному. Одни используют сверхпроводники, другие — фотоны, третьи построены на ловушках для ионов. И даже квантовые чипы одной и той же компании могут иметь разные свойства в зависимости от того, сколько кубитов содержит каждый процессор. IBM планирует в конечном итоге избавить программистов от необходимости учитывать всё это многообразие.

IBM Q

IBM Q

Компания уже выпустила набор инструментов для разработчиков под названием Qiskit. Он разработан, чтобы упростить программистам настройку схем на квантовом компьютере IBM с облачным доступом. Это также упрощает запуск и хранение этих программ. Новая же система предполагает использование традиционных серверов, находящихся рядом с квантовым компьютером в том же дата-центре, для обработки некоторых вычислений. Компания заявила, что выполнение всей программы в облаке с распределением нагрузки позволит сократить время, необходимое для выполнения некоторых вычислений, с нескольких месяцев до нескольких часов.

В следующем году IBM обещает предложить инструменты, которые упростят программистам создание программного обеспечения, включающего в себя как квантовые вычисления, так и традиционные вычислительные элементы в одной программе. Затем, начиная с 2023 года, IBM планирует предложить своим клиентам библиотеки предварительно созданных квантовых схем, а также системы для управления очень большими квантовыми компьютерами, которые она обещает сделать доступными к этом сроку — к 2023 году у IBM будет компьютер с 1000 кубитами, а сейчас она может предложить лишь 65-кубитные агрегаты.

Также в 2023 году компания начнёт предлагать предварительно созданные квантовые алгоритмы, которые программисты смогут использовать через простой облачный API-интерфейс. Это позволит разрабатывать программное обеспечение для квантового компьютера на языках программирования, которые уже известны разработчикам, без необходимости изучать новый язык. IBM заявила, что хочет, чтобы программисты, работающие в корпорациях, могли «самостоятельно исследовать модели квантовых вычислений, не задумываясь о квантовой физике».

К 2025 году, по словам IBM, она сможет предложить инструмены для квантовых вычислений, при использовании которых программистам больше не нужно будет думать о том, на каком именно квантовом компьютере будет работать код или даже какая часть программы будет выполняться на квантовой системе, а не на традиционном сервере.

Постоянный URL: http://servernews.ru/1032086
08.12.2020 [16:14], Владимир Мироненко

ННГУ им. Н.И. Лобачевского и Intel открывают Центр компетенций oneAPI

Нижегородский государственный университет им. Н.И. Лобачевского и компания Intel объявили о создании Центра компетенций oneAPI. В числе его главных задач — проведение исследований в области современной физики с помощью систем на базе различных архитектур и аппаратных ускорителей с использованием возможностей кроссплатформенной модели программирования oneAPI.

Это четвёртый подобный центр в мире, ранее аналогичные заведения появились в Швеции, Германии и США. Создание Центра компетенций oneAPI поможет ННГУ решать сложные исследовательские задачи, а также расширить содержание магистерских программ университета. Кроме того, в центре будут развивать и возможности самого стандарта oneAPI.

Первой задачей Центра компетенций станет перевод на модель oneAPI программного комплекса с открытым кодом Hi-Chi (High-Intensity Collisions and Interactions), предназначенного для моделирования высокоинтенсивных взаимодействий лазерного излучения с веществом. Это позволит расширить возможности комплекса Hi-Chi и повысит его производительность. В дальнейшем приложения, созданные на базе Hi-Chi, будут оптимизированы международной исследовательской группой под руководством ученых ННГУ.

Модернизированный инструментарий позволит создавать решения для обработки больших массивов данных и выполнения вычислительно-трудоемких расчетов, что даст возможность получать развернутую аналитику и проводить статистические исследования для новых открытий в прикладной и фундаментальной физике. Рабочая группа ННГУ также планирует предоставлять отзывы о работе платформы с целью улучшения разработки ее будущих спецификаций и функциональных возможностей.

В рамках более чем 20-летнего сотрудничества ННГУ и Intel, университет разработает новый учебный курс по программированию, основанный на подходах oneAPI. Он будет отличаться большим количеством примеров использования открытой программной модели в научных вычислениях при решении задач из разных предметных областей, среди которых физика, математика, финансы и др.

В процессе обучения студенты:

  • познакомятся c кроссплатформенным подходом oneAPI;
  • научатся использовать возможности современных центральных и графических процессоров, а также аппаратных ускорителей;
  • научатся оптимизировать код с помощью инструментов программирования, поддерживающих распространенные языки (C++, Фортран и др.) и обеспечивающих полную преемственность с существующим кодом.

Этот курс будет включён в учебный план магистерских программ института Информационных технологий, математики и механики (ИТММ). Помимо подготовки студентов, также планируются программы обучения преподавателей других ВУЗов России и молодых учёных. Нижегородский центр компетенций oneAPI начнёт свою работу зимой 2021 года.

Постоянный URL: http://servernews.ru/1027305
24.11.2020 [19:36], Андрей Галадей

Проект ZLUDA позволит запускать CUDA-приложения на GPU Intel

Недавно Intel представила концепцию oneAPI, а в декабре ожидается «золотой релиз» всех инструментов. Но есть и альтернативный проект ZLUDA с открытым исходным кодом, который предоставляет реализацию CUDA на базе oneAPI Level Zero. Это позволит запускать программы, изначально «заточенные» под NVIDIA CUDA, на видеокартах Intel UHD и Xe.

Как отмечается, ZLUDA является независимым от NVIDIA и Intel проектом, хотя и использует API Level Zero. ZLUDA предоставляет альтернативную версии библиотеки libcuda и позволяет приложениям CUDA работать без каких-либо модификаци на графических картах Intel с «почти нативной» производительностью. Правда, потребуется графика не ниже Gen9.

engadget.com

engadget.com

ZLUDA всё ещё находится на ранней стадии разработки, но возможностей утилиты уже достаточно, чтобы запускать программу Geekbench с тестами CUDA. Хотя, само собой, о полной поддержке всех функций CUDA речи ещё не идёт. Как ожидается, в будущем ZLUDA сможет работать и поверх HIP-интерфейсов AMD в качестве альтернативы Intel Level Zero.

Новинка написана на языке Rust. Исходники доступны на GitHub. При этом отмечается, что новинка в ряде случаев идёт наравне или даже превосходит OpenCL в тесте GeekBench. Так что если повезёт, то простое использование CUDA будет возможно не только на картах NVIDIA.

Постоянный URL: http://servernews.ru/1026163
11.11.2020 [17:01], Андрей Галадей

В декабре выйдет «золотой» релиз первого набора oneAPI

Сегодня компания Intel презентовала «золотой» релиз своего набора инструментов oneAPI. В публичный доступ он выйдет в декабре. Этот инструментарий заявлен в качестве универсального средства разработки для разных аппаратных платформ.

На рынке, как известно, нет единой аппаратной архитектуры процессоров. Причин тому масса — это и отсутствие единого стандарта, и обратная совместимость, и разные задачи. Потому разработка программ и портирование их между платформами представляет собой огромную проблему.

Новый инструмент oneAPI должен стать унифицированным интерфейсом с открытыми исходниками. Он позволит создавать кроссплатформенные приложения для процессоров, GPU и ПЛИС. Инструменты разработки Intel Parallel Studio XE и System Studio «переезжают» на oneAPI, для них Intel будет оказывать коммерческую поддержку. В списке поддерживаемых самой Intel архитектур для Windows и Linux заявлены:

  • Процессоры Intel (от Atom до Xeon).
  • Графические процессоры (от Gen9 до Хе-НР).
  • ПЛИС Intel Arria, Stratix и другие.

В числе готовых тулкитов, которые имеются на старте, отметим:

  • Intel oneAPI Base Toolkit (Base Kit) — базовый набор инструментов для разработки, включающий компиляторы, библиотеки, приложения для анализа и дебага.
  • Domain-Specific Toolkits — набор инструментов для работы с рендерингом, графикой, ускорителями вычислений и так далее. В наборах есть Intel oneAPI HPC Toolkit (для ускорения Fortran, OpenMP и MPI), Intel oneAPI IoT Toolkit (для систем Интернета вещей), Intel oneAPI Rendering Toolkit (для быстрой визуализации и рендеринга графики).
  • Intel AI Analytics Toolkit и OpenVINO Toolkit также базируются на решениях oneAPI.

Так как oneAPI является открытой платформой, сторонние компани и пользователи занимаются развитием поддержки и других архитектур:

  • В Аргоннской национальной лаборатории Министерства энергетики США. Там инструменты применяются для тестирования кода под экзафлопсную систему Aurora.
  • В компании Codeplay из Шотландии, которая разрабатывает компилятор DPC++ для графических процессоров Nvidia.
  • В Иллинойском университете, где oneAPI используется для гетерогенных вычислительных систем, которые имитируют биомолекулярные системы. Это, в частности, используется для поиска лекарства от COVID 19.
  • В вычислительном центре Гейдельбергского университета, где хотят добавить поддержку oneAPI для графических процессоров AMD.
  • Берлинский институт Zuse успешно портировал приложение EasyWave для моделирования цунами с NVIDIA CUDA на oneAPI.

Новинка совместима с существующими моделями программирования и языками C++, Fortran, Python, OpenMP и другими. В составе oneAPI есть стандартные библиотеки, которые будут работать на любых аппаратных платформах — от ПК и серверов до систем машинного обучения и «Интернета вещей». Всё это позволит упростить разработку и поддержку ПО.

При этом, как заявил Раджа Кодури (Raja Koduri), старший вице-президент Intel, главный архитектор и генеральный менеджер по архитектуре, графике и программному обеспечению, набор инструментов oneAPI пригодится и для игр. Речь идёт об облачном гейминге (например, на новых серверных GPU Intel) на мобильных устройствах с Android. Как утверждается, новая технология обеспечит высокое качество передачи потокового видео и низкие задержки в процессе трансляции.

Впервые Intel oneAPI представили на выставке SuperComputing 2019, с тех пор были выпущены несколько бета-версий. Подробнее о самом интерфейсе можно прочитать на сайте проекта, а самостоятельно опробовать новинку можно в Intel DevCloud. Напомним, что ранее oneAPI начали продвигать в том числе в России.

Постоянный URL: http://servernews.ru/1025117
01.10.2020 [19:04], Алексей Степин

Мир, дружба, oneAPI: открытая платформа Intel упростит разработку для чипов AMD, ARM, NVIDIA, POWER и FPGA

Ни для кого не секрет, что единой оптимальной вычислительной архитектуры не существует. Разные виды задач и сценариев порождают и разные виды нагрузок, с которыми разные процессоры справляются по-разному. Программировать подо всё это разнообразие очень непросто, вот почему Intel взяла на себя задачу создать единую модель разработки в рамках проекта oneAPI, первый мажорный релиз которой вышел на днях.

Архитектура Intel oneAPI

Архитектура Intel oneAPI

По мере того, как вычислительная техника и ИТ-технологии проникают во все сферы жизни, рождаются всё новые и новые виды нагрузок. К примеру, в последнее время очень популярна поддержка целочисленных форматов типа INT8 для задач машинного обучения, где точностью, достигаемой в формате FP64, можно пожертвовать ради скорости и эффективности. Процессоры «обвешиваются» всё новыми инструкциями, появляются целые новые классы вычислительных устройств — и над всеми ними встаёт вопрос о том, как подо всё это эффективно писать программное обеспечение.

Многие видят ответ в создании унифицированных прослоек, вроде упомянутой недавно VMware с её Project Monterey. Корпорация Intel придерживается похожей точки зрения со своим проектом oneAPI. Данная разработка представляет собой унифицированную и открытую программную платформу, позволяющую абстрагироваться от аппаратной архитектуры устройств и писать код, задействующий все имеющиеся вычислительные ресурсы, будь то CPU, GPU, DPU или иные. Основой для oneAPI стал язык DPC++, который, в свою очередь, базируется на стандартах C++ и Kronos SYCL.

Один API, чтобы править всеми

Один API, чтобы править всеми (видами вычислений)

Впервые об oneAPI мир узнал в конце 2018 года, а сегодня проект достиг важной вехи: компания официально объявила о релизе oneAPI 1.0. Проект, как уже было сказано, имеет открытые спецификации, с которыми можно ознакомиться в соответствующем разделе сайта, посвящённого oneAPI; есть у новинки и свой репозиторий на GitHub. В состав oneAPI входят базовые библиотеки, компилятор DPC++ на базе LLVM/Clang, ряд библиотек производительности Intel, а также средства анализа и отладки кода.

Немаловажен и тот факт, что в состав проекта входит средство миграции кода, написанного на CUDA — таким образом, всё программное богатство, наработанное для ускорителей NVIDIA, может быть сделано доступным и для других платформ. Отдельно заслуживает упоминание богатство библиотек для создания приложений с использованием машинного обучения и аналитики: oneDNNL, one Video Processing Library и других. Опробовать oneAPI можно также в специальной облачной «песочнице», развёрнутой Intel специально для разработчиков, заинтересованных в новых методах разработки ПО.

Так как и сама платформа, и нижележащая инфраструктура LLVM открыты, расширить возможности oneAPI относительно просто, чем и занимается ряд организаций. Например, над совместимостью с NVIDIA работает Codeplay, центр URZ занят добавлением расширений DPC++ в проект hipSYCL, который работает с любыми CPU (OpenMP), GPU NVIDIA (CUDA) и AMD Radeon (HIPC/ROCm). А некоторые one-библиотеки от самой Intel уже имеют поддержку ARM и POWER. Для собственных FPGA у Intel тоже есть наработки, а вот Xilinx, похоже, пока остаётся за бортом. Последняя, впрочем, имеет своё видение процесса разработки.

Постоянный URL: http://servernews.ru/1021990
05.02.2020 [12:42], Алексей Степин

Codeplay обеспечила поддержку Intel oneAPI и Kronos SYCL для ускорителей NVIDIA

Компания Codeplay, работавшая над созданием открытой прослойки для запуска Intel oneAPI и Data Parallel C++ на графических процессорах NVIDIA, дополнила свой проект поддержкой Kronos SYCL.

SYCL — это бесплатная кроссплатформенная прослойка, позволяющая писать приложения для гетерогенных система, используя стандартный C++, что ускоряет и упрощает разработку таких приложений. Intel oneAPI, напомним, расширяет возможности SYCL.

Codeplay анонсировала экспериментальную поддержку SYCL для графических процессоров NVIDIA, причём без посредничества OpenCL. Вместо этого используется LLVM и бэк-энд NVPTX, работающий непосредственно с бинарными драйверами NVIDIA. По сути, используется CUDA, и проект носит соответствующее название, SYCL-for-CUDA.

Пример выбора устройства на SYCL

Пример выбора устройства на SYCL

С использованием этого проекта разработка программного обеспечения теперь может выглядеть следующим образом: для создания нужного приложения можно использовать Intel Data Parallel C++, либо, в случае уже имеющегося CUDA-приложения, портировать его «под SYCL». В последнем случае это позволяет запускать портированное приложение в средах без поддержки CUDA. Разработчики надеются, что Intel включит их наработки в массив кода компилятора Intel LLVM. Более подробную информацию можно найти в официальном блоге Codeplay.

Отдельно отметим рост популярности LLVM как основы для создания новых средств разработки для различных архитектур. На днях был представлен проект HPVM для параллельных гетерогенных вычислений, ранее Google представила MLIR для работы с ИИ-ускорителями, а этой весной в LLVM, наконец, появится официальная поддержка Fortran, что завершит перенос «большой тройки» HPC-языков в инфраструктуру компилятора. 

Постоянный URL: http://servernews.ru/1003005
05.12.2019 [21:12], Владимир Романченко

Intel делает первые шаги по продвижению oneAPI в России

Intel провела первый в мире хакатон по гетерогенному программированию с использованием языка Data Parallel C++ для студентов. 

Одновременно Intel также провела в Нижнем Новгороде первое открытое командное соревнование для разработчиков по решению прикладных задач в области компьютерного зрения с иcпользованием инструментария Intel Distribution of OpenVINO.

Язык Data Parallel C++ (DPC++) является частью проекта oneAPI, представленного на SC19. Финалисты решали задачи по оптимизации кода под процессоры Intel Xeon Gold с использованием DPC++, открытого инструментария oneAPI Base toolkit и облачного сервиса для разработки Intel DevCloud. Призовой фонд студенческого состязания составил 60 тысяч рублей.

Результаты финального тура проверялись на специально сконфигурированных серверах. Основным критерием оценки стала производительность. Победителями стали студенты первого и второго курсов, при этом лучшее решение позволило за время хакатона добиться ускорения вычислений в 14 раз.

Хакатон Intel по компьютерному зрению c продолжался 30 часов, в нем приняли участие 40 опытных разработчиков. Задачей турнира стало создание алгоритмов на основе нейронных сетей для решения одной или нескольких актуальных прикладных задач и создание рабочего прототипа с применением инструментария Intel Distribution of OpenVINO. Сама концепция OpenVINO и стала во многом основой для oneAPI. Призовой фонд хакатона по компьютерному зрению составил 180 тысяч рублей.

Первое место занял проект по распознаванию речи и эмоций по аудио, что является областью применения OpenVINO. «Серебряные» призеры представили способ таргетирования рекламы по распознаванию посетителей магазинов, а также механизм поощрения клиентов за участие в мини-игре с использованием жестов. Третье место присуждено за решение проблемы поиска свободных мест на парковках. 

Отдельно жюри отметило работу по определению номеров автобусов, подъезжающих к остановкам. Озвучивая номера маршрутов, автоматическая система могла бы помочь слабовидящим людям выбрать нужный им транспорт.

Постоянный URL: http://servernews.ru/999133
Система Orphus