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

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

Почему GPU обманывают о своей нагрузке и как с этим бороться - 1

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

Сегодня мы выложили в опенсорс систему управления базами данных YDB — плод многолетнего опыта Яндекса в разработке систем хранения и обработки данных. Исходный код, документация, SDK и все инструменты для работы с базой опубликованы на GitHub под лицензией Apache 2.0. Развернуть базу можно как на собственных, так и на сторонних серверах — в том числе в любых облачных сервисах.

Яндекс выложил в опенсорс YDB - 1

YDB решает задачи в одной из самых критичных областей — позволяет создавать интерактивные приложения, которые можно быстро масштабировать по нагрузке и по объёму данных. Мы разрабатывали её, исходя из ключевых требований к сервисам Яндекса. Во-первых, это катастрофоустойчивость, то есть возможность продолжить работу без деградации при отключении одного из дата-центров. Во-вторых, это масштабируемость на десятки тысяч серверов на чтение и на запись. В-третьих, это строгая консистентность данных.

В посте я расскажу об истории развития технологий баз данных, о том, зачем использовать YDB, как её применяют текущие пользователи и какие плюсы для всех несёт выход в опенсорс. А во второй половине поста поговорим о разных вариантах развёртывания.
Читать полностью »

Встречайте, вот и Go 1.18, а с ней – первый релиз долгожданной реализации дженериков, наконец-то готовых к реальному использованию в продакшене. Дженерики – это весьма востребованная возможность, давно вызывающая жаркие споры в сообществе Go. С одной стороны, самые голосистые беспокоятся по поводу сложности, которую привносят дженерики. Их страшит неизбежная эволюция Go, которая доведет его либо до многословия как в энтерпрайз-версии Java, со своими обобщенными фабриками, либо, самое страшное, превратит Go в вырожденный HaskellScript, где ifЧитать полностью »

Встречайте UUID нового поколения для ключей высоконагруженных систем - 1

31 марта 2022 года на сайте IETF был официально размещен текст рабочего документа (копия 1Читать полностью »

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

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

Оверклокинг, ты живой? - 1


Он пробовал на прочность этот мир каждый миг,
Мир оказался прочней.

«Машина Времени»

Ежегодно на соревнованиях «Формулы 1», кроме основного кубка, вручается кубок конструкторов — награда лучшей инженерной команде сезона. С самых истоков гонки руководители команд истово борются за конструкторов — примерно с тем же усердием, что и за пилотов: в гонке решает каждый грамм веса кокпита, каждый замысел эргономики, каждый состав используемых сплавов и компонентов. Одним из первых фанатов «детальной прокачки» и одним из самых мощных конструкторов Формулы 1 был Энцо Феррари — он побеждал со своей легендарной Скудерией, побеждал в Альфа Ромео и создал легенду, от которой до сих пор сжимаются души фанатов гонок и скоростных автомобилей. Погружаясь в историю мистера Энцо Феррари, я всегда думаю о том, что он мог бы быть родоначальников оверклокеров как явления. Потому что оверклокинг — это не просто про фан или азарт, это про строгие эксперименты, инженерный талант и стремление сделать мир круче. Но не стал ли оверклокинг уже историей?

Сегодня, в почти-что-день-оверклокера, мы хотим расспросить олдов — как вы там, всё ещё разгоняете или хобби уже ушло в прошлое? И этот разговор не случаен.
Читать полностью »

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

Анализируем bound checks в Go по CPU профилю - 1

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

Как понять, что перед вами плохой разработчик - 1

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

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

Мал золотник, да дорог: ученые из НИТУ «МИСиС» предлагают создать облачный супер-ПК из миллионов смартфонов - 1

В идее распределенных вычислительных систем нет ничего нового. Идея реализована уже давно, плюс примеров таких реализаций множество, включая SETI, Folding@Home и другие. Идея в том, что специальное программное обеспечение использует незадействованные ресурсы локальных систем — например, ноутбуков и ПК, направляя их на выполнение полезных задач. Ну да, это может быть поиск сигналов внеземного происхождения или разных форм белка.

Но обычно такие системы и составляются из ноутбуков или десктопных ПК. А что, если задействовать ресурсы смартфонов или планшетов? Эта идея тоже не новая, но сейчас ее реализацией занялись российские ученые — специалисты из МИСиС.
Читать полностью »

Поймал себя на ощущении, что очень хочется поделиться своим опытом работы с интеловской энергонезависимой памятью (Intel Optane memory или Intel PMem = persistent memory). Я буду для краткости называть ее ПМем. Думаю, что несмотря на объем продаж в сотни миллионов долларов, пока мало кто с ней сталкивался и знает ее специфику. Я же по долгу службы занимаюсь ей уже довольно продолжительное время и гонял на ней различные приложения и микро-бенчмарки. А также добивался ее эффективного использования модифицируя под нее клиентские коды.

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


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