Как стать автором
Обновить
3.95
Рейтинг

GPGPU *

Технология Nvidia для реализации алгоритмов

Сначала показывать
Порог рейтинга

Реальные примеры, как ИИ оптимизирует дизайн микросхем

Блог компании Дата-центр «Миран» GPGPU *Машинное обучение *Производство и разработка электроники *Искусственный интеллект

Перегруженность интегральной схемы, где через отдельные участки проходит слишком много цепей (красным цветом)

Сегодня в РФ рассматриваются планы создать полноценную инфраструктуру для производства микросхем, организовать 300 дизайн-центров с штатом минимум по 100 профильных специалистов и запустить новые фабрики. В этой связи интересно посмотреть, какие методы ML используются в проектировании современной микроэлектроники. Что-то можно перенять для отечественных разработок.
Читать дальше →
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 2.2K
Комментарии 0

Новости

Ректоры и президенты неожиданно согласились рассказать студентам, что их ждет в микроэлектронике

GPGPU *FPGA *Программирование микроконтроллеров *Процессоры

Мы на Школе Синтеза двадцать суббот учили школьников и студентов проектировать процессоры на FPGA. Для выпуска мы решили пригласить крутых топов, и на наше удивление, откликнулись сразу семеро:

1. Александр Редькин, гендир и основатель компании Syntacore, которая разрабатывает будущий флагман российcких процессоров для линуксных ноутбуков - суперскаляр с внеочередным исполнением иструкций, совместимый по системе команд с архитектурой RISC-V.

2. Сергей Сергеевич Шумилин - заместитель директора по науке компании Миландр, российского лидера по разработке микроконтроллеров, пионера лицензирования ядер ARM и надежды российcких пользователей ПЛИС.

3. Николай Суетин - главный микроэлектронщик фонда Сколково, бывший руководитель R&D Интела в России.

4. Сергей Михайлович Абрамов - член-корреспондент РАН, руководитель разработки суперкомпьютера СКИФ и других HPC проектов.

5. Игорь Рубенович Агамирзян - бывший менеджер Микрософта, Российской Венчурной Компании, вице-президент Высшей Школы Экономики и программист.

6. Александр Тормасов - ректор Иннополиса, Chief Scientist компании Parallels, гуру виртуализации, лектор по компьютерной архитектуре.

7. Тимур Палташев - известный специалист по архитектуре компьютерной графики, c 25-летним опытом в Silicon Valley и работой с питерским ИТМО.

UPD: Потом присоединились:

8. Окунев Константин Евгеньевич - Директор по технологическому развитию ГК «Элемент»

9. Максимов Евгений Викторович - Директор по развитию экосистемы и образовательных инициатив Группы компаний YADRO

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

Это состоится в субботу 23 апреля в Капсуле №2 Технопарка Сколково в 12:00.

Как записаться и что было на 3x последних
Всего голосов 23: ↑17 и ↓6 +11
Просмотры 15K
Комментарии 79

Вычисляем на видеокартах. Технология OpenCL. Часть 1b. Пишем для OpenCL

Блог компании Яндекс Практикум Высокая производительность *Программирование *GPGPU *Видеокарты
22 июня автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов провёл вебинар «Вычисляем на видеокартах. Технология OpenCL».



После перерыва продолжаем публикацию текстовой версии вебинара.


В этой части мы наконец напишем на OpenCL полноценную программу, которая нарисует красивое изображение.

У программы для OpenCL есть две части: kernel-код и host-код — то, что выполняется на видеокарте, и то, что выполняется на компьютере. Кроме того, программу нужно скомпилировать и запустить. Всё это будет рассмотрено в сегодняшней статье. Начнём с самого интересного — напишем часть kernel.

В предыдущих сериях


Прежде чем начать, напомним основные термины из предыдущей части.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 3.7K
Комментарии 4

Платформа Deepstream от Nvidia для систем на базе компьютерного зрения

