Как стать автором
Обновить
199.13

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

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

Сначала показывать
Порог рейтинга
Уровень сложности

Индия выходит на рынок полупроводников: когда ожидать мощные индийские чипы?

Время на прочтение4 мин
Количество просмотров4.8K

В последние годы глобальная электронная отрасль пережила не один кризис, что повлияло на различные индустрии, от автомобилестроения до производства электроники. Индия, похоже, решила разрубить этот гордиев узел для себя. Руководство страны заявило о намерении создать независимую и мощную полупроводниковую индустрию.

В 2024 году страна запустила масштабную программу по развитию производства микросхем. Первые заводы запустят к 2027 году. В условиях сильной конкуренции с уже устоявшимися мировыми лидерами, такими как Тайвань, Южная Корея и США, Индия надеется стать важным игроком на глобальной арене. Подробности — под катом.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+47
Комментарии6

Трансформация или чемодан без ручки (часть 5) Так дальше работать нельзя! Нужна трансформация. И что дальше?

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров776

Поделюсь опытом о процессе трансформации технического продукта компании, когда все осознают необходимость изменений, но фактический запуск преобразований сталкивается с препятствиями. Хотя ключевые руководители согласны с необходимостью трансформации, процесс часто затягивается на этапе обсуждений. Важную роль в этом играет назначение ответственного за трансформацию, наделённого полномочиями и ресурсами. Покажу три возможных варианта ответственного лица: доброволец, руководитель отдела или опытный технический специалист, отмечая, что последний вариант наиболее эффективен.

Продолжу рассказывать что нужно для проведения успешной трансформации

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

Просто не копируй это

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров43K

То, о чем я собираюсь рассказать в статье настолько тривиально, что любой, даже начинающий, разработчик уже это знает - я правда очень на это надеюсь. Тем не менее, приходящий на ревью код, показывает, что люди как делали, так и продолжают делать что-то подобное:

- bool LoadAnimation(str::string filename);
- void DrawLines(std::vector path);
- Matrix RotateObject(Matrix m, Angle angle);
- int DrawSprite(Sprite sprite);

Что общего у этих функций? Аргумент по значению. И каждый раз, когда вызывается подобный функционал в коде, создается копия входных данных в своем временном контексте и передается внутрь функции. И можно еще простить редко вызываемый код, вроде загрузки анимаций или понадеяться на компилятор, что сработают оптимизации и он уничтожит копирование данных, но как назло, чаще всего такой подход к разработке уничтожает только перформанс и фпсы.

Читать далее
Всего голосов 28: ↑24 и ↓4+30
Комментарии80

Как работает поисковое ранжирование для миллионов объявлений Авито

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров7.3K

Привет! Меня зовут Илья Валяев, я data science team lead поискового ранжирования в Авито. В статье расскажу, как у нас всё устроена система ранжирования, какие технологии используем и как именно улучшаем поисковые выдачи. 

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

Читать далее
Всего голосов 25: ↑23 и ↓2+25
Комментарии16

Что расскажут на Joker 2024: безумие в хорошем смысле слова

Время на прочтение17 мин
Количество просмотров2.3K

Пока многие ждут фильм «Джокер: Безумие на двоих», Java-разработчиков сильнее волнует приближающаяся конференция Joker 2024.

Про что-то на ней тоже можно сказать «безумие», но в хорошем смысле. Например, некоторым разработчикам безумно важна производительность, и они хотят считать каждую миллисекунду там, где другие скажут «и так сойдёт». На Joker будет подходящий им контент — вроде доклада о профилировании «Что можно успеть за половину миллисекунды?»

А кто-то из небольшой компании скажет: «По нашим меркам в VK Видео безумные масштабы и нагрузки». И на конференции можно будет заглянуть под капот этого проекта — в докладе о собственной реализации HTTP(S)-сервера для быстрой раздачи видеоконтента.

Отдельная история — «кейноуты», общие открывающие/закрывающие доклады. Они могут отходить от Java-специфики, так что один из них будет посвящён использованию ИИ современными художниками. И судя по описанию «ИИ сегодня — главный Джокер», там без некоторого безумия тоже не обойдётся.

Но для тех, кому безумия не хочется, есть и много «обычных», но полезных докладов: о Spring, хранении данных, популярных инструментах… Публикуем всю программу конференции — смотрите, что в ней интересно для вас.

Программа Joker 2024
Всего голосов 10: ↑9 и ↓1+14
Комментарии0

Что нового слышно о шине CXL: заметки с саммита по вычислениям, памяти и хранению данных

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.6K

Приветствую, на связи снова Сергей Баширов, ведущий разработчик из R&D-команды Cloud.ru. Недавно я посетил очередной Compute, Memory, and Storage Summit, на котором было довольно много докладов на тему Compute Express Link (CXL). В статье сделал краткую выжимку из выступлений, а также поделился своими наблюдениями и выводами. Рассказал, чем полезна CXL и как устроена эта технология, разобрал сценарии применения в облачной инфраструктуре, а также поделился ссылками на интересные доклады по теме.

