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

Высокая производительность *

Методы получения высокой производительности систем

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Измеряем производительность String.format() в Java

Блог компании OTUS Высокая производительность *Java *
Перевод

Я раньше считал, что JDK в целом хорошо оптимизирована, и если в JDK есть простой способ решения какой-то задачи, то он вполне подойдет для большинства ситуаций и будет работать хорошо.

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

В этом посте рассмотрим один из подобных кейсов: поразительно низкая производительность String.format() при простой конкатенации строк.

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

Тест и обзор Kingston FURY Beast DDR4: звериная производительность до 4000 МГц

Блог компании Kingston Technology Высокая производительность *Компьютерное железо Настольные компьютеры Процессоры
Привет, Хабр! Прошло уже около года с момента выхода последнего набора оперативной памяти, к которому была причастна компания Kingston, выпускавшая DDR-модули под маркой HyperX. И вот, после перехода игрового подразделения HyperX компании HP, Kingston продолжила заниматься тем, что умеет лучше всего — выпуском оперативной памяти. Новая линейка памяти представлена топовой серией Kingston FURY Renegade, массовым вариантом Kingston FURY Beast и мобильным решением для ноутбуков Kingston FURY Impact.


Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 1.7K
Комментарии 4

Как мы собирали мозаику из разнородных отчётных данных

Блог компании Московская Биржа Высокая производительность *Oracle *Анализ и проектирование систем *

Привет! Мы уже рассказывали в блоге о том, как работаем с данными на Мосбирже. Но задач, связанных с data, равно как и её разновидностей, настолько много, что одной публикацией точно не обойтись. К примеру, мы – Кирилл Хомутов и Дмитрий Польских – в составе команды ИТ-Финансы обрабатываем данные, которые используются для формирования финансовой отчетности. Сегодня поделимся опытом, как мы научились регулярно получать, агрегировать и «приводить к общему знаменателю» миллионы транзакций из различных ИТ-систем компаний Группы «Московская Биржи».

Не все знают, но Московская биржа – это одна из компаний группы, которая занимается организацией торгов разными классами активов, учетом активов, расчетами. В группу также входят Национальная Товарная Биржа (НТБ), Национальный клиринговый центр (НКЦ), Национальный расчетный депозитарий (НРД) и несколько небольших компаний, которые выполняют узкоспециализированные сервисные функции.

Все участники группы находятся под разным регулированием, по-разному ведут бухгалтерский учёт и сдают разную отчетность. Биржи ведут учёт по стандартам для некредитных финансовых организаций (НФО). НКЦ и НРД ведут учёт уже как банки, закрывая операционный день и т.п.. А сервисные компании ведут учёт по РСБУ в соответствии с требованиями Минфина.

Нам нужно было собрать все эти «разношёрстные» учетные данные и свести в единую модель, чтобы сформировать консолидированную внешнюю отчетность по международным стандартам (МСФО). Добывать информацию приходилось из очень разных источников. Как мы это делали — читайте дальше.

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

Triton: Open Source язык для ядер Deep Learning

Блог компании SkillFactory Высокая производительность *Python *Программирование *Машинное обучение *
Перевод

Подобный Python Triton уже работает в ядрах, которые в 2 раза эффективнее эквивалентных реализаций Torch. А ядра матричного умножения FP16, сравнимые производительностью с cuBLAS, на Triton займут менее 25 строк. Как утверждает автор, многие программисты не могут написать такие ядра. Подробностями о Triton делимся к старту курса по ML и DL.

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

Jellyfish: Экономически целесообразная стратификация данных для крупнейшего хранилища Uber

Высокая производительность *Хранение данных *Хранилища данных *IT-компании
Перевод

Задача

В Uber применяется несколько технологий хранения информации, причем, хранение бизнес-данных зависит от того, какова модель приложения, в которой они применяются. Одна из таких технологий называется Schemaless и обеспечивает моделирование взаимосвязанных записей с представлением в виде одной строки из множества столбцов, а также версионирование для каждого столбца отдельно.