Блог компании Accenture GPGPU *Processing *TensorFlow *Визуальное программирование *

Компьютерное зрение – это увлекательная область искусственного интеллекта, имеющая огромное значение в реальном мире. Forbes ожидает, что к 2022 году рынок компьютерного зрения достигнет оборота 50 миллиардов долларов, а всех нас ждет новая волна стартапов в этой области [1]. В своей статье я хотел бы поделиться своим опытом и опытом Data Science-команды компании Accenture по созданию цифрового решения потоковой аналитики на базе компьютерного зрения.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.7K
Комментарии 0

Вычисляем на видеокартах. Технология OpenCL. Часть 1a. Как работает OpenCL

Блог компании Яндекс Практикум Высокая производительность *Программирование *GPGPU *Видеокарты
22 июня автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов провёл вебинар «Вычисляем на видеокартах. Технология OpenCL».



Мы подготовили для вас его текстовую версию, для удобства разбив её на смысловые блоки.

0. Зачем мы здесь собрались. Краткая история GPGPU.
1a. Как работает OpenCL.
1b. Пишем для OpenCL.
2. Алгоритмы в условиях массового параллелизма.
3. Сравнение технологий.

Мы обещали, что разберём написание полноценной программы уже в этой части, но материала оказалось слишком много, и мы разбили эту часть надвое. В первой половине расскажем про основные принципы, которые должен знать каждый OpenCL-разработчик, а во второй напишем программу.

Есть мнение, что для написания эффективного кода для GPU программист обязан понимать архитектуру видеокарты. И это мнение не чьё-нибудь там, а NVIDIA (см. Лекции NVIDIA по GPGPU). Не будем спорить и разберём базовые принципы работы видеокарты.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры 7.6K
Комментарии 9

Вычисляем на видеокартах. Технология OpenCL. Часть 0. Краткая история GPGPU

Блог компании Яндекс Практикум Высокая производительность *Программирование *GPGPU *Видеокарты
22 июня автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов провёл вебинар «Вычисляем на видеокартах. Технология OpenCL».

Мы подготовили для вас его текстовую версию, для удобства разбив её на смысловые блоки.

  • 0 (вводная часть). Зачем мы здесь собрались. Краткая история GPGPU.
  • 1. Пишем для OpenCL.
  • 2. Алгоритмы в условиях массового параллелизма.
  • 3. Сравнение технологий.

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

Цикл будет полезен и тем, кто уже знаком с OpenCL: в нём мы поделимся некоторыми хаками и неочевидными наблюдениями из собственного опыта.

CPU — в помойку?


В статье будем рассматривать технологию GPGPU. Разберёмся, что значат все эти буквы. Начнем с последних трёх — GPU. Все знают аббревиатуру CPU — Central Processor Unit, или центральный процессор. А GPU — Graphic Processor Unit. Это графический процессор. Он предназначен для решения графических задач.

Но перед GPU есть ещё буквы GP. Они расшифровываются как General-Purpose. В аббревиатуре опускают словосочетание Computing on. Если собрать всё вместе, получится General-Purpose Computing on Graphic Processor Unit, что по-русски — вычисления общего назначения на графическом процессоре.



То есть процессор графический, но мы почему-то хотим вычислять на нём что-то, что вообще к графике никакого отношения не имеет. Например, прогноз погоды, майнинг биткоинов. Моя задача в ближайшее время — объяснить, зачем нужно на процессоре для графики обучать, например, нейросети.
Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Просмотры 9.3K
Комментарии 29

Практическое применение сервера с FPGA

Блог компании Selectel Алгоритмы *GPGPU *Математика *FPGA *

В данной статье будет рассказано о попытке ускорить операции над разреженными булевыми матрицами, реализованные на OpenCL, с помощью замены целевой платформы GPGPU на FPGA.

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