Читать дальше
Всего голосов 9: ↑9 и ↓0+14
Комментарии0

Блеск и нищета WebAssembly

Уровень сложностиСложный
Время на прочтение20 мин
Количество просмотров12K

Всем привет! Сейчас за окном осенние деньки 2024 года. Вещает Пройдаков Евгений. Сейчас я руковожу группой разработки среды исполнения языка eXtraction and Processing в R&D департаменте Positive Technologies.

Доменно специфичный язык eXtraction and Processing является важной частью движка поведенческого анализа, используемого в таких продуктах Positive Technologies, как MaxPatrol SIEM и PT ISIM. Сегодня хотелось представить вашему вниманию выжимку нашего R&D процесса в экспериментах с WebAssembly. Узнаем, что такое WebAssembly. Поймём, как его можно встроить в программный продукт. Коснёмся инструментов разработки и сред исполнения WebAssembly. А также в рамках одной статьи пройдём путь от постановки задачи до результатов по разработке среды исполнения для доменно специфичного языка программирования. Кроме того, мы разберем некоторые проблемы, которые могут появиться у вас при попытке собрать и отладить большой С++ проект под WebAssembly. Материал может быть особенно полезен тем, кто хочет использовать WebAssembly за пределами веб‑браузера.

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

На старт, внимание, поехали!
Всего голосов 43: ↑42 и ↓1+54
Комментарии15

Цифра в горном деле. Часть 1. Предиктивная аналитика на шламопроводах

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.6K

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

Читать далее
Всего голосов 9: ↑6 и ↓3+8
Комментарии0

Портативные игровые консоли: пять новинок осени 2024 года

Время на прочтение4 мин
Количество просмотров14K

Привет, Хабр! На связи Идар Табухов. В прошлый раз я рассказывал о пяти интересных компьютерных играх, которые выйдут этой осенью. А сегодня обсудим новинки игрового «железа». Некоторые консоли можно купить уже сейчас, а другие только готовятся к выпуску. Жду вас под катом!

Читать далее
Всего голосов 10: ↑9 и ↓1+17
Комментарии59

Дэвид Харрис, автор «Цифровой схемотехники и архитектуры компьютера», ответил на вопросы про его следущую книгу и вообще

Время на прочтение13 мин
Количество просмотров12K

Встретился на ланч с Дэвидом Харрисом, автором (вместе с Сарой Харрис) популярного учебника «Цифровая Схемотехника и Архитектура Компьютера», который за последние 10 лет помог закрыть монументальную дыру в техническом образовании десятков вузов России и Украины. До этого учебника во многих вузах сразу после триггеров шло программирование микроконтроллеров, то есть раньше у многих студентов вообще не возникала база для проектирования современных чипов по маршруту RTL‑to‑GDSII, технологии, которая за последние 30 лет привела нас к смартфонам, быстрому интернету и ускорителям ИИ.

Учебник Дэвида активно используется на Школе Синтеза Цифровых Схем, которую поддерживают 24 российских и 1 белорусский университет. Регистрация на новый сезон Школы только что открылась.

Читать далее
Всего голосов 44: ↑41 и ↓3+48
Комментарии22

Записки оптимизатора 1С (Часть 8). Нагрузка на диски сервера БД при работе с 1С. Пора ли делать апгрейд?

Время на прочтение9 мин
Количество просмотров5.6K

Поговорим про падения производительности ИТ-систем, которые на первый взгляд связаны с дисковой подсистемой. Но это только «на первый взгляд».

Технические специалисты часто видят нагрузку на диски, очереди к ним и сразу появляется жгучее желание модернизировать дисковое хранилище.

Читать далее
Всего голосов 14: ↑14 и ↓0+20
Комментарии11

Многоязычный поиск в Elasticsearch: от Hello до Donaudampfschifffahrtsgesellschaftskapitän

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров1.6K

Привет, Хабр!

Когда ваш поиск начинает обслуживать пользователей, говорящих на разных языках, кажется, что начинается некий лингвистический хаос. Однако с Elasticsearch это не так уж сложно — если знаешь, как правильно настроить токенизацию, стемминг и аннотирование документов под каждый язык. Сегодня мы рассмотрим тему многоязычного поиска: разберём, как Elasticsearch понимает текст на разных языках, как обрабатывает сложные случаи вроде китайских иероглифов или немецких сложных слов, и как сделать так, чтобы результаты поиска были релевантны для каждого пользователя, независимо от его языка.

Читать далее
Всего голосов 9: ↑8 и ↓1+13
Комментарии1

Реализация Bloom-фильтров в Golang

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.2K

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

В этой статье мы рассмотрим популярную структуру данных: Bloom-фильтры, они помогут минимизировать использование памяти и ускорить выполнение задач.