Schemaless в ходу уже пару лет, и там накапливаются данные Uber. Притом, что Uber консолидирует все практические кейсы в Docstore, Schemaless остается источником истины для различных клиентских конвейеров задач, тех, что существуют уже давно. Schemaless как таковая использует быструю (но дорогую) базовую технологию хранения данных, которая позволяет обходиться задержкой порядка нескольких миллисекунд при высоком показателе QPS (запросы в секунду). Кроме того, Schemaless развертывает для каждого региона несколько реплик, чтобы обеспечить сохранность и доступность данных при различных моделях отказов.

Поскольку Schemaless – дорогостоящее хранилище, а данных в нем накапливается все больше, она превратилась в ключевую статью расходов и поэтому требует внимания. Чтобы разобраться в этой ситуации, были проведены замеры, помогающие лучше понять паттерны обращения к данным. Было обнаружено, что в течение некоторого периода времени обращения к данным происходили часто, а после этого – не столь часто. Точная длительность такого периода варьируется от кейса к кейсу, но при любом запросе старые данные все равно должны безусловно предоставляться по запросу.

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

Соседняя очередь всегда движется быстрее

Блог компании Конференции Олега Бунина (Онтико) Высокая производительность *Анализ и проектирование систем *Клиентская оптимизация *Tarantool *

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

Расскажу, что такое очереди, зачем они нужны и как работают. На примере нескольких сценариев объясню, как устроены очереди и какие есть решения. Какие у очередей самые распространенные проблемы и как их избежать. В чем отличия брокеров, их плюсы и минусы, и как все это использовать в своих целях.

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

5 проблем и их решения при создании высоконагруженного сервиса с использованием .NET и Kafka

Блог компании Parimatch Tech Высокая производительность *.NET *

В 1967 году Мелвин Конвей сформулировал известный тезис, без упоминания о котором не обходится практически ни одно руководство по созданию микросервисной архитектуры. И не напрасно, ведь не одно поколение разработчиков сталкивалось с его подтверждениями.

Но если структура коммуникаций компании меняется из-за развития и выхода на новые международные рынки, то приходится менять сам продукт для соответствия потребностям пользователей этих рынков.

Именно с задачей по подготовке продукта к выходу на международные рынки и столкнулась наша команда летом 2020-го года. На тот момент у нас был обширный набор микросервисов, спроектированных и поддерживаемых исходя из старой организационной структуры компании. Поддерживать эту кучу сервисов было сложно и дорого. Более того, куча сервисов уже не соответствовала актуальным требованиям бизнеса и технологическим трендам. Об этом под катом:

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

Linux Page Cache для SRE: основные файловые операции и syscall'ы (часть 1)

Высокая производительность *Системное администрирование *Системное программирование *Разработка под Linux *DevOps *
Перевод

В этой серии постов я хотел бы поговорить о Linux Page Cache. Я считаю, что данные знания теори и инструментов жизненно необходимы и важны для каждого SRE. Общее понимание как работает Page Cache помогает и в рутинных повседневных задачах, и в экстренной отладке на продакшене. При этом Page Cache часто оставляют без внимания, а ведь его лучшее понимание. как правило, приводит к:

- более точному планированию емкости системы и лимитов сервисов и контейнеров;
- улучшенным навыкам отладки приложений, интенсивно использующих память и диски (СУБД и храанилища данных);
- созданию безопасных и предсказуемых сред выполнения специальных задач, связанных с памятью и/или вводом-выводом (например: сценарии резервного копирования и восстановления, rsyncоднострочники и т.д.).

Я покажу, какие утилиты вы можете использовать, когда имеете дело с задачами и проблемами, связанными с Page Cache, как правильно к ним подходить, и как понять реальное использование памяти.

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

Нужно больше ядер: новые чипы разных компаний с десятками и сотнями ядер для высокопроизводительных систем

Блог компании Selectel Высокая производительность *IT-инфраструктура *Компьютерное железо Процессоры

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

