Всем привет! Недавно познакомился с замечательной штукой как OpenMP, на просторах есть много
описаний тут или тут, но нет красивых графиков которые бы показывали эффективность этой технологии. В этом посте я постараюсь наглядно показать эффективность работы с OpenMP на различных платформах. Кому интересно добро пожаловать!
Рубрика «openmp»
Сравнение OpenMP на различных платформах
2017-03-31 в 12:00, admin, рубрики: openmp, Исследования и прогнозы в IT, первый пост, студенты, Учебный процесс в ITПрограммирование многоядерных DSP-процессоров TMS320C66x с использованием OpenMP
2016-12-29 в 13:25, admin, рубрики: dsp, openmp, TMS320C66x, многоядерные DSP, многоядерные процессоры, параллельное программирование, программирование микроконтроллеров, сигнальные процессоры, цифровые сигнальные процессорыВ статье описывается подход к программированию многоядерных сигнальных процессоров на основе OpenMP. Рассматриваются директивы OpenMP, разбирается их смысл и варианты использования. Делается акцент на цифровых сигнальных процессорах. Примеры применения директив OpenMP выбраны приближенными к задачам цифровой обработки сигналов. Реализация проводится на процессоре TMS320C6678 фирмы Texas Instruments, включающем 8 DSP-ядер. В части I статьи рассматриваются основные директивы OpenMP. Во II части статьи планируется дополнить список директив, а также рассмотреть вопросы внутренней организации работы OpenMP и вопросы оптимизации программного обеспечения.
Данная статья отражает лекционно-практический материал, предлагаемый слушателям в рамках курсов повышения квалификации по программе «Многоядерные процессоры цифровой обработки сигналов C66x фирмы Texas Instruments», проводимых ежегодно в Рязанском радиотехническом университете. Статья планировалась к публикации в одном из научно-технических журналов, но в силу специфики рассматриваемых вопросов было принято решение о накоплении материала для учебного пособия по многоядерным DSP-процессорам. А пока данный материал будет копиться, он вполне может полежать на страницах Интернета в свободном доступе. Отзывы и пожелания приветствуются.
Читать полностью »
FlyElephant празднует первый год работы в публичном доступе и анонсирует сотрудничество с HPC-HUB
2016-11-25 в 13:10, admin, рубрики: big data, blender, c++, data mining, docker, FlyElephant, gcc, gromacs, HPC, java, Julia, jupyter, octave, OpenFOAM, openmp, python, R, SciLab, Блог компании FlyElephant, высокая производительность, машинное обучение, научные расчёты, Облачные вычисления, параллельное программирование, стартапы
В ноябре FlyElephant празднует первый год работы в публичном доступе. FlyElephant — это платформа для дата сайнтистов, инженеров и ученых, которая ускоряет бизнес с помощью автоматизации Data Science и Engineering Simulation.
Читать полностью »
Оптимизация нейросетевой платформы Caffe для архитектуры Intel
2016-11-18 в 11:00, admin, рубрики: Intel AVX, Intel MKL, Intel Modern Code, intel xeon, openmp, Блог компании Intel, векторизация, высокая производительность, машинное обучение, оптимизация, параллельные вычисления, метки: Intel Modern CodeСовременные программы, претендующие на звание эффективных, должны учитывать особенности аппаратного обеспечения, на котором они будут исполняться. В частности, речь идёт о многоядерных процессорах, например, таких, как Intel Xeon и Intel Xeon Phi, о больших размерах кэш-памяти, о наборах инструкций, скажем, Intel AVX2 и Intel AVX-512, позволяющих повысить производительность вычислений.
Еле удержались, чтобы не пошутить про руссиано)
Вот, например, Caffe – популярная платформа для разработки нейронных сетей глубокого обучения. Её создали в Berkley Vision and Learning Center (BVLC), она пришлась по душе сообществу независимых разработчиков, которые вносят посильный вклад в её развитие. Платформа живёт и развивается, доказательство тому – статистика на странице проекта в GitHub. Caffe называют «быстрой открытой платформой для глубокого обучения». Можно ли ускорить такой вот «быстрый» набор инструментов? Задавшись этим вопросом, мы решили оптимизировать Caffe для архитектуры Intel.
Читать полностью »
96 вычислительных ядер и оптимизация кода муравьиного алгоритма поиска маршрутов
2016-10-03 в 15:40, admin, рубрики: ACO, intel tbb, intel vtune amplifier, intel xeon, mpi, openmp, Алгоритмы, Блог компании Intel, высокая производительность, высокопроизводительные вычисления, муравьиный алгоритм, оптимизация, разработкаСегодня поговорим об оптимизации кода, который реализует муравьиный алгоритм нахождения оптимальных путей на графах. Узкие места в программе будем искать с помощью Intel VTune Amplifier XE 2016 Update 2, а оптимизировать с использованием MPI, OpenMP и библиотеки Intel Threading Building Blocks.
Наша цель заключается в том, чтобы добиться эффективной работы программы на компьютере с четырьмя процессорами Intel Xeon E7-8890 v4. Система оснащена 512 Гб оперативной памяти, на ней установлена Linux 3.10.0-327.el7.x86_64, код компилировался с помощью Intel Parallel Studio XE 2016 U2.
Читать полностью »
Сообщество экспертов, совместная работа над проектами и другие обновления платформы FlyElephant
2016-07-27 в 6:51, admin, рубрики: big data, blender, c++, docker, FlyElephant, gcc, gromacs, HPC, java, Julia, jupyter, Microsoft Azure, octave, OpenFOAM, openmp, python, R, SciLab, Блог компании FlyElephant, высокая производительность, научные расчёты, Облачные вычисления, параллельное программирование, стартапы
Команда FlyElephant рада анонсировать релиз платформы FlyElephant 2.0, в который вошли следующие обновления: внутреннее сообщество экспертов, совместная работа над проектами, публичные задачи, поддержка Docker и Jupyter, новое хранилище данных и работа с HPC кластерами.
FlyElephant — платформа для исследователей данных, инженеров и ученых, которая предоставляет готовую вычислительную инфраструктуру для проведения высокопроизводительных вычислений и рендеринга, помогает находить партнеров и совместно работать над проектами, а также управлять всеми ресурсами из одного места. Платформа состоит из 3-х основных компонентов:
- Compute. Быстрый доступ к вычислительному кластеру в облаке с нужным программным обеспечением или HPC кластеру, а также автоматизация проведения расчетов.
- Collaborate. Совместная работа над проектами и сообщество экспертов, где можно найти партнеров, чтобы вместе решить сложную задачу или получить квалифицированную консультацию.
- Manage. Управление лицензиями, программным обеспечением, вычислительными ресурсами, шаблонами, алгоритмами, данными и результаты в одном месте.
Среди нововведений отметим следующие:
Читать полностью »
Чистим лук (но не плачем): методики оптимизации
2016-05-24 в 9:51, admin, рубрики: Code for Good, fortran, openmp, optimization, parallel computing, threading, Блог компании Intel, ПрограммированиеЭта статья представляет собой формализованный ответ на публикацию на форуме IDZ. Проблема, которую описывал автор исходной публикации, заключалась в том, что производительность работы кода не увеличивалась в достаточной степени при использовании OpenMP на 8-ядерном процессоре E5-2650 V2 с 16 аппаратными потоками. Потребовалось некоторое время на форуме, чтобы помочь автору публикации и предоставить ему необходимые подсказки, однако времени для оптимизации кода было недостаточно. В этой статье описываются дальнейшие методики оптимизации в дополнение к описанным на форуме IDZ.
Видео-туториалы запуска вычислительных задач на Python, R, С++, Octave и Blender во FlyElephant
2016-03-29 в 15:30, admin, рубрики: blender, c++, data mining, FlyElephant, gcc, gromacs, HPC, java, Julia, octave, OpenFOAM, openmp, python, R, SciLab, Блог компании FlyElephant, научные расчёты, Облачные вычисления, параллельное программирование, стартапыПару недель назад, наша команда выпустила свежий релиз FlyElephant — платформа для ученых, которая предоставляет готовую вычислительную инфраструктуру для проведения расчетов, помогает находить партнеров и совместно работать над проектами, а также управлять всеми данными из одного места.
В качестве вычислительного ресурса сейчас используется облако Azure, а пользователи могут запускать вычислительные задачи, написанные с помощью С++ (с поддержкой OpenMP), R, Python, Octave, Scilab, Java, Julia, OpenFOAM, GROMACS, Blender на серверах с количеством ядер от 1 до 32 и оперативной памятью до 448 ГБ.
Сегодня мы хотим поделиться видео-туториалсами запуска задач во FlyElephant. Под катом вы найдете видео, как запускать вычислительные задачи, написанные с помощью С++, R, Python, Octave и рендерить изображения с помощью Blender, а также промо-код для получения бесплатных дополнительных часов работы ваших задач.
Читать полностью »
Работа с приватными репозиториями и другие обновления платформы FlyElephant
2016-03-07 в 23:04, admin, рубрики: big data, blender, c++, FlyElephant, gcc, gromacs, HPC, java, Julia, Microsoft Azure, octave, OpenFOAM, openmp, python, R, SciLab, Блог компании FlyElephant, высокая производительность, научные расчёты, Облачные вычисления, параллельное программирование, стартапыКоманда платформы FlyElephant подготовила ряд обновлений, которые позволяют работать с приватными репозиториями, повышают безопасность системы и улучшают работу с задачами.
FlyElephant — это платформа для ученых, которая предоставляет готовую вычислительную инфраструктуру для проведения расчетов, помогает находить партнеров и совместно работать над проектами, а также управлять всеми данными из одного места. FlyElephant автоматизирует рутинные задачи и позволяет сосредоточиться на основных вопросах исследований.
В качестве вычислительного ресурса используется облако Azure. Пользователи могут запускать вычислительные задачи, написанные с помощью С++ (с поддержкой OpenMP), R, Python, Octave, Scilab, Java, Julia, OpenFOAM, GROMACS, Blender на серверах с количеством ядер от 1 до 32 и оперативной памятью до 448 ГБ.
Среди нововведений можно отметить следующие:
Читать полностью »
Собираем XGBoost под OS X
2016-02-14 в 16:54, admin, рубрики: c++, clang, intel, openmp, python, xcode, xgboost, машинное обучение XGBoost — С++ библиотека, реализующая методы градиентного бустинга, которую все чаще можно встретить в описаниях алгоритмов-победителей на Kaggle. Для использования из R или Python есть соответствующие обвязки, но саму библиотеку необходимо собрать из исходников. Запустив make, я увидел массу ошибок, сообщающих о ненайденных хидерах и неподдерживаемом OpenMP. Ну, не впервой.
Читать полностью »