Читать далее
Всего голосов 12: ↑11 и ↓1+17
Комментарии3

Ближайшие события

15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Портируем декодер AV1 с С на Rust для повышения быстродействия и безопасности

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров8.6K

AV1 становится всё более значимым видеоформатом, которому требуется безопасный и производительный декодер. Исходя из этой идеи, мы в тандеме с командой из Immutant создали rav1d, портировав на Rust написанный на С декодер dav1d. Перед вами первая из двух статей, посвящённых решению этой задачи.

— Джош Аас, глава проекта Prossimo организации ISRG
Читать дальше →
Всего голосов 36: ↑34 и ↓2+50
Комментарии92

Как мы генерируем GPT-нейросетями миллиарды объявлений на малом количестве GPU. Доклад Яндекса

Время на прочтение15 мин
Количество просмотров7.1K

Привет! Меня зовут Ольга Зайкова, в Яндексе я руковожу группой автоматической генерации рекламы. Сегодня расскажу о соединении тяжёлых процессингов и GPU‑вычислений. Обсудим, как мы реализовали высоконагруженный процессинг, который обрабатывает миллиарды товаров и превращает их в объявления, используя тяжёлые модели, такие как YandexGPT, DSSM, CatBoost и другие. И, конечно, не обойду стороной тему проблем с нагрузкой: они возникали почти на каждом шагу.

Читать далее
Всего голосов 27: ↑22 и ↓5+24
Комментарии6

10 возможностей современного Tarantool, о которых вы могли не знать

Время на прочтение9 мин
Количество просмотров4.2K

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

Читать далее
Всего голосов 31: ↑31 и ↓0+37
Комментарии8

Первые шаги в нагрузке

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров18K

Всем привет! Меня зовут Александр Наумов, я работаю в IT больше 12 лет, из которых последние несколько лет занимаюсь тестированием. В SM Lab я курирую тестирование в продуктовых командах. Вообще, я адепт продуктового подхода — люблю, когда команды деплоят ценности продукта в продакшн, а не просто делают задачи.

Читать далее
Всего голосов 15: ↑15 и ↓0+20
Комментарии8

Как тестировать производительность 1С без нагрузки на бюджет? Опыт «КОРУС Консалтинг»

Время на прочтение7 мин
Количество просмотров5.9K

Нагрузочное тестирование — трудоемкий, но обязательный этап крупного IT-проекта, который позволяет выявить дефекты, проверить производительность, стабильность и отказоустойчивость решения. Стоимость тестирования связана с количеством пользователей и сценариев: чем их больше, тем дороже. При этом часто нужны многократные проверки, а вычислительных ресурсов на это может не хватить. Как тогда провести испытания высоконагруженной системы и уложиться в бюджет?

Рассказываем, как с помощью нового подхода «КОРУС Консалтинг» смогли сэкономить и минимизировать ручные операции при испытании производительности систем на платформе 1С. Подробности под катом!
Читать дальше →
Всего голосов 29: ↑29 и ↓0+41
Комментарии4

HTTP-серверы на Fiber в Golang

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.2K

Привет, Хабр!

Когда речь заходит о создании HTTP-серверов на Go, большинство сразу думают о привычных решениях, таких как net/http или Gin. Эти инструменты проверены временем, но что, если нужен сервер, который не просто стабилен, а работает очень быстро? Здесь помогает Fiber — лёгкий, но невероятно мощный HTTP-фреймворк, способный вывести производительность сервера на новый уровень.

С синтаксисом, знакомым всем юзерам Express.js, Fiber избавляет от лишней сложности и позволяет сосредоточиться на главном — максимальной скорости и эффективности.

Читать далее
Всего голосов 7: ↑6 и ↓1+7
Комментарии8

Распаковывая Valkey или миллион RPS на BSD-клоне Redis

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров3.5K

В этот статье мы поделимся некоторыми результатами тестирования производительности Valkey (BSD-клон Redis). TL;DR: он действительно по ядрам скейлится лучше Redis и мы сделали миллион запросов с одного инстанаса.

В этом году Redis, “кеш с персистентностью”, мимкрирующий под СУБД и даже умеющий работать в режиме распределенного кластера – фантастически успешный проект, да и просто пример отличного продукта – сменил лицензию. Подробное рассмотрение лицензионной политики, включающее разбор лицензий Open Source и Source Available - выходит за рамки этой статьи. Скажем лишь, что это всё продолжение битвы “против облачных провайдеров”, которые “пользуются” результатами “настоящих” open source проектов, предоставляя услуги management service.

Итак, Redis cменил лицензию, и почти сразу же сотрудники AWS (Amazon Web Services, крупнейшего облачного провайдера) в сотрудничестве с другими облаками объявили о выпуске форка, Valkey: https://valkey.io/

Читать далее
Всего голосов 19: ↑18 и ↓1+22
Комментарии0

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