home.social

#оптимизация_производительности — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #оптимизация_производительности, aggregated by home.social.

  1. Мне надоело искать ошибки глазами — я создал бесплатный аудитор для 1С

    Графы функций одним кликом, поиск уязвимостей в сотнях тысяч строк, транзакции в циклах и мёртвые блокировки — всё это можно найти за минуты. История создания бесплатного визуализатора и аудитора кода 1С с открытым исходным кодом.

    habr.com/ru/articles/1034000/

    # #MetaVision #статический_анализ #аудит_кода #визуализация_кода #безопасность_1С #open_source #оптимизация_производительности #графы #SQLite

  2. Реально большая стейт-машина: как мы строили облачную запись и ИИ-конспектирование в Телемосте

    Всем привет! Меня зовут Илья Григорьев, я старший бэкенд-разработчик в команде Телемоста. В этой статье я разберу наш опыт разработки двух фич последнего года — ИИ-конспект с Алисой Про и облачной записи на Диск. Покажу, как мы проектировали их архитектуру, почему не всё получилось с первого раза, с какими системными и техническими ограничениями столкнулись при работе с медиаданными и как в итоге выстроили пайплайн их обработки и анализа.

    habr.com/ru/companies/yandex/a

    #бэкенд #java #postgresql #ffmpeg #стейтмашина #телемост #медиасервер #оптимизация #оптимизация_производительности #backendразработка

  3. Реально большая стейт-машина: как мы строили облачную запись и ИИ-конспектирование в Телемосте

    Всем привет! Меня зовут Илья Григорьев, я старший бэкенд-разработчик в команде Телемоста. В этой статье я разберу наш опыт разработки двух фич последнего года — ИИ-конспект с Алисой Про и облачной записи на Диск. Покажу, как мы проектировали их архитектуру, почему не всё получилось с первого раза, с какими системными и техническими ограничениями столкнулись при работе с медиаданными и как в итоге выстроили пайплайн их обработки и анализа.

    habr.com/ru/companies/yandex/a

    #бэкенд #java #postgresql #ffmpeg #стейтмашина #телемост #медиасервер #оптимизация #оптимизация_производительности #backendразработка

  4. Реально большая стейт-машина: как мы строили облачную запись и ИИ-конспектирование в Телемосте

    Всем привет! Меня зовут Илья Григорьев, я старший бэкенд-разработчик в команде Телемоста. В этой статье я разберу наш опыт разработки двух фич последнего года — ИИ-конспект с Алисой Про и облачной записи на Диск. Покажу, как мы проектировали их архитектуру, почему не всё получилось с первого раза, с какими системными и техническими ограничениями столкнулись при работе с медиаданными и как в итоге выстроили пайплайн их обработки и анализа.

    habr.com/ru/companies/yandex/a

    #бэкенд #java #postgresql #ffmpeg #стейтмашина #телемост #медиасервер #оптимизация #оптимизация_производительности #backendразработка

  5. Реально большая стейт-машина: как мы строили облачную запись и ИИ-конспектирование в Телемосте

    Всем привет! Меня зовут Илья Григорьев, я старший бэкенд-разработчик в команде Телемоста. В этой статье я разберу наш опыт разработки двух фич последнего года — ИИ-конспект с Алисой Про и облачной записи на Диск. Покажу, как мы проектировали их архитектуру, почему не всё получилось с первого раза, с какими системными и техническими ограничениями столкнулись при работе с медиаданными и как в итоге выстроили пайплайн их обработки и анализа.

    habr.com/ru/companies/yandex/a

    #бэкенд #java #postgresql #ffmpeg #стейтмашина #телемост #медиасервер #оптимизация #оптимизация_производительности #backendразработка

  6. Почему AI-агенты такие медленные и что с этим можно сделать?

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

    habr.com/ru/companies/veai/art

    #AIагенты #скорость_AI #параллельное_выполнение #субагенты #оркестратор #автоматизация_разработки #AI_в_программировании #оптимизация_производительности #генерация_кода #code_review_AI

  7. Почему AI-агенты такие медленные и что с этим можно сделать?

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

    habr.com/ru/companies/veai/art

    #AIагенты #скорость_AI #параллельное_выполнение #субагенты #оркестратор #автоматизация_разработки #AI_в_программировании #оптимизация_производительности #генерация_кода #code_review_AI

  8. Почему AI-агенты такие медленные и что с этим можно сделать?

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

    habr.com/ru/companies/veai/art

    #AIагенты #скорость_AI #параллельное_выполнение #субагенты #оркестратор #автоматизация_разработки #AI_в_программировании #оптимизация_производительности #генерация_кода #code_review_AI

  9. Почему AI-агенты такие медленные и что с этим можно сделать?

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

    habr.com/ru/companies/veai/art

    #AIагенты #скорость_AI #параллельное_выполнение #субагенты #оркестратор #автоматизация_разработки #AI_в_программировании #оптимизация_производительности #генерация_кода #code_review_AI

  10. Лицензии уходят, музыка остаётся: как я превратил тему для музыкального клиента в runtime-аддон с блекджеком и WASM

    Около года назад моё желание кастомизировать десктопный клиент популярного музыкального сервиса привело меня в некое сообщество. Всё началось с попытки восстановить заброшенную тему « Blurity » после очередного обновления Electron-хоста, которое сломало все селекторы. Но проект быстро перерос рамки обычных правок CSS. В этой статье я расскажу, как ChromaSync эволюционировал из простого визуального патча в полноценную инженерную систему — runtime-аддон со сложной архитектурой. Мы разберем «анатомию» плеера, создание декларативной системы из 70+ настроек и перенос тяжелой математики аудиореактивных эффектов в изолированное ядро на WASM. Это история о том, как 700 строк JavaScript превратились в 10 000 , а обычная «разукрашка» — в оптимизированную экосистему, умеющую балансировать между визуальной насыщенностью и производительностью системы.

    habr.com/ru/articles/1025248/

    #JavaScript #CSS #WebAssembly #Rust #Electron #Desktop #Аудиовизуализация #Оптимизация_производительности #Кастомизация #музыка

  11. [Перевод] Руководство по анализу и настройке производительности для современных процессоров. Анонс книги

    Привет, Хабр. Хотим поделиться с вами новостью о том, что завершаем более чем годичный фундаментальный проект - готовимся к выпуску русского издания знаменитой книги Дениса Бахвалова " Performance Analysis and Tuning on Modern CPUs: Learn to write fast software like a pro ". Денис теснейшим образом взаимодействовал с нашими редакторами, мы составили глоссарий к русскому изданию и уверены, что книга на долгие годы станет де-факто главным пособием по оптимизации производительности CPU. Книга выросла из многочисленных практических исследований, которыми Денис занимается в компании "Intel", и в качестве анонса мы хотим предложить вам перевод статьи автора, которая вышла ещё в 2019 году и может считаться рассказом о том, как зародилась идея будущей книги. В тексте под катом содержатся многочисленные ссылки на статьи Дениса из блога easyperf.net/notes/ , который также рекомендуем пристально изучить. Русскую книгу ждите в мае.

    habr.com/ru/companies/bhv_publ

    #CPU #процессоры #оптимизация_кода #оптимизация_производительности #алгоритмы #бенчмарки #профессиональная_литература

  12. [Перевод] Руководство по анализу и настройке производительности для современных процессоров. Анонс книги

    Привет, Хабр. Хотим поделиться с вами новостью о том, что завершаем более чем годичный фундаментальный проект - готовимся к выпуску русского издания знаменитой книги Дениса Бахвалова " Performance Analysis and Tuning on Modern CPUs: Learn to write fast software like a pro ". Денис теснейшим образом взаимодействовал с нашими редакторами, мы составили глоссарий к русскому изданию и уверены, что книга на долгие годы станет де-факто главным пособием по оптимизации производительности CPU. Книга выросла из многочисленных практических исследований, которыми Денис занимается в компании "Intel", и в качестве анонса мы хотим предложить вам перевод статьи автора, которая вышла ещё в 2019 году и может считаться рассказом о том, как зародилась идея будущей книги. В тексте под катом содержатся многочисленные ссылки на статьи Дениса из блога easyperf.net/notes/ , который также рекомендуем пристально изучить. Русскую книгу ждите в мае.

    habr.com/ru/companies/bhv_publ

    #CPU #процессоры #оптимизация_кода #оптимизация_производительности #алгоритмы #бенчмарки #профессиональная_литература

  13. [Перевод] Руководство по анализу и настройке производительности для современных процессоров. Анонс книги

    Привет, Хабр. Хотим поделиться с вами новостью о том, что завершаем более чем годичный фундаментальный проект - готовимся к выпуску русского издания знаменитой книги Дениса Бахвалова " Performance Analysis and Tuning on Modern CPUs: Learn to write fast software like a pro ". Денис теснейшим образом взаимодействовал с нашими редакторами, мы составили глоссарий к русскому изданию и уверены, что книга на долгие годы станет де-факто главным пособием по оптимизации производительности CPU. Книга выросла из многочисленных практических исследований, которыми Денис занимается в компании "Intel", и в качестве анонса мы хотим предложить вам перевод статьи автора, которая вышла ещё в 2019 году и может считаться рассказом о том, как зародилась идея будущей книги. В тексте под катом содержатся многочисленные ссылки на статьи Дениса из блога easyperf.net/notes/ , который также рекомендуем пристально изучить. Русскую книгу ждите в мае.

    habr.com/ru/companies/bhv_publ

    #CPU #процессоры #оптимизация_кода #оптимизация_производительности #алгоритмы #бенчмарки #профессиональная_литература

  14. [Перевод] Руководство по анализу и настройке производительности для современных процессоров. Анонс книги

    Привет, Хабр. Хотим поделиться с вами новостью о том, что завершаем более чем годичный фундаментальный проект - готовимся к выпуску русского издания знаменитой книги Дениса Бахвалова " Performance Analysis and Tuning on Modern CPUs: Learn to write fast software like a pro ". Денис теснейшим образом взаимодействовал с нашими редакторами, мы составили глоссарий к русскому изданию и уверены, что книга на долгие годы станет де-факто главным пособием по оптимизации производительности CPU. Книга выросла из многочисленных практических исследований, которыми Денис занимается в компании "Intel", и в качестве анонса мы хотим предложить вам перевод статьи автора, которая вышла ещё в 2019 году и может считаться рассказом о том, как зародилась идея будущей книги. В тексте под катом содержатся многочисленные ссылки на статьи Дениса из блога easyperf.net/notes/ , который также рекомендуем пристально изучить. Русскую книгу ждите в мае.

    habr.com/ru/companies/bhv_publ

    #CPU #процессоры #оптимизация_кода #оптимизация_производительности #алгоритмы #бенчмарки #профессиональная_литература

  15. Почему важно мониторить поисковую систему: Manticore → Prometheus → Grafana

    Один из наших пользователей недавно пришёл к нам со знакомой проблемой: поиск внезапно стал заметно медленнее, хотя внешне ничего явно не ломалось. Сервис работал, ошибок в логах не было, загрузка CPU выглядела нормально, но пользователи уже начали жаловаться, что поиск тормозит. Так обычно и проявляются проблемы с поиском в продакшене. Не как драматичный сбой, а как медленное, ползучее ухудшение. Чуть больше трафика здесь, чуть больше индексации там, и прежде чем вы это заметите, производительность уже просела. К тому моменту, когда пользователи это замечают, настоящая проблема нередко копится уже несколько часов. Без хорошей видимости остаётся только гадать: система перегружена? Одна таблица съедает ресурсы? Или незаметно что-то идёт не так? Вот почему мониторинг важен. С ним расплывчатое «поиск стал медленным» превращается в проблему, которую можно диагностировать и исправить.

    habr.com/ru/articles/1023608/

    #grafanaдашборд #prometheus #мониторинг #сбор_метрик #визуализация_метрик #высокая_производительность #метрики_производительности #оптимизация_производительности

  16. Изучение использования рабочего времени — ход проекта

    В первой статье я описал основные методики, применяемые для изучения использования рабочего времени. В ряде комментариев к статье авторы искали аргументы в поддержку недостаточно загруженных работников – они устают, им нужно больше отдыхать, такая работа похожа на рабство. Именно благодаря таким аргументам и сложилась ситуация, что производительность труда в России в 2-3 раза ниже производительности труда в Европе. Причем в Европе при этом никто не перерабатывает, вопрос скорее в более оптимальной работе, отсутствии потерь и простоев. Моя работа и состоит в обнаружении потерь, простоев, недостаточной или неэффективной загрузки оборудования и работников. Признание проблемы уже позволяет решить ее на 10-20%. Тем более, что производительность труда имеет статус национального проекта, который должен обеспечить 5% ежегодный прирост производительности труда на средних и крупных предприятиях несырьевых отраслей экономики. Но настало время прейти к делу и рассмотреть подготовку и реализацию проекта на предприятии, а также подготовку и согласование рекомендаций. Самое главное замечание – изучать следует полностью все рабочие места. Исключить можно отдел информационных технологий и службу безопасности.

    habr.com/ru/articles/1023222/

    #повышение_производительности #сокращение_штата #сокращение_расходов #бережливое_производство #lean #оптимизация_трудозатрат #оптимизация_рабочего_времени #оптимизация_производительности #оптимизация_процессов #оптимизация_производства

  17. Изучение использования рабочего времени — ход проекта

    В первой статье я описал основные методики, применяемые для изучения использования рабочего времени. В ряде комментариев к статье авторы искали аргументы в поддержку недостаточно загруженных работников – они устают, им нужно больше отдыхать, такая работа похожа на рабство. Именно благодаря таким аргументам и сложилась ситуация, что производительность труда в России в 2-3 раза ниже производительности труда в Европе. Причем в Европе при этом никто не перерабатывает, вопрос скорее в более оптимальной работе, отсутствии потерь и простоев. Моя работа и состоит в обнаружении потерь, простоев, недостаточной или неэффективной загрузки оборудования и работников. Признание проблемы уже позволяет решить ее на 10-20%. Тем более, что производительность труда имеет статус национального проекта, который должен обеспечить 5% ежегодный прирост производительности труда на средних и крупных предприятиях несырьевых отраслей экономики. Но настало время прейти к делу и рассмотреть подготовку и реализацию проекта на предприятии, а также подготовку и согласование рекомендаций. Самое главное замечание – изучать следует полностью все рабочие места. Исключить можно отдел информационных технологий и службу безопасности.

    habr.com/ru/articles/1023222/

    #повышение_производительности #сокращение_штата #сокращение_расходов #бережливое_производство #lean #оптимизация_трудозатрат #оптимизация_рабочего_времени #оптимизация_производительности #оптимизация_процессов #оптимизация_производства

  18. Изучение использования рабочего времени — ход проекта

    В первой статье я описал основные методики, применяемые для изучения использования рабочего времени. В ряде комментариев к статье авторы искали аргументы в поддержку недостаточно загруженных работников – они устают, им нужно больше отдыхать, такая работа похожа на рабство. Именно благодаря таким аргументам и сложилась ситуация, что производительность труда в России в 2-3 раза ниже производительности труда в Европе. Причем в Европе при этом никто не перерабатывает, вопрос скорее в более оптимальной работе, отсутствии потерь и простоев. Моя работа и состоит в обнаружении потерь, простоев, недостаточной или неэффективной загрузки оборудования и работников. Признание проблемы уже позволяет решить ее на 10-20%. Тем более, что производительность труда имеет статус национального проекта, который должен обеспечить 5% ежегодный прирост производительности труда на средних и крупных предприятиях несырьевых отраслей экономики. Но настало время прейти к делу и рассмотреть подготовку и реализацию проекта на предприятии, а также подготовку и согласование рекомендаций. Самое главное замечание – изучать следует полностью все рабочие места. Исключить можно отдел информационных технологий и службу безопасности.

    habr.com/ru/articles/1023222/

    #повышение_производительности #сокращение_штата #сокращение_расходов #бережливое_производство #lean #оптимизация_трудозатрат #оптимизация_рабочего_времени #оптимизация_производительности #оптимизация_процессов #оптимизация_производства

  19. Изучение использования рабочего времени — ход проекта

    В первой статье я описал основные методики, применяемые для изучения использования рабочего времени. В ряде комментариев к статье авторы искали аргументы в поддержку недостаточно загруженных работников – они устают, им нужно больше отдыхать, такая работа похожа на рабство. Именно благодаря таким аргументам и сложилась ситуация, что производительность труда в России в 2-3 раза ниже производительности труда в Европе. Причем в Европе при этом никто не перерабатывает, вопрос скорее в более оптимальной работе, отсутствии потерь и простоев. Моя работа и состоит в обнаружении потерь, простоев, недостаточной или неэффективной загрузки оборудования и работников. Признание проблемы уже позволяет решить ее на 10-20%. Тем более, что производительность труда имеет статус национального проекта, который должен обеспечить 5% ежегодный прирост производительности труда на средних и крупных предприятиях несырьевых отраслей экономики. Но настало время прейти к делу и рассмотреть подготовку и реализацию проекта на предприятии, а также подготовку и согласование рекомендаций. Самое главное замечание – изучать следует полностью все рабочие места. Исключить можно отдел информационных технологий и службу безопасности.

    habr.com/ru/articles/1023222/

    #повышение_производительности #сокращение_штата #сокращение_расходов #бережливое_производство #lean #оптимизация_трудозатрат #оптимизация_рабочего_времени #оптимизация_производительности #оптимизация_процессов #оптимизация_производства

  20. [Перевод] О важности времени в архитектуре систем ИИ

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

    habr.com/ru/companies/otus/art

    #ai #архитектура #задержка_в_ИИ #latency #архитектура_ИИсистем #RAG #векторный_поиск #инференс_моделей #оптимизация_производительности #параллельные_вычисления

  21. Нагрузочное тестирование с нуля: наши грабли, гонка за токеном и рабочий чек-лист

    Привет, хабровчане! Мы команда «Исходного кода» и уже полгода системно занимаемся нагрузочным тестированием (НТ). Раньше такие проверки были от случая к случаю - оттуда и взяли базу знаний. Сегодня хотим поделиться историей одного показательного фейла, который заставил нас пересмотреть весь подход и прийти к системе, которая показала себя, как работающая. Все мы знаем эту боль: фича идеально работает на деве и предпроде, проходит все тесты, а когда под реальной нагрузкой на нее заходят сотни пользователей одновременно - все начинает тормозить, сыпать ошибками или просто падать. Чтобы этого избежать, мы решили, что НТ должно стать обязательным этапом для всех фичевых задач, которые серьезно меняют логику, затрагивают запросы к серверу, кэширование или обработку данных. Главный толчок был простой и жизненный: уже на стадии рассмотрения сервиса мы понимаем, какая нагрузка на него ляжет, поэтому мы выводили правило: «Сервис должен стабильно держать N запросов в секунду», и мы берем эту планку и начинаем работу.

    habr.com/ru/articles/1013866/

    #нагрузочное_тестирование #race_condition #кэширование_данных #memcached #оптимизация_производительности #чеклист_нагрузочного_тестирования #кейс_нагрузочного_тестирования #гонка_процессов #метрики #анализ_работы_web_сервисов

  22. Нагрузочное тестирование с нуля: наши грабли, гонка за токеном и рабочий чек-лист

    Привет, хабровчане! Мы команда «Исходного кода» и уже полгода системно занимаемся нагрузочным тестированием (НТ). Раньше такие проверки были от случая к случаю - оттуда и взяли базу знаний. Сегодня хотим поделиться историей одного показательного фейла, который заставил нас пересмотреть весь подход и прийти к системе, которая показала себя, как работающая. Все мы знаем эту боль: фича идеально работает на деве и предпроде, проходит все тесты, а когда под реальной нагрузкой на нее заходят сотни пользователей одновременно - все начинает тормозить, сыпать ошибками или просто падать. Чтобы этого избежать, мы решили, что НТ должно стать обязательным этапом для всех фичевых задач, которые серьезно меняют логику, затрагивают запросы к серверу, кэширование или обработку данных. Главный толчок был простой и жизненный: уже на стадии рассмотрения сервиса мы понимаем, какая нагрузка на него ляжет, поэтому мы выводили правило: «Сервис должен стабильно держать N запросов в секунду», и мы берем эту планку и начинаем работу.

    habr.com/ru/articles/1013866/

    #нагрузочное_тестирование #race_condition #кэширование_данных #memcached #оптимизация_производительности #чеклист_нагрузочного_тестирования #кейс_нагрузочного_тестирования #гонка_процессов #метрики #анализ_работы_web_сервисов

  23. Нагрузочное тестирование с нуля: наши грабли, гонка за токеном и рабочий чек-лист

    Привет, хабровчане! Мы команда «Исходного кода» и уже полгода системно занимаемся нагрузочным тестированием (НТ). Раньше такие проверки были от случая к случаю - оттуда и взяли базу знаний. Сегодня хотим поделиться историей одного показательного фейла, который заставил нас пересмотреть весь подход и прийти к системе, которая показала себя, как работающая. Все мы знаем эту боль: фича идеально работает на деве и предпроде, проходит все тесты, а когда под реальной нагрузкой на нее заходят сотни пользователей одновременно - все начинает тормозить, сыпать ошибками или просто падать. Чтобы этого избежать, мы решили, что НТ должно стать обязательным этапом для всех фичевых задач, которые серьезно меняют логику, затрагивают запросы к серверу, кэширование или обработку данных. Главный толчок был простой и жизненный: уже на стадии рассмотрения сервиса мы понимаем, какая нагрузка на него ляжет, поэтому мы выводили правило: «Сервис должен стабильно держать N запросов в секунду», и мы берем эту планку и начинаем работу.

    habr.com/ru/articles/1013866/

    #нагрузочное_тестирование #race_condition #кэширование_данных #memcached #оптимизация_производительности #чеклист_нагрузочного_тестирования #кейс_нагрузочного_тестирования #гонка_процессов #метрики #анализ_работы_web_сервисов

  24. Нагрузочное тестирование с нуля: наши грабли, гонка за токеном и рабочий чек-лист

    Привет, хабровчане! Мы команда «Исходного кода» и уже полгода системно занимаемся нагрузочным тестированием (НТ). Раньше такие проверки были от случая к случаю - оттуда и взяли базу знаний. Сегодня хотим поделиться историей одного показательного фейла, который заставил нас пересмотреть весь подход и прийти к системе, которая показала себя, как работающая. Все мы знаем эту боль: фича идеально работает на деве и предпроде, проходит все тесты, а когда под реальной нагрузкой на нее заходят сотни пользователей одновременно - все начинает тормозить, сыпать ошибками или просто падать. Чтобы этого избежать, мы решили, что НТ должно стать обязательным этапом для всех фичевых задач, которые серьезно меняют логику, затрагивают запросы к серверу, кэширование или обработку данных. Главный толчок был простой и жизненный: уже на стадии рассмотрения сервиса мы понимаем, какая нагрузка на него ляжет, поэтому мы выводили правило: «Сервис должен стабильно держать N запросов в секунду», и мы берем эту планку и начинаем работу.

    habr.com/ru/articles/1013866/

    #нагрузочное_тестирование #race_condition #кэширование_данных #memcached #оптимизация_производительности #чеклист_нагрузочного_тестирования #кейс_нагрузочного_тестирования #гонка_процессов #метрики #анализ_работы_web_сервисов

  25. Черная магия unsafe в Go: практические примеры и ошибки использования. Часть 2

    Привет, Хабр! Я — Владимир Балун, и это — вторая часть материала о пакете с отпугивающим названием «unsafe» в Go и том, чем он может быть реально полезен.

    habr.com/ru/companies/oleg-bun

    #go #c #c++ #оптимизация #оптимизация_производительности #бэкенд #golang #golangconf #unsafe

  26. Черная магия unsafe в Go: практические примеры и ошибки использования. Часть 1

    В стандартной библиотеке Go есть пакет с отпугивающим названием «unsafe». Но он может быть реально полезен! Сегодня поговорим о том, как использовать его надежно и эффективно. Привет, Хабр! Я — Владимир Балун, основатель balun.courses и it-interview.io. Эта статья будет для удобства разделена на две части. Из них вы узнаете, как можно создавать срезы без дорогостоящей инициализации, научитесь избавляться от Bound Checks и конвертировать строки в срезы и обратно без лишних копирований и аллокаций памяти. Черную магию мы оставим на десерт, чтобы с ее использованием посмотреть, как можно проехаться по памяти для анализа сложных структур данных, модифицировать иммутабельные строки в Go и получать доступ к приватным полям структур.

    habr.com/ru/companies/oleg-bun

    #go #бэкенд #оптимизация_производительности #C+ #C #Лайфхаки #unsafe

  27. JDBC для профи: пулы, batch, транзакции и скрытые риски

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

    habr.com/ru/companies/otus/art

    #java #JDBC #Базы_данных #Оптимизация_производительности #Connection_Pool #Batch_processing #Транзакции

  28. GraphRAG: 8 способов укротить расширенный контекст у LLM

    В 22% случаев онкологи не могут назначить лечение из-за рисков, связанных с хроническими заболеваниями. Сегодня разбираем кейс, в котором ИИ помогает врачам решать сложнейшие когнитивные задачи, связанные с лечением различных видов рака. Рассказываем про методологию GraphRAG, разбираем, как устроены и работают решения из кейса и проводим сравнительный анализ всех способов решить эту сложнейшую задачу. Привет, Хабр! Это Андрей Носов, AI-архитектор из Raft. Я проектирую и создаю системы, которые должны стоять годами — сегодня речь пойдёт именно о них. В этой статье по мотивам моего доклада на

    habr.com/ru/companies/oleg-bun

    #rag #graphrag #llm #medtech #медицина #Machine_Learning #Оптимизация_производительности #хранилища #PostgreSQL #базы_данных

  29. [Перевод] Я создал вдвое более быстрый лексер, но обнаружил, что узким местом был ввод-вывод

    Я создал лексер ассемблера ARM64 (ну, точнее, сгенерировал его из моего собственного генератора парсера, но пост не об этом), обрабатывающий код на Dart вдвое быстрее официального сканера. Этого результата я добился при помощи статистических методик надёжного измерения малых различий в производительности . Затем я провёл его бенчмарк на 104000 файлов и обнаружил, что узким местом был не мой лексер, а ввод-вывод. Это история о том, как я случайно узнал, почему pub.dev хранит пакеты в виде файлов tar.gz.

    habr.com/ru/articles/989588/

    #лексер #бенчмарки #оптимизация_производительности

  30. Алгоритм резолва зависимостей в Angular Ivy: Математика Блум-фильтров и битовые маски

    Как Angular Ivy находит зависимости за O(1)? Глубокое погружение в алгоритм резолва: от генерации уникальных ID токенов до битовой магии Блум-фильтров. Разбираем, почему строковые токены замедляют ваше приложение и как работает наследование кумулятивных масок в LView. Разложить на биты

    habr.com/ru/articles/988606/

    #Angular #Ivy #Dependency_Injection #Bloom_Filter #Web_Internals #Блумфильтр #Оптимизация_производительности #Frontend_Architecture #Битовые_маски #reverse_engineering

  31. Что такое MCP-сервер, и зачем он нужен

    Привет, Хабр! Меня зовут Андрей Слесаренко — frontend‑разработчик с опытом работы более 8 лет. Прошёл путь от джуна до тимлида, работал над разными высоко‑нагруженными проектами. В начале этого года начал активно использовать LLM‑агентов в повседневной работе — и за это время набил немало шишек. В этой статье хочу поделиться своим опытом, где мои ожидания разошлись с результатом, а также рассказать об основных «шишках», которые я набил при работе с агентами.

    habr.com/ru/articles/981310/

    #mcp #llm #frontend #разработка #оптимизация_производительности #оптимизация_трудозатрат

  32. Ускоряем LLM по максимуму. Как я создал кросс-платформенный Flash Attention с поддержкой Turing+ архитектур и не только

    На сегодняшний день трансформеры правят балом хайпа в мире машинного обучения, особенно после появления ChatGPT и ему подобных языковых моделей. Это стало возможным благодаря лежащему в основе их архитектуры механизму внимания (attention), однако он же и является слабым местом с точки зрения производительности и потребления памяти. Хотя в связи с этим и была разработана изящная концепция Flash Attention (Tri Dao), её существующие реализации имеют ряд ограничений. Поэтому представляю вашему вниманию первую и единственную open-source реализацию Flash Attention 2 на Triton с поддержкой Linux и Windows, Turing-Blackwell архитектур (теперь можно работать в Google Colab и Kaggle), гомо и гетерогенных кластеров, опциональным детерминизмом, а также возможностью ручной кастомизации ядер (kernels) для более гибкой настройки под каждую GPU архитектуру отдельно. Более подробно о том как это устроено и не только — далее в статье.

    habr.com/ru/articles/976576/

    #машинное_обучение #transformers #трансформеры #внимание #attention #flashattention #triton #большие_языковые_модели #llm #оптимизация_производительности

  33. Ускоряем LLM по максимуму. Как я создал кросс-платформенный Flash Attention с поддержкой Turing+ архитектур и не только

    На сегодняшний день трансформеры правят балом хайпа в мире машинного обучения, особенно после появления ChatGPT и ему подобных языковых моделей. Это стало возможным благодаря лежащему в основе их архитектуры механизму внимания (attention), однако он же и является слабым местом с точки зрения производительности и потребления памяти. Хотя в связи с этим и была разработана изящная концепция Flash Attention (Tri Dao), её существующие реализации имеют ряд ограничений. Поэтому представляю вашему вниманию первую и единственную open-source реализацию Flash Attention 2 на Triton с поддержкой Linux и Windows, Turing-Blackwell архитектур (теперь можно работать в Google Colab и Kaggle), гомо и гетерогенных кластеров, опциональным детерминизмом, а также возможностью ручной кастомизации ядер (kernels) для более гибкой настройки под каждую GPU архитектуру отдельно. Более подробно о том как это устроено и не только — далее в статье.

    habr.com/ru/articles/976576/

    #машинное_обучение #transformers #трансформеры #внимание #attention #flashattention #triton #большие_языковые_модели #llm #оптимизация_производительности

  34. Ускоряем LLM по максимуму. Как я создал кросс-платформенный Flash Attention с поддержкой Turing+ архитектур и не только

    На сегодняшний день трансформеры правят балом хайпа в мире машинного обучения, особенно после появления ChatGPT и ему подобных языковых моделей. Это стало возможным благодаря лежащему в основе их архитектуры механизму внимания (attention), однако он же и является слабым местом с точки зрения производительности и потребления памяти. Хотя в связи с этим и была разработана изящная концепция Flash Attention (Tri Dao), её существующие реализации имеют ряд ограничений. Поэтому представляю вашему вниманию первую и единственную open-source реализацию Flash Attention 2 на Triton с поддержкой Linux и Windows, Turing-Blackwell архитектур (теперь можно работать в Google Colab и Kaggle), гомо и гетерогенных кластеров, опциональным детерминизмом, а также возможностью ручной кастомизации ядер (kernels) для более гибкой настройки под каждую GPU архитектуру отдельно. Более подробно о том как это устроено и не только — далее в статье.

    habr.com/ru/articles/976576/

    #машинное_обучение #transformers #трансформеры #внимание #attention #flashattention #triton #большие_языковые_модели #llm #оптимизация_производительности

  35. Ускоряем LLM по максимуму. Как я создал кросс-платформенный Flash Attention с поддержкой Turing+ архитектур и не только

    На сегодняшний день трансформеры правят балом хайпа в мире машинного обучения, особенно после появления ChatGPT и ему подобных языковых моделей. Это стало возможным благодаря лежащему в основе их архитектуры механизму внимания (attention), однако он же и является слабым местом с точки зрения производительности и потребления памяти. Хотя в связи с этим и была разработана изящная концепция Flash Attention (Tri Dao), её существующие реализации имеют ряд ограничений. Поэтому представляю вашему вниманию первую и единственную open-source реализацию Flash Attention 2 на Triton с поддержкой Linux и Windows, Turing-Blackwell архитектур (теперь можно работать в Google Colab и Kaggle), гомо и гетерогенных кластеров, опциональным детерминизмом, а также возможностью ручной кастомизации ядер (kernels) для более гибкой настройки под каждую GPU архитектуру отдельно. Более подробно о том как это устроено и не только — далее в статье.

    habr.com/ru/articles/976576/

    #машинное_обучение #transformers #трансформеры #внимание #attention #flashattention #triton #большие_языковые_модели #llm #оптимизация_производительности

  36. Шаблон проектирования Buffer

    В статье рассмотрен паттерн проектирования «Буфер» как мощный инструмент оптимизации и повышения надежности систем. Показано, чем отличается архитектурный паттерн от простого буфера памяти, приведены разновидности и примеры использования в разных областях: от сетевых протоколов и логирования до встроенного ПО и GPU. Особое внимание уделено ошибкам при смешении понятий, тестированию эффективности и общим параметрам буферов. Статья поможет разработчикам и архитекторам осознанно применять паттерн Буфер для создания производительных и устойчивых решений.

    habr.com/ru/articles/974156/

    #паттерны_проектирования #буфер #архитектура_ПО #оптимизация_производительности #управление_потоками_данных

  37. Шаблон проектирования Buffer

    В статье рассмотрен паттерн проектирования «Буфер» как мощный инструмент оптимизации и повышения надежности систем. Показано, чем отличается архитектурный паттерн от простого буфера памяти, приведены разновидности и примеры использования в разных областях: от сетевых протоколов и логирования до встроенного ПО и GPU. Особое внимание уделено ошибкам при смешении понятий, тестированию эффективности и общим параметрам буферов. Статья поможет разработчикам и архитекторам осознанно применять паттерн Буфер для создания производительных и устойчивых решений.

    habr.com/ru/articles/974156/

    #паттерны_проектирования #буфер #архитектура_ПО #оптимизация_производительности #управление_потоками_данных

  38. Шаблон проектирования Buffer

    В статье рассмотрен паттерн проектирования «Буфер» как мощный инструмент оптимизации и повышения надежности систем. Показано, чем отличается архитектурный паттерн от простого буфера памяти, приведены разновидности и примеры использования в разных областях: от сетевых протоколов и логирования до встроенного ПО и GPU. Особое внимание уделено ошибкам при смешении понятий, тестированию эффективности и общим параметрам буферов. Статья поможет разработчикам и архитекторам осознанно применять паттерн Буфер для создания производительных и устойчивых решений.

    habr.com/ru/articles/974156/

    #паттерны_проектирования #буфер #архитектура_ПО #оптимизация_производительности #управление_потоками_данных

  39. Шаблон проектирования Buffer

    В статье рассмотрен паттерн проектирования «Буфер» как мощный инструмент оптимизации и повышения надежности систем. Показано, чем отличается архитектурный паттерн от простого буфера памяти, приведены разновидности и примеры использования в разных областях: от сетевых протоколов и логирования до встроенного ПО и GPU. Особое внимание уделено ошибкам при смешении понятий, тестированию эффективности и общим параметрам буферов. Статья поможет разработчикам и архитекторам осознанно применять паттерн Буфер для создания производительных и устойчивых решений.

    habr.com/ru/articles/974156/

    #паттерны_проектирования #буфер #архитектура_ПО #оптимизация_производительности #управление_потоками_данных

  40. Джедайские техники Kotlin: inline-функции и reified-типы

    Привет, Хабр! Kotlin радует лаконичным синтаксисом и мощными фичами, но некоторые из них остаются недооценёнными. Сегодня поговорим про две джедайские техники Kotlin, о которых многие слышали, но не все используют в полной мере: это inline -функции и reified -типы. Прокачать Kotlin

    habr.com/ru/companies/otus/art

    #kotlin #inline_функции #функции_высшего_порядка #лямбды_в_Kotlin #оптимизация_производительности #Android

  41. Оптимизируем производительность веб-приложения с Redis

    Привет, Хабр! С вами Александр Константинов, технический эксперт по облачным технологиям из Узнать больше

    habr.com/ru/companies/cloud_ru

    #redis #рабочий_кейс #базы_данных #оптимизация_производительности #производительность_приложений

  42. [Перевод] Самый быстрый способ загрузить 32 000 строк в PostgreSQL с помощью Python

    Команда Python for Devs подготовила перевод статьи о том, как найти самый быстрый способ загрузки данных в PostgreSQL с помощью Python. Автор пошагово сравнил разные методы — от построчных вставок до COPY с потоковой генерацией CSV — и показал, как ускорить процесс более чем в 250 раз при нулевом потреблении памяти.

    habr.com/ru/articles/948854/

    #postgresql #python #psycopg #загрузка_данных #импорт_данных #csv #copy #execute_batch #execute_values #оптимизация_производительности

  43. [Перевод] Самый быстрый способ загрузить 32 000 строк в PostgreSQL с помощью Python

    Команда Python for Devs подготовила перевод статьи о том, как найти самый быстрый способ загрузки данных в PostgreSQL с помощью Python. Автор пошагово сравнил разные методы — от построчных вставок до COPY с потоковой генерацией CSV — и показал, как ускорить процесс более чем в 250 раз при нулевом потреблении памяти.

    habr.com/ru/articles/948854/

    #postgresql #python #psycopg #загрузка_данных #импорт_данных #csv #copy #execute_batch #execute_values #оптимизация_производительности

  44. [Перевод] Самый быстрый способ загрузить 32 000 строк в PostgreSQL с помощью Python

    Команда Python for Devs подготовила перевод статьи о том, как найти самый быстрый способ загрузки данных в PostgreSQL с помощью Python. Автор пошагово сравнил разные методы — от построчных вставок до COPY с потоковой генерацией CSV — и показал, как ускорить процесс более чем в 250 раз при нулевом потреблении памяти.

    habr.com/ru/articles/948854/

    #postgresql #python #psycopg #загрузка_данных #импорт_данных #csv #copy #execute_batch #execute_values #оптимизация_производительности

  45. [Перевод] Самый быстрый способ загрузить 32 000 строк в PostgreSQL с помощью Python

    Команда Python for Devs подготовила перевод статьи о том, как найти самый быстрый способ загрузки данных в PostgreSQL с помощью Python. Автор пошагово сравнил разные методы — от построчных вставок до COPY с потоковой генерацией CSV — и показал, как ускорить процесс более чем в 250 раз при нулевом потреблении памяти.

    habr.com/ru/articles/948854/

    #postgresql #python #psycopg #загрузка_данных #импорт_данных #csv #copy #execute_batch #execute_values #оптимизация_производительности

  46. Швейцария в картах Go: путешествие по Swiss Tables

    Golang продолжает развиваться. Изначальные проектные решения ставятся под сомнения, а новые вызовы заставляют язык меняться: дженерики, итераторы, новая имплементация мап. Однако, даже нововведения приходят к нам не такими, как в других языках. Вспомните обсуждения сразу после релиза тех же дженериков. На Go, как мне кажется, в большинстве своём пишут люди, пришедшие из прочих языков, у кого Golang не первый ЯП. Они привыкли к другому подходу работы с абстракциями. И им порой не хватает того, что предлагает язык Гофера. Swiss Tables — попытка быть в тренде. С вами Кирилл Кузин — ведущий подкастов про IT на канале gIT, где вместе с коллегами по цеху рассматриваем индустрию под разными углами, открывая новые горизонты для вас и самих себя. А работаю ведущим разработчиком в Ви.Tech — IT-дочке ВсеИнструменты.ру. Там мы с командой пишем внутренние системы на Go под задачи бизнеса и по ходу дела разбираемся, как наши инструменты устроены и как реально влияют на процесс разработки. В этой статье речь пойдёт о новых мапах в версии Go 1.24, реализованных по принципу Swiss Tables — швейцарских таблиц. Попробуем найти ответы на вопросы о том, почему мапы изменились, что лежит в основе новой реализации и как к ней пришли.

    habr.com/ru/companies/oleg-bun

    #golang #Swiss_Tables #мапы #оптимизация_производительности #структуры_данных #кэш #go_124 #cockroach #алгоритмы

  47. Швейцария в картах Go: путешествие по Swiss Tables

    Golang продолжает развиваться. Изначальные проектные решения ставятся под сомнения, а новые вызовы заставляют язык меняться: дженерики, итераторы, новая имплементация мап. Однако, даже нововведения приходят к нам не такими, как в других языках. Вспомните обсуждения сразу после релиза тех же дженериков. На Go, как мне кажется, в большинстве своём пишут люди, пришедшие из прочих языков, у кого Golang не первый ЯП. Они привыкли к другому подходу работы с абстракциями. И им порой не хватает того, что предлагает язык Гофера. Swiss Tables — попытка быть в тренде. С вами Кирилл Кузин — ведущий подкастов про IT на канале gIT, где вместе с коллегами по цеху рассматриваем индустрию под разными углами, открывая новые горизонты для вас и самих себя. А работаю ведущим разработчиком в Ви.Tech — IT-дочке ВсеИнструменты.ру. Там мы с командой пишем внутренние системы на Go под задачи бизнеса и по ходу дела разбираемся, как наши инструменты устроены и как реально влияют на процесс разработки. В этой статье речь пойдёт о новых мапах в версии Go 1.24, реализованных по принципу Swiss Tables — швейцарских таблиц. Попробуем найти ответы на вопросы о том, почему мапы изменились, что лежит в основе новой реализации и как к ней пришли.

    habr.com/ru/companies/oleg-bun

    #golang #Swiss_Tables #мапы #оптимизация_производительности #структуры_данных #кэш #go_124 #cockroach #алгоритмы

  48. Швейцария в картах Go: путешествие по Swiss Tables

    Golang продолжает развиваться. Изначальные проектные решения ставятся под сомнения, а новые вызовы заставляют язык меняться: дженерики, итераторы, новая имплементация мап. Однако, даже нововведения приходят к нам не такими, как в других языках. Вспомните обсуждения сразу после релиза тех же дженериков. На Go, как мне кажется, в большинстве своём пишут люди, пришедшие из прочих языков, у кого Golang не первый ЯП. Они привыкли к другому подходу работы с абстракциями. И им порой не хватает того, что предлагает язык Гофера. Swiss Tables — попытка быть в тренде. С вами Кирилл Кузин — ведущий подкастов про IT на канале gIT, где вместе с коллегами по цеху рассматриваем индустрию под разными углами, открывая новые горизонты для вас и самих себя. А работаю ведущим разработчиком в Ви.Tech — IT-дочке ВсеИнструменты.ру. Там мы с командой пишем внутренние системы на Go под задачи бизнеса и по ходу дела разбираемся, как наши инструменты устроены и как реально влияют на процесс разработки. В этой статье речь пойдёт о новых мапах в версии Go 1.24, реализованных по принципу Swiss Tables — швейцарских таблиц. Попробуем найти ответы на вопросы о том, почему мапы изменились, что лежит в основе новой реализации и как к ней пришли.

    habr.com/ru/companies/oleg-bun

    #golang #Swiss_Tables #мапы #оптимизация_производительности #структуры_данных #кэш #go_124 #cockroach #алгоритмы

  49. Швейцария в картах Go: путешествие по Swiss Tables

    Golang продолжает развиваться. Изначальные проектные решения ставятся под сомнения, а новые вызовы заставляют язык меняться: дженерики, итераторы, новая имплементация мап. Однако, даже нововведения приходят к нам не такими, как в других языках. Вспомните обсуждения сразу после релиза тех же дженериков. На Go, как мне кажется, в большинстве своём пишут люди, пришедшие из прочих языков, у кого Golang не первый ЯП. Они привыкли к другому подходу работы с абстракциями. И им порой не хватает того, что предлагает язык Гофера. Swiss Tables — попытка быть в тренде. С вами Кирилл Кузин — ведущий подкастов про IT на канале gIT, где вместе с коллегами по цеху рассматриваем индустрию под разными углами, открывая новые горизонты для вас и самих себя. А работаю ведущим разработчиком в Ви.Tech — IT-дочке ВсеИнструменты.ру. Там мы с командой пишем внутренние системы на Go под задачи бизнеса и по ходу дела разбираемся, как наши инструменты устроены и как реально влияют на процесс разработки. В этой статье речь пойдёт о новых мапах в версии Go 1.24, реализованных по принципу Swiss Tables — швейцарских таблиц. Попробуем найти ответы на вопросы о том, почему мапы изменились, что лежит в основе новой реализации и как к ней пришли.

    habr.com/ru/companies/oleg-bun

    #golang #Swiss_Tables #мапы #оптимизация_производительности #структуры_данных #кэш #go_124 #cockroach #алгоритмы

  50. Удалить полпроекта: как мы переписывали MobX‑сторы на React Query в большом Next.js‑проекте

    Привет. Я Дима Рагозин, фронтенд-разработчик в KTS . Эту статью я хочу начать с предыстории. Полтора года назад на проекте для одного крупного клиента мы получили задачу — ускорить главную страницу. К тому моменту в кодовой базе уже жили два отдельных фронтенд-приложения под две разные платформы — CSR-версия (Client Side Rendering) и SSR‑версия (Server Side Rendering), — а MobX‑сторы все время жизни проекта разрастались вместе с функциональностью. Каждый новый экран приносил еще один класс (а то и несколько), еще кучу связей, и в какой‑то момент мы стали замечать снижение воспринимаемой скорости приложения, избыточные HTTP‑запросы, сложности с поддерживаемостью и другие проблемы, которые становились критичнее по мере роста проекта. В статье я расскажу о том, как мы шаг за шагом перевели такие сторы на React Query, сократили код вокруг запросов на ≈50 % и практически избавились от повторных GET‑ов. Попутно поведаю о наших граблях и поделюсь советами по миграции.

    habr.com/ru/companies/kts/arti

    #mobx #React #React_Query #Nextjs #Frontend #Управление_состоянием #Оптимизация_производительности #ssr