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

Подводя итоги нескольких весьма напряженных недель, Intel анонсировала вторую половину своего стека процессоров Core 10-го поколения с низким энергопотреблением. С новым именем Comet Lake, процессоры мощностью до 15 Вт основаны на существующей архитектуре процессора Intel Skylake и 14-нм техпроцессе, оснащены некоторыми дополнениями как для повышения производительности, так и для решения конкретных аппаратных задач. С 6-ти ядерной серией U и 4-х ядерной серией Y, Intel стремится расширить возможности многопоточной производительности в тонком и легком ноутбуке. Новые процессоры дополнят традиционную линейку Intel U и Y. Ядра 10-го поколения будут и в Intel Lake Ice 10 нм, а OEM-производители будут использовать оба семейства продуктов в новых ультрапортативных ноутбуках в этот праздничный сезон.

Intel Comet Lake-U и Comet Lake-Y: до 6 ядер для тонких и легких ноутбуков - 1

В целом, запуск Comet Lake происходит в сложное для Intel время. Компания все еще пытается оправиться от неудач с внедрением 10-нм технологического узла. Несмотря на то, что Intel наконец-то возобновила производство 10 нм, компания пока не в состоянии полностью перевести производство процессоров ведущих поколений на 10 нм. В результате маломощные процессоры Intel этого поколения будут состоять из 14-нм компонентов, основанных на их почтенной архитектуре Skylake, и 10-нм компонентов Ice Lake, включающих новую архитектуру Intel Sunny Cove. 14-нм компоненты нужны, чтобы решить задачи, которые пока не под силу чистому Ice Lake.
Читать полностью »

Zabbix — это система мониторинга. Как и любая другая система, она сталкивается с тремя основными проблемами всех систем мониторинга: сбор и обработка данных, хранение истории, ее очистка.

Этапы получения, обработки и записи данных занимают время. Немного, но для крупной системы это может выливаться в большие задержки. Проблема хранения — это вопрос доступа к данным. Они используются для отчетов, проверок и триггеров. Задержки при доступе к данным также влияют на производительность. Когда БД разрастаются, неактуальные данные приходится удалять. Удаление — это тяжелая операция, которая также съедает часть ресурсов.

Высокая производительность и нативное партиционирование: Zabbix с поддержкой TimescaleDB - 1

Проблемы задержек при сборе и хранении в Zabbix решаются кэшированием: несколько видов кэшей, кэширование в БД. Для решения третьей проблемы кэширование не подходит, поэтому в Zabbix применили TimescaleDB. Об этом расскажет Андрей Гущин — инженер технической поддержки Zabbix SIA. В поддержке Zabbix Андрей больше 6 лет и напрямую сталкивается с производительностью.

Как работает TimescaleDB, какую производительность может дать по сравнению с обычным PostgreSQL? Какую роль играет Zabbix для БД TimescaleDB? Как запустить с нуля и как мигрировать с PostgreSQL и производительность какой конфигурации лучше? Обо всем этом под катом.
Читать полностью »

Написанной мной инструмент командной строки Sloc Cloc and Code (scc), который теперь доработан и поддерживается многими отличными людьми, подсчитывает строки кода, комментарии и оценивает сложность файлов внутри каталога. Здесь нужна хорошая выборка. Инструмент подсчитывает в коде операторы ветвления. Но что такое сложность? Например, заявление «У этого файла сложность 10» не очень полезно без контекста. Чтобы решить эту проблему, я запустил scc на всех исходниках в интернете. Это также позволит найти какие-то крайние случаи, которые я не рассматривал в самом инструменте. Мощное испытание методом грубой силы.

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

Короче говоря, я загрузил и обработал много исходников.

