Рубрика «высокая производительность» - 145

Профилировка производительности OpenMP приложений

OpenMP – пожалуй, самая распространённая модель параллельного программирования на потоках, на системах с общей памятью. Ценят её за высокоуровневые параллельные конструкции (в сравнении с программированием системных потоков) и поддержку разными производителями компиляторов. Но этот пост не про сам стандарт OpenMP, про него есть много материалов в сети.

Распараллеливают вычисления на OpenMP ради производительности, о чём, собственно, и статья. Точнее, об измерении производительности с помощью Intel VTune Amplifier XE. А именно, как получить информацию о:

  • Получении профиля всего OpenMP приложения
  • Профиле отдельных параллельных регионов OpenMP (время CPU, горячие функции и т.д.)
  • Балансе работы внутри отдельного параллельного региона OpenMP
  • Балансе параллельного/последовательного кода
  • Уровне гранулярности параллельных задач
  • Объектах синхронизации, времени ожидания и передачах управления между потоками

Читать полностью »

Внимание: тег «юмор».

И в заключение. Мы пришли к выводу, что MySQL — это прекрасная база данных для нашего сайта. Вопросы?

Да, у меня есть вопрос. Почему вы не использовали MongoDB? MongoDB — это горизонтально масштабируемая база данных, она не использует SQL или JOINы, поэтому обладает высокой производительностью.

Это прекрасный вопрос. Мы изучили несколько NoSQL баз данных и поняли, что все варианты пока ещё незрелы для применения на работающих проектах. MySQL — это проверенная база данных, которая используется во всём мире и имеет все необходимые нам функции.

Но она не масштабируется. Все знают, что реляционные базы данных не масштабируются, потому что они используют JOINы и записывают на диск.
Читать полностью »

Миграция фотографий или ещё одна очередь на MySQL Недавно мы писали о том, как перед нами впервые встала задача крупномасштабной миграции данных пользователей между дата-центрами и о том как мы ее решили.
В этот раз мы подробнее остановимся на том, каким образом осуществлялась миграция фотографий пользователей и какие структуры данных использовались для ограничения создаваемой нагрузки на сервера с фотографиями.
Ежедневно пользователи Badoo загружают примерно 3 миллиона фотографий. Для их хранения мы выделили специальный кластер серверов, занимающихся также изменением размеров, наложением «водяных знаков», импортом фотографий из других социальных сетей и прочими манипуляциями с файлами.
Все машины этого кластера можно условно разделить на три группы. Первая ― это серверы, отвечающие за быструю отдачу фотографий пользователям (можно сказать, собственная реализация CDN). В контексте миграции эти серверы нам не будут интересны. Вторая группа ― это хранилища с дисками, на которых, собственно, и находятся все фотографии. И третья группа ― это серверы, предоставляющие интерфейс ко второй группе, условно назовём их фотосерверами. На них по оптоволокну смонтированы дисковые массивы хранилищ, на эти же машины происходит загрузка фотографий и здесь же работают все скрипты, выполняющие какие-либо операции с файлами.
Таким образом, для PHP-кода совершенно неважно, на каком именно диске какого хранилища находится фотография. Все, что нужно сделать, это перенести фотографии пользователя с одного фотосервера на другой и обновить эту информацию в базе данных и некоторых демонах. Здесь важно отметить, что все фотографии пользователя всегда находятся на одном фотосервере.
Читать полностью »

Довольно подробное и интересное изложение материала, касающегося кэша и использования.

Автор, Mark Nottingham, — признанный эксперт в области HTTP-протокола и веб-кэширования. Является председателем IETF HTTPbis Working Group. Принимал участие в редактировании HTTP/1.1, part. 6: Caching. В настоящий момент участвует в разработке HTTP/2.0.

Текст распространяется под лицензией Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.

От переводчика: об опечатках и неточностях просьба сообщать в личку. Спасибо.
Читать полностью »

Qualcomm и Xilinx начали поставки образцов микросхем произведенных по технологии 20нмКолесо научно-технического прогресса человечества совершило еще один проворот — за последнюю неделю Qualcomm и Xilinx начали поставки микросхем, произведенных на тайваньской фабрике TSMC по технологии 20нм.