Сейчас мы решили собрать вместе информацию о чипах с десятками и сотнями ядер, чтобы эти данные были в одном месте. В подборке — только информация о чипах, которые либо уже выпущены, либо близки к началу производства. Есть и другие проекты, но некоторые из них пока под большим вопросом — о них известно лишь со слов глав компаний, никто их не видел, не трогал и не тестировал.
Читать дальше →
Всего голосов 43: ↑43 и ↓0 +43
Просмотры 6.7K
Комментарии 6

Распределенная общая память (DSM — Distributed Shared Memory)

Высокая производительность *Децентрализованные сети Параллельное программирование *Исследования и прогнозы в IT Распределённые системы *

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

Читать далее
Всего голосов 3: ↑1 и ↓2 -1
Просмотры 2.5K
Комментарии 39

Про GraphQL на клиенте

Высокая производительность *Разработка веб-сайтов *API *
Из песочницы

На текущий момент GraphQL все больше распространяется в энтерпрайзе. И это не удивительно - изящный синтаксис запросов, типизация, ускорение разработки и это далеко не все его плюсы использования.

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

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

Go Deeper
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 5K
Комментарии 21

Разбираем редкого зверя от Nvidia — DGX A100

Блог компании Selectel Высокая производительность *IT-инфраструктура *Компьютерное железо Будущее здесь

Крупные IT-компании располагают дорогими «игрушками», которые скрыты от взоров большинства пользователей. Сегодня мы приоткроем завесу тайны и расскажем про систему, которая оптимизирована для работы с искусственным интеллектом.

Задачи ИИ предъявляют высокие требования к вычислительным и сетевым ресурсам, поэтому наш сегодняшний «гость» приятно порадует своей конфигурацией. Встречайте: NVIDIA DGX A100.
Читать дальше →
Всего голосов 67: ↑66 и ↓1 +65
Просмотры 15K
Комментарии 30

Как прикрутить SQL к чему угодно при помощи Apache Calcite

Блог компании Конференции Олега Бунина (Онтико) Высокая производительность *SQL *Apache *Конференции

Сделать свою собственную SQL-базу данных или запускать SQL-запросы в NoSQL-базе данных — кажется, это очень непростая задача.  А если мы говорим о распределенной БД, то сложность возрастает многократно. Но, к счастью, Apache Calcite — фреймворк с открытым кодом — поможет сделать это довольно легко.

Роман Кондаков, Software Engineer в Querify Labs, на конференции HighLoad++ Весна 2021 рассказал об опыте интеграции Apache Calcite в распределенную in-memory-платформу Apache Ignite. Если ваша система распределена, и вы хотите завести в ней SQL, читайте про то, как устроен Apache Calcite и какие есть нюансы его использования для распределенных систем.  Видео его выступления можно посмотреть здесь.

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

Митап SuperJob по фронтенду больших приложений

Блог компании SuperJob Высокая производительность *Разработка веб-сайтов *JavaScript *Карьера в IT-индустрии

23 сентября в 19:00 SuperJob и Сбер проведут онлайн-митап по фронтенду больших приложений.

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

Насколько быстрее Java 17?

Блог компании Дата-центр «Миран» Высокая производительность *Тестирование IT-систем *Java *Клиентская оптимизация *
Перевод

Решение задачи по составлению расписания турнира с разъездами (TTP) — один из вычислительных тестов в нашем наборе

Позавчера вышла Java 17 с кучей новых функций и усовершенствований. Большинство из них требуют изменения кода. Кроме производительности. Просто заменяете JDK — и получаете бесплатную прибавку производительности. Но насколько большую? Стоит ли она того? Для этого мы провели бенчмарки JDK 17, JDK 16 и JDK 11.
Читать дальше →
Всего голосов 15: ↑12 и ↓3 +9
Просмотры 6.1K
Комментарии 2

Как мы искали экспериментальный полигон для свежих идей и разработали новую торговую платформу