Объем таких данных неуклонно растет и потому для получения хорошей производительности в задачах анализа графов все острее встает вопрос о разработке параллельных алгоритмов, что оказывается нетривиальной задачей из-за нерегулярности данных.
Читать дальше →
Всего голосов 53: ↑50 и ↓3 +47
Просмотры 6.2K
Комментарии 16

Атака на Nvidia DeepStream с помощью некорректного фрейма видео в формате H264

Высокая производительность *Информационная безопасность *GPGPU *Машинное обучение *Искусственный интеллект

Nvidia DeepStream - широко известный в узких кругах инструмент для инференса на нейронных сетях и другой высокопроизводительной обработки видео-потоков в реальном времени на оборудовании от Nvidia.

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

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 3.4K
Комментарии 3

На пути к Матрице: как происходит исследования в области построения симуляций и искуственной жизни

Блог компании Timeweb Cloud Open source *Виртуализация *GPGPU *Научно-популярное
Перевод

О проекте


ALiEn — это программа моделирования искусственной жизни, основанная на специализированном физическом и рендеринговом движке в CUDA. Он предназначен для моделирования цифровых организмов, встроенных в искусственные экосистемы, и для имитации условий (до)биотической эволюции.

Узнайте о целях проекта и о том, как начать.



Функции

  • Реалистичные физические расчеты кинематических и термодинамических процессов повреждаемых и склеиваемых твердых тел
  • Программируемый материал для моделирования цифровых организмов и эволюции
  • Встроенный графический редактор для проектирования собственных машин
  • Моделирование и рендеринг на GPU
  • Программное обеспечение с открытым исходным кодом и доступно под GNU General Public License, Version 3 (GPLv3).

Под катом два примера («Самопроверяющиеся репликаторы» и «Репликация на основе информации») применения данного программного комплекса.
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 3.6K
Комментарии 0

Дебри графики или как пройти собеседование на программиста компьютерной графики в GameDev

C++ *Git *GPGPU *API *CGI (графика) *
Recovery mode

Ребята, всем привет!!!

Выдалась у меня свободная минута и решил я собрать небольшой гайд на прохождение собеседования по направлению программиста 3D графики для GameDev компаний. Сам я работаю в данной сфере и очень много общаюсь с различными людьми, теми кто только приходит собеседования и теми, кто уже трудится достаточно давно и за плечами не один выполненный проект и множество решенных рабочих вопросов и задач. Если вам интересная данная тема, то прошу всех под кат.

Для большинства компаний принято разделять данную профессию/направление на два:

Первые - это специалист игровой графики и Вторые - это специалисты компьютерной графики. В чем же разница? Скажем так, первое является закономерным продолжением второго, но не всегда. Например, вы начинаете работать как VFX специалист, создаете партикловые (частицы) эффекты, "прикручиваете" к ним трехмерные модели, собираете все из частей, пишите шейдера и работаете с кодовой базой. То есть здесь вы больше сконцентрированы на визуальном оформлении игры и отдельных ее элементах. В ваши задачи входит разработка визуальных эффектов на "приемлемом" уровне с учетом общей стилистики игры, ее жанра, цветового оформления (хорор, mathc-3d, ферма, песочница и т.д.). Вопросы оптимизации, здесь важны, но они не так глобальны;

Читать далее
Всего голосов 15: ↑2 и ↓13 -11
Просмотры 6.8K
Комментарии 24

Используем GPU для повышения производительности JavaScript

Блог компании VDSina.ru Разработка веб-сайтов *JavaScript *GPGPU *
Перевод
image

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

Но думали ли вы об использовании мощи 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. Давайте узнаем, как его освоить.
Читать дальше →
Всего голосов 38: ↑36 и ↓2 +34
Просмотры 11K
Комментарии 13

«Томограф» для нефтегазовых месторождений, или Пересечение трёхмерной расчётной сетки и плоскости на CUDA