В случае Qualcomm речь идет о поставках образцов SoC Snapdragon 805. В отличии от Snapdragon 800 — немного повышена тактовая частота CPU-ядер (те же ядра Krait, c 2.3 до 2.5ГГц), и на 40% повышена производительность ускорителя 3D графики + поддержка 4k видео. Серийные поставки и конечные устройства — в первой половине 2014.

Xilinx — также начала поставки партнерам образцов своих самых современных 20нм UltraScale FPGA, но datasheet-ы на них пока в открытом доступе найти не удалось. Поставки образцов для всех желающих (у кого хватит на это денег) — также в первом квартале 2014.

До конца 2014-го года TSMC планирует запустить суммарно 25 продуктов по технологии 20нм. И если для центральных процессоров прирост производительности впечатляющим быть не обещает (там скорость ограничивает грубо говоря большАя средняя длина проводников, а не транзисторы), существенный прирост будет на регулярных вычислениях (видеокарты и GPGPU).Читать полностью »

Dell HPC приходит на помощь ученым
О британских ученых, которые подарили миру не один десяток открытий разной степени сомнительности, мы неоднократно слышали. Но обсуждая очередное из них, мы редко задумываемся, как вообще совершаются открытия и что нужно для того, чтобы они состоялись. Оставим в стороне научную базу, опыт и подготовку ученых (это все тема для отдельного материала), а сконцентрируемся на технологической составляющей их работы. Логично предположить, что в современных университетах расчеты производятся на мощной современной технике, опыты проводятся на новейшем лабораторном оборудовании, иначе привнести в науку что-то новое в наши дни будет практически невозможно.Читать полностью »

Хотелось бы сказать, что Stack Overflow — масштабный проект, но это не так. Я имею ввиду мы добились многого, но я не могу назвать наш проект “большим”, ещё рано. Давайте я приведу в пример некоторые цифры — с какой нагрузкой мы имеем дело сейчас. Срез статистики за 24 часа от 12 ноября 2013 года. Это обычный будний день. Отмечу, что здесь представлена информация только по нашим собственным вычислительным мощностям, без CDN.

Как работает Stack Overflow — железо

Читать полностью »

В этой статье я собираюсь описать Graceful Restart на Go. Graceful Restart важен для Go вебприложения. Go обладает одним недостатком. В Go нет возможности перезагружать код вовремя исполнения. Поэтому разработчики на Go встречаются с проблемой, которой нет в серверах написанных на Java, .NET или PHP. Если нужно обновить код сервера написанного на Go, то процесс сервера надо остановить и запустить новый процесс. Это понижает доступность сервера в момент обновления кода.

В предыдущей статье я описал Балансировщик на Go в 200 строк. На базе балансировщика можно обеспечить высокую доступность вовремя обновления приложения, но как тогда обновить сам балансировщик. Использование балансировщика часто может быть просто лишним. Если ваш сервер запущен на Mac OS X или Linux, то есть другой способ обновить код сервера и обработать все запросы поступившие в момент перезапуска сервера. Этим способ является Graceful Restart.
Читать полностью »

AMD анонсировала новую версию видеокарты FirePro S10000, которая используется в серверах и суперкомпьютерах. Прежних 6 ГБ встроенной памяти GDDR5 многим не хватало, поэтому в новой версии объём памяти увеличен до 12 ГБ.

AMD анонсировала видеокарту с 12 ГБ RAM

AMD называет FirePro S10000 самой мощной серверной видеокартой в мире. Производительность пары GPU в вычислениях с плавающей запятой составляет 5,91 терафлопс с числами одинарной точности и 1,48 терафлопс с числами двойной точности. Обмен данными с памятью осуществляется на скорости 480 ГБ/с (240 ГБ/с на каждый GPU). Потребляемая мощность — 375 ватт.
Читать полностью »

Квантовый компьютер стал немножко ближе к реальности после эксперимента физиков из университета Саймона Фрейзера (Канада). Они смогли сохранить состояние кубита в комнатной температуре на протяжении 39 минут. Это значительное достижение, если учесть, что предыдущий мировой рекорд равнялся 25 секундам.

Кубит продержался 39 минут при комнатной температуре

Для этого эксперимента кубиты получили из атомов фосфора, внедрённых в очень чистый кристалл кремния (на фото), путём бомбардировки их магнитными импульсами, чтобы вызвать квантовую суперпозицию.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js