Блог компании Московская Биржа Высокая производительность *Анализ и проектирование систем *IT-инфраструктура *Управление продуктом *

Биржевая ИТ-инфраструктура исторически включает в себя несколько торговых платформ. Три года назад мы создали еще одну. Зачем было инициировать новую разработку при многообразии существующих систем? Рассказывают Александр Стриковский и Александра Кузнецова из Блока развития торгово-клиринговых систем.

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

Реализуем рефлексию при помощи source generators

Высокая производительность *Ненормальное программирование *.NET *C# *

В одной из своих статей я уже описывал как можно реализовать рефлексию при помощи source generator-ов. Тогда цель была продемонстрировать что такое эти ваши генераторы, а сама рефлексия была лишь примером. Сейчас же, я предлагаю сконцентрироваться на рефлексии, и узнать что из этого получиться.

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.8K
Комментарии 12

Нейроморфные вычисления и их успехи

Блог компании RUVDS.com Высокая производительность *Искусственный интеллект Мозг Будущее здесь
Перевод
Вот уже лет сто, а то и больше, человечество мечтает, размышляет, пишет, поёт, снимает фильмы о машинах, которые могут думать, рассуждать и, подобно нам, обладают разумом. Произведения литературного и кинематографического искусства — начиная с романа «Едгин», опубликованного в 1872 году Сэмюэлем Батлером, со статьи Эдгара Аллана По «Игрок в шахматы Мельцеля», с фильма «Метрополис» 1927 года — продемонстрировали миру идею, в соответствии с которой машины могут думать и рассуждать как люди. Причём, в этой идее нет ни магии, ни ещё чего-то фантастического. Те, кого захватывала эта идея, вдохновлялись автоматонами из глубокой древности и работами философов — таких, как Аристотель, Раймунд Луллий, Томас Гоббс и многих, многих других.



Идеи философов о человеческом разуме привели к вере в то, что рациональное мышление можно описать, пользуясь алгебраическими или логическими механизмами. Позже, с появлением электронных приборов, компьютеров и закона Мура, человечество попало в состояние постоянного ожидания того, что вот ещё немного — и появится машина, разум которой сравним с человеческим. Некоторые объявляли разумные машины спасителями человечества, а некоторые видели в этих машинах источник великого бедствия, так как полагали, что появление на Земле второй разумной сущности приведёт к уничтожению первой, то есть — людей.
Читать дальше →
Всего голосов 41: ↑39 и ↓2 +37
Просмотры 5.1K
Комментарии 6

HTTP/3 от А до Я: основные концепции. Часть 1

Блог компании Southbridge Высокая производительность *Разработка веб-сайтов *Серверное администрирование *DevOps *
Перевод

image
Фото Florencia Viadana, Unsplash.com


После почти пятилетних разработок протокол HTTP/3 наконец приближается к окончательному выпуску. Предыдущие итерации уже доступны как экспериментальная функция, но в 2021 году мы ждём широкого распространения протокола. Что такое HTTP/3? Зачем выпускать его так рано после HTTP/2? Как его можно или нужно использовать? Как он влияет на производительность?

Читать дальше →
Всего голосов 88: ↑87 и ↓1 +86
Просмотры 23K
Комментарии 36

Стенд для нагрузочного тестирования: от DEV до PROD

Блог компании Команда Госуслуг Высокая производительность *Тестирование IT-систем *

Привет, читатель!

Меня зовут Василий Кудрявцев, и вот уже ~10 лет я занимаюсь нагрузочным тестированием, а из них последние 1,5 года – в компании РТЛабс.

И сегодня мы поговорим не об инструментах или общих подходах, а об области, которую обычно обходят стороной или собирают на коленке — тестовые стенды для нагрузочного тестирования.

Здесь, на Госуслугах, мы пока только конструируем мечту каждого нагрузочника — свой отдельный, выделенный, рабочий (!) тестовый стенд.  Особенно это мечта актуальна для небольших продуктовых команд.

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

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