Блог компании РН-БашНИПИнефть Программирование *C++ *GPGPU *Карьера в IT-индустрии
В данной статье приведены описание и алгоритм решения задачи построения рисунка внутренностей месторождения, являющегося результатом пересечения расчётной сетки с плоскостью. А также приведены тайминги построения решения, которые получаются на типичном компьютере геолога-модельера или гидродинамика.

image
Визуализация расчётной сетки и куба
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 2.3K
Комментарии 0

AES против осциллографа

Криптография *GPGPU *
Из песочницы

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

Читать далее
Всего голосов 22: ↑21 и ↓1 +20
Просмотры 5.5K
Комментарии 1

Software ecosystems: принципы построения

Блог компании Huawei Высокая производительность *GPGPU *История IT Процессоры
image

У этой статьи тяжелая судьба. Пару месяцев назад меня попросили написать обзор на предмет построения программных экосистем для разных архитектур. Я поначалу отнекивался да отшучивался в том духе что, экосистема –это не биология. Это — даже не технология. Это — исключительно про деньги. И иногда про политику. Потом собрал волю в кулак, мысли в кучу, cел и написал все буквально за один день. На английском. Затем обзор перевели на китайский и опубликовали. “По дороге” переводчик существенно улучшил текст и добавил пару интересных мыслей. Потом я решил, что текст может быть небезынтересен аудитории Хабра, а также полезен мне, чтобы ссылаться на него в дальнейшем. И начал ваять русский вариант, вооружившись английским оригиналом и китайским переводом. Это была та еще борьба со специфичными английскими терминами (SW ecosystem ?= программная экосистема, enabling ?= продвижение, application engineer ?= инженер по приложениям) и малопонятными пока иероглифами. В итоге русский текст занял больше времени, чем английский и китайский вместе взятые… Так бывает.
Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 2.7K
Комментарии 5

Сравнение времени выполнения алгоритма на CPU и GPU

C++ *GPGPU *Параллельное программирование *
Recovery mode

Использование CUDA Runtime API для вычислений. Сравнение CPU и GPU вычислений


В данной статье я решил провести сравнение выполнения алгоритма написанного на C++ на центральном и графическом процессоре(выполнение вычислений с помощью Nvidia CUDA Runtime API на поддерживаемом GPU Nvidia). CUDA API позволяет выполнение некоторых вычислений на графическом процессоре. Файл c++ использующий cuda, будет иметь расширение .cu.
Схема работы алгоритма приведена ниже.



Задача алгоритма состоит в том, что найти возможные числа X, при возведении которых в степень degree_of, будет получатся исходное число max_number. Сразу отмечу, что все числа которые будут передаваться GPU, будут хранится в массивах. Алгоритм, выполняемый каждым потоком, имеет приблизительно следующий вид:
Читать дальше →
Всего голосов 17: ↑6 и ↓11 -5
Просмотры 5.4K
Комментарии 41

Симуляция подъёмной силы Ньютона методом частиц на CUDA

Программирование *C++ *GPGPU *Параллельное программирование *Физика
Из песочницы

https://www.youtube.com/playlist?list=PLwr8DnSlIMg0KABru36pg4CvbfkhBofAi


Как-то на Хабре мне попалась довольно любопытная статья “Научно-технические мифы, часть 1. Почему летают самолёты?”. Статья довольно подробно описывает, какие проблемы возникают при попытке объяснить подъёмную силу крыльев через закон Бернулли или модель подъёмной силы Ньютона (Newtonian lift). И хотя статья предлагает другие объяснения, мне бы всё же хотелось остановиться на модели Ньютона подробнее. Да, модель Ньютона не полна и имеет допущения, но она даёт более точное и интуитивное описание явлений, чем закон Бернулли.


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


Я же решил проверить, что же произойдёт в модели Ньютона если её улучшить. Что если добавить в неё недостающий элемент межатомного взаимодействия? Исходный код и бинарники получившегося симулятора доступны на GitHub.