Голые цифры:

  • 9 985 051 репозиториев всего
  • 9 100 083 репозитория хотя бы с одним файлом
  • 884 968 пустых репозиториев (без файлов)
  • 3 500 000 000 файлов во всех репозиториях
  • Обработано 40 736 530 379 778 байт (40 ТБ)
  • Идентифицировано 1 086 723 618 560 строк
  • Распознано 816 822 273 469 строк с кодом
  • 124 382 152 510 пустых строк
  • 145 519 192 581 строк комментариев
  • Общая сложность по правилам scc: 71 884 867 919
  • 2 новые ошибки, найденные в scc

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

Тarantool Cartridge: Sharding Lua Backend in Three Lines - 1

In Mail.ru Group, we have Tarantool, a Lua-based application server and a database united. It's fast and classy, but the resources of a single server are always limited. Vertical scaling is also not the panacea. That is why Tarantool has some tools for horizontal scaling, or the vshard module [1]. It allows you to spread data across multiple servers, but you'll have to tinker with it for a while to configure it and bolt on the business logic.

Good news: we got our share of bumps (for example, [2], [3]) and created another framework, which significantly simplifies the solution to this problem.

Тarantool Cartridge is the new framework for developing complex distributed systems. It allows you to concentrate on writing business logic instead of solving infrastructure problems. Under the cut, I will tell you how this framework works and how it could help in writing distributed services.
Читать полностью »

Премия HighLoad++ вручается профессионалам, оказавшим глубокое положительное влияние на развитие экосистемы интернет-разработки в России. Это благодарность сообщества профессионалов своим лидерам. За труд и самоотверженность, за бессонные ночи и бесчисленные выступления, за веру в свой продукт или технологию.

Чтобы выразить свое признание, мы решили не ограничиваться словами и в прошлом году учредили Премию. Тогда номинантов и 6 лауреатов выбирал экспертный совет, куда вошли все члены программных комитетов всех конференций Онтико за 2018 год.

В 2018 году мы от лица сообщества вручили Премию HighLoad++ Олегу Бартунову, Константину Осипову, Максиму Лапшину, Андрею Аксёнову, Алексею Миловидову, Игорю Сысоеву. Их вклад в развитие индустрии в нашей и не только стране неоспорим. Но на благо сообщества ежедневно трудится гораздо больше, чем шесть человек. Поэтому, естественно, мы не собирались остановиться на единоразовом мероприятии.

Открытое голосование за номинантов Премии HighLoad++ 2019 - 1
Читать полностью »

Разработчик авиадвигателей из России готовит испытательный стенд на «Эльбрусах» за 126 млн рублей - 1

Центральный институт авиационного моторостроения им. П.И. Баранова (ЦИАМ) планирует построить экспериментальный стенд на базе гетерогенной вычислительной платформы с использованием процессоров Intel и «Эльбрус». С этой целью институт собирается потратить 126 млн рублей.

Создание стенда ведется в режиме секретности, которая, впрочем, условна — большое количество информации об этом проекте указано в описании тендерной процедуры в формате закупки у единственного поставщика. Информация о ней была размещена ЦИАМом 7 октября 2019 года на сайте госзакупок.
Читать полностью »

Проблемы пакетной обработки запросов и их решения (часть 2) - 1
Это продолжение статьи «Проблемы пакетной обработки запросов и их решения». Рекомендуется сначала ознакомиться с первой частью, так как в ней подробно описана суть задачи и некоторые подходы к ее решению. Здесь же мы рассмотрим другие методы.
Читать полностью »

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

Зависимость производительности кода от контекста объявления переменных в JavaScript - 1

Изначально эта статья задумывалась как небольшой бенчмарк для собственного использования, да и вообще статьёй быть не планировалась, однако, в процессе проведения замеров всплыли некоторые интересные особенности в реализации архитектуры JavaScript, сильно влияющие на производительность конечного кода в отдельных случаях. Предлагаю, и вам, ознакомится с полученными результатами, попутно также разобрав некоторые смежные темы: циклы for, окружение (контекст выполнения) и блоки.

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

В продолжение темы хочу поделиться своим кодом, который обгоняет std::sort() из актуальных версий GNU C++ Library и (примерно, нет точных данных) повторяет результат "Сортировки Александреску" с CppCon 2019.

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


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