Когда-то я вылез из песочницы с совочком в руке и постом о неблокирующих очередях и передаче данных между потоками. Тот пост был не столько об алгоритмах и их реализации, сколько об измерении быстродействия. Тогда же мне в комментариях задали совершенно резонный вопрос об обычных, блокирующих алгоритмах передачи — насколько они медленнее и вообще как выбрать оптимальный алгоритм под конкретную задачу.
Я конечно обещал и с энтузиазмом принялся за дело, даже получил забавные результаты, однако… какой-то изюминки не хватало, выходило скучно и плоско. В результате мой внутренний перфекционист обьединился с моим нескрываемым прокрастинатором и вдвоем они меня одолели, пост надолго осел в черновиках и даже совесть уже не вздрагивала при виде забытого заголовка.
Однако все меняется, появляются новые технологии, старые исчезают в архивах, и я вдруг решил что пришло время отдавать долги и сдерживать обещания. В качестве наказания мне пришлось все переписать с нуля, если скупой платит дважды, то ленивый дважды переделывает, так мне и надо.
Да, за КДПВ извиняюсь — оно конечно совсем из другой предметной области, но для иллюстрации взаимодействия между потоками подходит тем не менее идеально.
Читать полностью »
Рубрика «высокая производительность» - 123
Передача сообщений между потоками. Классические блокирующие алгоритмы
2016-02-09 в 0:32, admin, рубрики: c++, D, высокая производительность, многопоточность, ПрограммированиеAI, BigData & HPC Digest #4
2016-02-06 в 13:24, admin, рубрики: AI, big data, BigData, data mining, FlyElephant, high performance computing, HPC, R, анализ данных, Блог компании FlyElephant, Большие данные, видео, высокая производительность, дайджест, искусственный интеллект, Мероприятия, Новости, подкасты, статьи
Команда FlyElephant подготовила для Вас новый дайджест, включающий в себя подборку ссылок на интересные материалы по направлениям: искусственный интеллект, большие данные и высокопроизводительные вычисления.
Читать полностью »
Профилировка производительности и памяти с разных углов обзора
2016-02-04 в 17:41, admin, рубрики: android, c++, DGML, DTrace, ETW, ftrace, GraphViz, intel, linux, mac os x, open source, profiling, QtCreator, TraceCompass, tracing, windows, yocto, высокая производительностьВыбор инструмента
Проблема профилировки рано или поздно встает перед любым проектом, претендующим на роль лучшего в своей области. Какой инструмент выбрать — всегда большой вопрос. Одни инструменты показывают одну часть картины, другие другую. И рано или поздно начинаешь писать свой тул (англ. tool — орудиеинструмент), который отвечает на насущные проблемы именно данного конкретного проекта. Однако время на написание своего «орудия» всегда приходится вычитать из времени отведенного на сам проект.
Поэтому серьезный профайлер написать не получается…
Но как получить все и сразу? (Тут мне почему то вспоминается песня Queen «I want it all»)
Читать полностью »
Отчёт по итогам посещения ISC-2015
2016-02-04 в 8:45, admin, рубрики: Блог компании Acronis, Inc, векторизация, высокая производительность, разработка17 сентября 2015 в Москве состоялась очередная ежегодная конференция Intel Software Conference. Программа конференции включала общие выступления (вступительное слово, обзор технологий компании для разработчиков, истории успеха клиентов Intel) и две параллельные сессии: первая была посвящена оптимизации кода и параллельным вычислениям, вторая касалась вопросов мобильной разработки и медиа.
По итогам посещения первой сессии, наибольший интерес у меня вызвал доклад на тему «Векторизуем код с Intel Advisor XE». Помимо демонстрации возможностей инструмента по оптимизации кода, рассматривались общие вопросы векторизации, давались рекомендации к написанию векторизуемого кода, а также разбирались примеры конструкций, препятствующих автоматической векторизации, и давались советы по их устранению. Но давайте обо всём по порядку.
Читать полностью »
Прогноз, облачные вычисления в 2016 году
2016-01-28 в 12:11, admin, рубрики: SaaS, Блог компании HOSTING.cafe, Веб-разработка, высокая производительность, ит-инфраструктура, Облачные вычисления, предстказания От переводчика.
Привет! Меня зовут Мария, я переводчик проекта Хостинг Кафе. Недавно были открыты англоязычные версии сайтов для поиска виртуальных серверов и виртуального хостинга и в свободное время я решила сделать перевод довольно любопытной статьи на тему облачных вычислений.
Переход к облачным технологиям все еще продолжается и в целом воспринимается как норма в сфере IT. В то время как традиционные системы уходят на второй план, перенос критически важных приложений на облачную инфраструктуру становится повсеместным. IDC подтверждает эту тенденцию и прогнозирует, что рынок облачного ПО превысит 112 миллиардов долларов к 2019 году. Что же все это означает для будущего облачных технологий?
Ниже представлены пять прогнозов, которые, как мы считаем, сбудутся в течение 2016 года.
Читать полностью »
Как мы Elasticsearch готовили, или О том, как обработать 36 тысяч логов в секунду
2016-01-25 в 7:33, admin, рубрики: elasticsearcg, logstash, высокая производительность, никто не читает теги, метки: elasticsearcg В один прекрасный момент для одного из проектов появилась необходимость в хранении, обработке и визуализации большого количества логов. Необходимо было индексировать около 10-20 тысяч запросов в секунду с пиками до сотни тысяч, что, как оказалось, является нетривиальной задачей. Для решения этой проблемы мы решили использовать уже знакомый многим ELK- стек. Единственным вопросом было — «а потянет ли он». Как оказалось, потянет, но не сразу.
Читать полностью »
Форсаж под нагрузкой на Symfony + HHVM + MongoDB + CouchDB + Varnish
2016-01-24 в 16:53, admin, рубрики: couchdb, HHVM, mongodb, nosql, php, symfony, symfony2, Varnish, Веб-разработка, высокая производительность
Сегодня хотим рассказать о том, как строили систему, к которой сейчас обращается более 1 млн. уникальных посетителей в день (без учёта запросов к API), о тонкостях архитектуры, а также о тех граблях и подводных камнях, с которыми пришлось столкнуться. Поехали...Читать полностью »
Высокопроизводительный long polling чат
2016-01-22 в 7:24, admin, рубрики: lazarus, open source, Анализ и проектирование систем, высокая производительность, высоконагруженные приложения, высоконагруженные сервисы, метки: высоконагруженные сервисыПредыстория
Есть сайт на Laravel с посещаемостью real-time в 700-1000 человек. Ранее сайт использовал чат стороннего разработчика. Он использовал WebSockets.
Всё было прекрасно, пока в один прекрасный момент разработчик чата отказался его поддерживать в связи с высокой нагрузкой. С этого момента начались поиски альтернативных чат-систем…
Читать полностью »
Конкурс GraphHPC-2016 на самую быструю реализацию параллельного алгоритма Community Detection
2016-01-20 в 16:12, admin, рубрики: community detection, gpgpu, graph processing, HPC, parallel programming, Алгоритмы, высокая производительность, параллельное программирование, Спортивное программирование
Совсем скоро, в рамках третьей научно-технической конференции GraphHPC-2016, стартует конкурс GraphHPC, посвященный проблемам параллельной обработки больших графов с использованием суперкомьютеров. В этот раз участникам предстоит найти самую быструю реализацию задачи Community Detection (поиск сообществ) в неориентированном графе с весами.
Читать полностью »
FlyElephant как инструмент для вычислений на C++, R, Python или Octave
2016-01-20 в 12:31, admin, рубрики: big data, blender, c++, FlyElephant, gcc, gromacs, HPC, java, Julia, octave, OpenFOAM, openmp, python, R, SciLab, Блог компании FlyElephant, высокая производительность, научные расчёты, Облачные вычисления, параллельное программирование, стартапы
Приветствую всех!
Сегодня я расскажу о возможностях платформы FlyElephant для ученых и инженеров, которые в своей работе проводят различные вычисления на C++, R, Python или Octave. Это могут быть научные расчеты, анализ данных, моделирование или другие задачи. 22 января я буду проводить вебинар “Введение в FlyElephant”, на котором детально расскажу о платформе FlyElephant, а сегодня в общих чертах познакомлю вас с ней и покажу процесс проведения расчетов.
FlyElephant — это платформа, которая предоставляет ученым готовую вычислительную инфраструктуру для проведения расчетов, автоматизирует рутинные задачи и позволяет сосредоточиться на основных вопросах исследований.
Читать полностью »