Перед тем как мы начнём, я бы хотел сразу обозначить, что это статься не о физике самой модели. Эта статья о GPGPU-программировании. Мы не будем рассматривать физические свойства самой модели, потому что она груба и не подходит для настоящих расчётов. И всё же, эта неточная модель даёт куда более интуитивное описание явления подъёмной силы, чем закон Бернулли.

Всего голосов 66: ↑65 и ↓1 +64
Просмотры 12K
Комментарии 46

Новости Intel Arch Day 2020: Intel Xe GPU в ассортименте

Блог компании Intel GPGPU *Производство и разработка электроники *Процессоры


Мы продолжаем свой репортаж о новостях, которые принес прошедший всего день назад Intel Architecture Day 2020. Сегодняшняя их порция касается графических процессоров Intel Xe — стал известен весь ассортимент их микроархитектур на ближайшую перспективу. Не обошлось без дополнений и обновлений.
Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 3.3K
Комментарии 3

Пишем спецификацию под Nvidia Kepler (бинарники CUDA, версия языка sm_30) для Ghidra

GPGPU *C *Реверс-инжиниринг *
Из песочницы
Для обычных процессорных языков уже написано довольно много спецификаций для Ghidra, однако для графических ничего нет. Оно и понятно, ведь там своя специфика: предикаты, константы, через которые передаются параметры в том числе, и другие вещи, унаследованные от шейдеров. Кроме того формат, который используется для хранения кода, зачастую проприетарный, и его нужно самостоятельно ревёрсить.

В этой статье на двух примерах разберёмся, что к чему.
Читать дальше →
Всего голосов 17: ↑17 и ↓0 +17
Просмотры 1.6K
Комментарии 15

Как GPU-вычисления буквально спасли меня на работе. Пример на Python

Блог компании Издательский дом «Питер» Высокая производительность *Python *Программирование *GPGPU *
Перевод
Привет, Хабр!

Сегодня мы затрагиваем актуальнейшую тему — Python для работы с GPU. Автор рассматривает пример, тривиальный в своей монструозности, и демонстрирует решение, сопровождая его обширными листингами. Приятного чтения!


Читать дальше →
Всего голосов 44: ↑41 и ↓3 +38
Просмотры 41K
Комментарии 55

По ту сторону закона Мура

Блог компании Huawei Высокая производительность *GPGPU *Процессоры
Слухи о смерти закона Мура ходили, сколько я себя помню. Рассуждения о том, что мы приближаемся к размерам атома и о том, что скоро вся затея станет нерентабельной, я слышал и 30, и 20, и 10 лет назад. Вот только инженеры раз за разом их опровергали. Именно инженерный гений сделал закон Мура одним из “самоисполняющихся пророчеств”.

Не собираюсь рассуждать о том, достигла технология своего предела или еще нет. Несмотря на радиофизическое образование, я в ней разбираюсь очень условно. Желающим вникнуть могу посоветовать обратиться к недавнему обзору. Я же подпишусь под точкой зрения еще одного очень уважаемого мной мыслителя Боба Колвелла.

image

Teм временем чипмейкеры продолжают строить (ну или по крайней мере анонсировать) новые фабрики, работающие по новым технологиям. Значит, это все еще выгодно. По мне так “пациент скорее жив, чем мертв”. Mуровская экспансия остановится тогда, когда сервер с двумя процессорами произведенными по новой технологии станет дороже, чем сервер с 4мя произведенными по старой. А это пока далеко не так. Мне доводилось работать и с 4-head и даже с 8-head. Но они собираются на заказ и стоят как маленький самолет.

Моя же задача сегодня рассказать о том как технология влияет на архитектуру и программирование. О том что нас ждет “по ту сторону закону Мура”. Ибо многие тенденции очевидны уже сейчас. Итак.
Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 4.4K
Комментарии 59

Вклад авторов