TL;DR: Проблема переносимости CUDA для меня оказалась не столько в самих арифметических операциях, сколько в огромном количестве инфраструктуры вокруг них. Поэтому вместо попытки повторять CUDA runtime я решил перехватить программу раньше — на уровне PTX. Я написал ROUGE‑V — открытый AOT‑компилятор, разработанный по принципу clean‑room: берёт PTX, сгенерированный официальным
nvcc13.4, транслирует его в LLVM IR, дальше собирает обычныйclang. Исполняется на x86-64 и на живой GeForce MX450 (побитово с хост‑эталоном); AMD и RISC‑V — пока только сборка, без вранья про «любое железо».Мой GitHub: Читать полностью »
Рубрика «gpgpu»
ROUGE‑V: как я транслировал CUDA-PTX в LLVM IR и запускал его без CUDA runtime
2026-10-01 в 12:40, admin, рубрики: AMDGPU, CUDA, gpgpu, gpu, LLVM, Nvidia, PTX, risc-v, Компиляторы, транспиляцияКак мы разрабатываем отечественный AI-процессор. Часть 2. Секреты GPGPU
2025-06-23 в 8:11, admin, рубрики: AI, gpgpu, hardwareИтак, анализ возможных вариантов архитектуры AI-процессора и мотивация выбора GPGPU были изложены в Части 1. Но в чём секрет такого успеха GPGPU в техническом разрезе? Давайте попробуем немного углубиться в данную тему.
Теория
Для начала зададимся вопросом – а каков вообще теоретический предел идеального AI-вычислителя? Допустим, мы магическим образом определили оптимальную микроархитектуру и идеально её спроектировали. Можно ли определить, какова будет производительность такого решения?
Как мы разрабатываем отечественный AI-процессор. Часть 1. Почему GPGPU?
2025-06-03 в 15:23, admin, рубрики: AI, gpgpu, hardware, tensor processing units«We have a phrase inside Intel. We are supposed to be a data driven company and the phrase is, "Don't argue with the emotions, argue with the data." »
Andrew S. Grove, Chairman of the Board, Intel Corporation, August 9, 1998
В июле 2023-го года в «Байкал Электроникс» стартовал проект по разработке собственного AI-процессора. В данной публикации мы хотим рассказать, почему мы выбрали именно архитектуру GPGPU, какими данными при решении мы руководствовались, а во второй части немного рассказать о ходе разработки и поделиться полученным опытом.
Почему именно GPGPU?
Ведущий разработчик ChatGPT и его новый проект — Безопасный Сверхинтеллект
2025-04-07 в 9:01, admin, рубрики: 10x engineer, alexnet, AlphaGo, chatgpt, CUDA, DNNResearch, few-shot learning, Google Brain, gpgpu, gpt, gpu, Ilya Sutskever, ImageNet, lenet, Nvidia GTX 580, OpenAI, ruvds_статьи, Safe Superintelligence, seq2seq, TensorFlow, word2vec, Алекс Крижевски, Джеффри Хинтон, илья суцкевер, Компьютерное зрение, машина Больцмана, неокогнитрон, сверхинтеллект, Томаш Миколов
Многие знают об Илье Суцкевере только то, что он выдающийся учёный и программист, родился в СССР, соосновал OpenAI и входит в число тех, кто в 2023 году изгнал из компании менеджера Сэма Альтмана. А когда того вернули, Суцкевер уволился по собственному желанию в новый стартап Safe Superintelligence («Безопасный Сверхинтеллект»).
Илья Суцкевер действительно организовал OpenAI вместе с Маском, Брокманом, Альтманом и другими единомышленниками, причём был главным техническим гением в компании. Ведущий учёный OpenAI сыграл ключевую роль в разработке ChatGPT и других продуктов. Сейчас Илье всего 38 лет — совсем немного для звезды мировой величины.Читать полностью »
Как можно ускорить Python сегодня
2022-12-31 в 10:00, admin, рубрики: cupy, gpgpu, gpu, intel, numba, python, ruvds_перевод, scikit-learn, Блог компании RUVDS.com, многопоточность, ускорители вычислений
Python не перестаёт удивлять многих своей гибкостью и эффективностью. Лично я являюсь приверженцем С и Fortran, а также серьёзно увлекаюсь C++, поскольку эти языки позволяют добиться высокого быстродействия. Python тоже предлагает такие возможности, но дополнительно выделяется удобством, за что я его и люблю.
Этот инструмент способен обеспечивать хорошее быстродействие, поскольку имеет в арсенале ключевые оптимизированные библиотеки, а также возможность динамической компиляции основного кода, который предварительно не компилировался. Однако скорость Python значительно падает, когда дело доходит до обработки крупных датасетов или более сложных алгоритмов. В текущей статье мы разберём:
- Почему столь важно думать о «будущем разнородных вычислений».
- Две ключевых сложности, которые необходимо преодолеть в открытом решении.
- Параллельное выполнение задач для более эффективного задействования CPU.
- Использование ускорителя для дополнительного повышения быстродействия.
Один только третий пункт позволил увеличить быстродействие в 12 раз притом, что четвёртый позволяет добиться ещё большего за счёт ускорителя. Эти простые техники могут оказаться бесценными при работе с Python, когда требуется добиться дополнительного ускорения программы. Описанные здесь приёмы позволяют нам уверенно продвигаться вперёд без длительного ожидания результатов.Читать полностью »
Многим известно, что CUDA является наиболее часто используемой платформой для ускорения массовых параллельных вычислений, применяемых в различных практических и исследовательских областях.
В 2016 году AMD представила в буквальном смысле клон платформы CUDA — ROCm. Альтернативы модулей CUDA для ROCm можно увидеть в таблице с официального сайта AMD.
Таблица соответствия модулей платформ
|
Модуль платформы CUDA |
Модуль платформы ROCm |
|
cuBLAS |
Практическое применение сервера с FPGA
2021-07-10 в 9:00, admin, рубрики: fpga, gpgpu, graphblas, opencl, Алгоритмы, Блог компании Selectel, математика, ПЛИС
В данной статье будет рассказано о попытке ускорить операции над разреженными булевыми матрицами, реализованные на OpenCL, с помощью замены целевой платформы GPGPU на FPGA.
Эта задача возникла при работе над библиотекой примитивов линейной алгебры, необходимых для решения некоторых задач анализа графов. Данные, структурированные в виде графов, играют огромную роль в современной жизни и встречаются в таких областях, как социальные сети, транспортные и коммуникационные сети, являются основой для набирающих популярность графовых баз данных.
Объем таких данных неуклонно растет и потому для получения хорошей производительности в задачах анализа графов все острее встает вопрос о разработке параллельных алгоритмов, что оказывается нетривиальной задачей из-за нерегулярности данных.
Читать полностью »
Используем GPU для повышения производительности JavaScript
2021-05-06 в 9:55, admin, рубрики: cpu, gpgpu, gpu, GPU.js, javascript, Блог компании VDSina.ru, производительность, Разработка веб-сайтов
Мы, разработчики, всегда стремимся искать возможности повышения производительности приложений. Когда речь идёт о веб-приложениях, то улучшения обычно вносятся только в код.
Но думали ли вы об использовании мощи GPU для повышения производительности веб-приложений?
В этой статье я расскажу о библиотеке ускорения JavaScript под названием GPU.js, а также покажу вам, как повысить скорость сложных вычислений.
Что такое GPU.js и почему его стоит использовать?
Если вкратце, GPU.js — это библиотека ускорения JavaScript, которую можно использовать для любых стандартных вычислений на GPU при работе с JavaScript. Она поддерживает браузеры, Node.js и TypeScript.
Кроме повышения производительности если и множество других причин, по которым я рекомендую использовать GPU.js:
- В основе GPU.js лежит JavaScript, что позволяет использовать синтаксис JavaScript.
- Библиотека берёт на себя задачу автоматической транспиляции JavaScript на язык шейдеров и их компиляции.
- Если в устройстве отсутствует GPU, она может «откатиться» к обычному движку JavaScript. То есть вы ничего не потеряете, работая с GPU.js.
- GPU.js можно использовать и для параллельных вычислений. Кроме того, можно асинхронно выполнять множественные вычисления одновременно и на CPU, и на GPU.
Учитывая всё вышесказанное, я не вижу никаких причин не пользоваться GPU.js. Давайте узнаем, как его освоить.
Читать полностью »
Симуляция подъёмной силы Ньютона методом частиц на CUDA
2020-09-14 в 10:10, admin, рубрики: bvh, c++, CFD, concurrent computing, dem, gpgpu, gpgpu (nvidia cuda), HPC, parallel computing, physics, параллельное программирование, Программирование, физикаhttps://www.youtube.com/playlist?list=PLwr8DnSlIMg0KABru36pg4CvbfkhBofAi
Как-то на Хабре мне попалась довольно любопытная статья “Научно-технические мифы, часть 1. Почему летают самолёты?”. Статья довольно подробно описывает, какие проблемы возникают при попытке объяснить подъёмную силу крыльев через закон Бернулли или модель подъёмной силы Ньютона (Newtonian lift). И хотя статья предлагает другие объяснения, мне бы всё же хотелось остановиться на модели Ньютона подробнее. Да, модель Ньютона не полна и имеет допущения, но она даёт более точное и интуитивное описание явлений, чем закон Бернулли.
Основной недостаток этой модели — это отсутствие взаимодействия частиц газа друг с другом. Из-за этого при нормальных условиях она даёт некорректные результаты, хотя всё ещё может применяться для экстремальных условий, где взаимодействием можно пренебречь.
Я же решил проверить, что же произойдёт в модели Ньютона если её улучшить. Что если добавить в неё недостающий элемент межатомного взаимодействия? Исходный код и бинарники получившегося симулятора доступны на GitHub.
Как GPU-вычисления буквально спасли меня на работе. Пример на Python
2020-06-06 в 6:56, admin, рубрики: CUDA, gpgpu, gpu, Nvidia, python, Блог компании Издательский дом «Питер», высокая производительность, ПрограммированиеПривет!
Сегодня мы затрагиваем актуальнейшую тему — Python для работы с GPU. Автор рассматривает пример, тривиальный в своей монструозности, и демонстрирует решение, сопровождая его обширными листингами. Приятного чтения!

