Рубрика «оптимизация производительности» - 2
Ускоряем LLM по максимуму. Как я создал кросс-платформенный Flash Attention с поддержкой Turing+ архитектур и не только
2025-12-16 в 18:37, admin, рубрики: attention, FlashAttention, llm, Transformers, triton, большие языковые модели, внимание, машинное обучение, оптимизация производительности, трансформерыШаблон проектирования Buffer
2025-12-07 в 10:16, admin, рубрики: архитектура по, буфер, оптимизация производительности, паттерны проектирования, управление потоками данныхМожно ли сказать про буфер что то ещё, что ещё не сказано? Когда мы слышим термин буфер, то первое что придёт в голову - речь идёт об области памяти для временного хранения данных.
Действительно Википедия определяет термин «Буфер (информатика)», как "область памяти, используемая для временного хранения данных при вводе или выводе", но далее идёт пояснение Читать полностью »
FastCGo: как мы ускорили вызов C-кода в Go в 16,5 раза
2025-07-03 в 5:58, admin, рубрики: c++, cgo, deckhouse, fastcgo, Go, prometheus, оптимизация кода, оптимизация производительности, разработка поВсем привет! Меня зовут Владимир Пустовалов, я C++ разработчик в команде Deckhouse компании «Флант». Мои коллеги — DevOps-инженеры — на данный момент обслуживают более 600 кластеров, и, естественно, в каждом из них развёрнута система мониторинга.
Изначально мы использовали Prometheus — опенсорсную систему мониторинга, написанную на Go. По нашей статистике, она занимала около 20 % ресурсов каждого кластера. Мы не могли с этим мириться и поэтому разработали проект под названием Prom++, в котором многократно сократили потребление оперативной памяти и снизили нагрузку на центральный процессор.
У нас есть ERP! Разве этого недостаточно для автоматизации бизнес-процессов?
2025-07-02 в 7:16, admin, рубрики: автоматизация бизнес-процессов, автоматизация предприятий, закупки, оптимизация запросов, оптимизация производительности, оптимизация рабочего времени, планирование ресурсов, планирование цикла разработки, производствоЕсли задать вопрос искусственному интеллекту “зачем нужна ERP-система” мы получим следующий ответ:
«ERP‑система нужна для упрощения, автоматизации и эффективного управления бизнес‑процессами в организации. Она собирает важные данные в одном месте, чтобы их анализировать и решать задачи бизнеса.»
Как ускорить сложение и вычитание при помощи 2^51
2025-06-05 в 7:31, admin, рубрики: вычитание, оптимизация производительности, перенос, сложение
Помните, как долго выполняется сложение на бумаге?
¹¹ ¹
6876
+ 3406
------
10282
Начиная с «единиц», мы складываем 6 + 6 = 12, записываем 2 и переносим 1. Затем пошагово двигаемся влево, пока складываемые разряды не закончатся.
Софт на диете: как мы в DCAP OCR разгоняли
2024-09-11 в 12:25, admin, рубрики: DCAP, fileauditor, ocr, оптимизация производительности, распознавание изображений, ресурсоемкость, СёрчИнформ
Привет!
Мы в «СёрчИнформ» 20 лет создаем софт для защиты информации и постоянно его оптимизируем. Например, последовательно работаем над ресурсоемкостью продуктов (низкая нагрузка на оборудование – важное преимущество для заказчиков), и придумали в этом направлении много удачных (не только наше мнение) решений.
Челлендж по обработке миллиарда строк на Go: от 1 минуты 45 секунд до 4 секунд
2024-03-06 в 18:53, admin, рубрики: Go, высокая производительность, оптимизация производительности, работа с файлами, челлендж
Пару недель назад я прочитал о запавшем мне в душу челлендже по обработке миллиарда строк, поэтому захотел решить его на Go.
Я немного опоздал, соревнования проводились в январе. И на Java. Меня не особо интересует Java, зато Читать полностью »
Ускоряем Python в сто раз при помощи менее чем ста строк на Rust
2023-04-30 в 14:15, admin, рубрики: numpy, pyo3, python, Rust, ruvds_перевод, библиотеки python, Блог компании RUVDS.com, оптимизация производительности
Однажды на работе у нас возникла проблема с производительностью одной из наших основных Python-библиотек.
Эта библиотека формирует фундамент нашего конвейера 3D-обработки. Это довольно большая и сложная библиотека, использующая NumPy и другие научные пакеты Python для выполнения широкого спектра математических и геометрических операций.
Кроме того, наша система должна работать на мощностях компании с ограниченными ресурсами CPU, и хотя поначалу она справлялась хорошо, с ростом количества одновременных физических пользователей у нас начали возникать проблемы, а наша система едва выдерживала нагрузку.
Мы пришли к выводу, что для работы с увеличившейся нагрузкой нужно сделать систему, по крайней мере, в пятьдесят раз быстрее, и решили, что помочь в этом нам может Rust.
Так как проблемы производительности, с которыми мы столкнулись, встречаются довольно часто, мы можем воссоздать и решить их прямо здесь, в (не такой уж короткой) статье.
Так что заварите себе чаю (или кофе) и я расскажу вам (а) о самой проблеме и (б) о нескольких итерациях оптимизаций, которые мы смогли применить для решения этой проблемы.
Если вы хотите сразу перейти к получившемуся коду, то читайте раздел «Подведение итогов».
Читать полностью »
Производительность торговой платформы на простом примере
2019-01-26 в 17:03, admin, рубрики: время отклика, высокая производительность, Компьютерное железо, компьютерные сети, оптимизация производительности, процессор, Серверная оптимизация, торговая платформа
В этой статье я хочу в научно-популярной форме рассказать об оптимизации времени отклика в торговых платформах бирж и банков (HFT). Для справки речь идет о временах от сотен наносекунд до сотен микросекунд. Для большинства других приложений многие приведенные ниже методы оптимизации неактуальны просто в силу отсутствия столь жестких требований.
Обычно мы рассматриваем производительность в единицах пропускной способности. Например в Гигафлопах. Задача оптимизации в таких случаях сводится к выполнению максимального количества вычислений за единицу времени или решение задачи за минимальное время. Дизайн процессора рассчитан в первую очередь на достижение максимального количества вычислений за единицу времени и стандартные техники оптимизации на то же самое.
Однако существуют приложения где важнее время отклика, например торговые платформы в компьютерном трейдинге (HFT), поисковики, робототехника и телеком. Время отклика – это время выполнения «единичной» операции данного типа, например от получения пакета с текущими котировками с биржи до посылки заказа на биржевую операцию. На самом деле время отклика и пропускная способность (количество операций данного типа в единицу времени) тесно связаны, но разница – принципиальна. Увеличить пропускную способность часто можно просто добавив железа (больше серверов), но улучшить время отклика подобным образом проблематично (кроме случаев пиковых нагрузок).
Как мы нашли критичную уязвимость AspNetCore.Mvc и перешли на собственную сериализацию
2019-01-10 в 11:41, admin, рубрики: AspNetCore.Mvc, Блог компании Retail Rocket, оптимизация производительности, Программирование, сериализация, уязвимостьПривет!
В этой статье мы хотим поделиться нашим опытом в оптимизации производительности и исследовании особенностей AspNetCore.Mvc.

Предыстория
Несколько лет назад на одном из наших нагруженных сервисов мы заметили существенное потребление ресурсов CPU. Это выглядело странно, так как задачей сервиса было фактически взять сообщение и переложить его в очередь, предварительно произведя над ним некоторые операции, такие как валидация, дополнение данными, и т.п.
В результате профилирования мы обнаружили, что большую часть процессорного времени “съедает” десериализация. Мы выкинули стандартный сериализатор и написали свой на Jil, в результате чего потребление ресурсов снизилось в разы. Все работало как нужно и мы успели об этом позабыть.
Читать полностью »

