«Чем хуже дела у процессора, тем лучше — у профилировщика»: разбираемся, как устроены анализаторы производительности программ
Гость нового выпуска подкаста «Битовые маски» разрабатывал Intel VTune — инструмент, который помогает инженерам повышать производительность программ для компьютеров на базе x86-процессоров. Дмитрий Рябцев присоединился к команде Intel на последнем курсе университета, после чего разрабатывал и развивал профилировщик два десятка лет. Он рассказал, как такие инструменты устроены изнутри, а также подсказал, с чего стоит начинать профилирование различных сложных систем.
Из нового эпизода вы узнаете:
∙ Почему разработка профилировщика может занимать десятки лет;
• Как методология Top-down Microarchitecture Analysis помогает найти узкие места в конвейере процессора;
• В чём состоит фундаментальная проблема профилировщиков;
• Почему сложно сделать универсальный профилировщик для всех микроархитектур;
• Что из особенностей микроархитектуры сильнее всего влияет на производительность приложений.
Подписывайтесь на YouTube-канал «Истовый инженер» или на обновления подкаста «Битовые маски» на любимой стриминговой платформе, чтобы не пропустить новые выпуски!
Смотреть | Слушать
Гость нового выпуска подкаста «Битовые маски» разрабатывал Intel VTune — инструмент, который помогает инженерам повышать производительность программ для компьютеров на базе x86-процессоров. Дмитрий Рябцев присоединился к команде Intel на последнем курсе университета, после чего разрабатывал и развивал профилировщик два десятка лет. Он рассказал, как такие инструменты устроены изнутри, а также подсказал, с чего стоит начинать профилирование различных сложных систем.
Из нового эпизода вы узнаете:
∙ Почему разработка профилировщика может занимать десятки лет;
• Как методология Top-down Microarchitecture Analysis помогает найти узкие места в конвейере процессора;
• В чём состоит фундаментальная проблема профилировщиков;
• Почему сложно сделать универсальный профилировщик для всех микроархитектур;
• Что из особенностей микроархитектуры сильнее всего влияет на производительность приложений.
Подписывайтесь на YouTube-канал «Истовый инженер» или на обновления подкаста «Битовые маски» на любимой стриминговой платформе, чтобы не пропустить новые выпуски!
Смотреть | Слушать
🔥10
Всем привет! Спасибо, что присоединились к сообществу людей, неравнодушных к темам системного программирования и разработки процессоров.
Как его участники, вы можете напрямую влиять на будущие выпуски! Сейчас мы уже спланировали несколько ближайших записей, но вот летние эпизоды могут выйти при вашем участии.
▪ Предлагайте гостей для подкаста. Знаете кого-то, кого хочется послушать — пишите, и мы постараемся позвать его в эфир. Знаете, инженеров какой компании или продукта интересно послушать, но не знаете конкретных имен — говорите, а мы постараемся найти спикера от них. Если хотите сами поделиться опытом в нашем подкасте — не стесняйтесь заявить о себе.
▪ Предлагайте новые или развитие прошлых тем. Знаете, какие аспекты мы еще не осветили — предлагайте тему, мы поищем героя для нее. Или расскажите нам, какую тему мы обсудили в прошлых эпизодах не полностью — раскроем шире.
Как предложить гостя или тему для «Битовых масок»? Можно в комментариях к посту, можно на почту engineer@yadro.com.
Ждем ваших предложений и остаемся на связи!
Лена и Антон
Как его участники, вы можете напрямую влиять на будущие выпуски! Сейчас мы уже спланировали несколько ближайших записей, но вот летние эпизоды могут выйти при вашем участии.
Как предложить гостя или тему для «Битовых масок»? Можно в комментариях к посту, можно на почту engineer@yadro.com.
Ждем ваших предложений и остаемся на связи!
Лена и Антон
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
За кулисами съемок нового эпизода
Один из следующих выпусков «Битовых масок» будет необычным: на прошлой неделе мы впервые беседовали с гостем, который находился за тысячи километров от нашей уютной студии в Санкт-Петербурге. При этом мы не хотели терять в качестве картинки и звука и очень серьезно готовились к съемкам. Оказалось, что найти классную студию и топового оператора с нужным оборудованием на далеком побережье океана очень непросто.
Показываем, как проходили съемки:
P. S. Узнали гостя? Подробностями об этом эпизоде поделимся совсем скоро.
Один из следующих выпусков «Битовых масок» будет необычным: на прошлой неделе мы впервые беседовали с гостем, который находился за тысячи километров от нашей уютной студии в Санкт-Петербурге. При этом мы не хотели терять в качестве картинки и звука и очень серьезно готовились к съемкам. Оказалось, что найти классную студию и топового оператора с нужным оборудованием на далеком побережье океана очень непросто.
Показываем, как проходили съемки:
P. S. Узнали гостя? Подробностями об этом эпизоде поделимся совсем скоро.
🔥16
Опрос: что вам нравится и не нравится в нашем подкасте
Этот канал был создан во многом потому, что нам очень не хватает обратной связи от тех, кто слушает и смотрит «Битовые маски». Хочется делать полезные и качественные выпуски, ориентируясь не только на свой вкус и мнение. Так что слово — вам!
Мы составили небольшую анкету из 8 вопросов, заполнение которой не займет больше 5 минут. Ваши ответы помогут нам скорректировать темы обсуждений, подобрать интересных именно вам гостей и просто узнать вас чуть лучше.
Если не хотите заполнять опрос, пишите в комментариях к этому посту! Мы все читаем.
Пройти опрос →
Лена и Антон
Этот канал был создан во многом потому, что нам очень не хватает обратной связи от тех, кто слушает и смотрит «Битовые маски». Хочется делать полезные и качественные выпуски, ориентируясь не только на свой вкус и мнение. Так что слово — вам!
Мы составили небольшую анкету из 8 вопросов, заполнение которой не займет больше 5 минут. Ваши ответы помогут нам скорректировать темы обсуждений, подобрать интересных именно вам гостей и просто узнать вас чуть лучше.
Если не хотите заполнять опрос, пишите в комментариях к этому посту! Мы все читаем.
Пройти опрос →
Лена и Антон
👍4🔥1
Media is too big
VIEW IN TELEGRAM
Новый выпуск подкаста с Алексеем Коваловым уже вот-вот появится на всех площадках! В нём мы поговорим о деталях процесса верификации. А пока — тизер эпизода :)
🔥13
Всем привет!
В новом выпуске «Битовых масок» мы возвращаемся на аппаратный уровень. В гостях у подкаста — Алексей Ковалов, руководитель группы модульной верификации в YADRO. Он рассказывает, как устроен процесс верификации аппаратуры, какие языки и методологии используют инженеры-верификаторы и почему здесь все сильно зависит от конкретной компании.
Из выпуска вы узнаете:
▪ По каким критериям инженеры принимают решение о том, что блок верифицирован;
▪ Что такое Universal Verification Methodology и зачем она нужна;
▪ Какие особенности есть у языка SystemVerilog и какие другие технологии могут применяться для верификации;
▪ Может ли у бита быть не два значения, а четыре;
▪ Какие интерфейсы называют «токсичными»;
▪ Как выглядит рынок труда в hardware-разработке и как это влияет на подходы к работе.
Посмотреть и послушать новый эпизод можно на «Истовом инженере»: https://engineer.yadro.com/podcast/verification/
Делитесь своими отзывами и предложениями!
В новом выпуске «Битовых масок» мы возвращаемся на аппаратный уровень. В гостях у подкаста — Алексей Ковалов, руководитель группы модульной верификации в YADRO. Он рассказывает, как устроен процесс верификации аппаратуры, какие языки и методологии используют инженеры-верификаторы и почему здесь все сильно зависит от конкретной компании.
Из выпуска вы узнаете:
Посмотреть и послушать новый эпизод можно на «Истовом инженере»: https://engineer.yadro.com/podcast/verification/
Делитесь своими отзывами и предложениями!
Please open Telegram to view this post
VIEW IN TELEGRAM
Истовый инженер
Верификация аппаратных блоков. UVM. Рынок труда в hardware
Как инженеры принимают решение, что конкретный блок верифицирован? Является ли UVM серебряной пулей? Как выглядит рынок труда в hardware-разработке? Обсудим эти и другие вопросы в десятом эпизоде подкаста «Битовые маски».
🔥11🎉1
Вышла новая версия стандарта языка SystemVerilog IEEE 1800-2023
Очень интересная новость из мира разработки аппаратуры. Новая версия SystemVerilog принесла важные обновления. Среди них:
▪ Наследование функционального покрытия
▪ Функция map() распакованного массива
▪ Множественные идентификаторы в `ifdef
▪ Multiline strings
▪ Использование чисел с плавающей точкой в функциональном покрытии
▪ Использование метода в качестве промежуточного результата
Большое спасибо Сергею Чусову (@verif_for_all) за то, что собрал подробности о новой версии в одном материале. Делимся ссылкой на список новинок.
Кстати, на прошлой неделе вышел свежий эпизод нашего подкаста – «Верификация аппаратных блоков / UVM / Рынок труда в hardware». В нем мы в том числе обсудили частоту выхода новых стандартов SystemVerilog. Слушайте, смотрите, делитесь впечатлениями.
Лена и Антон
Очень интересная новость из мира разработки аппаратуры. Новая версия SystemVerilog принесла важные обновления. Среди них:
Большое спасибо Сергею Чусову (@verif_for_all) за то, что собрал подробности о новой версии в одном материале. Делимся ссылкой на список новинок.
Кстати, на прошлой неделе вышел свежий эпизод нашего подкаста – «Верификация аппаратных блоков / UVM / Рынок труда в hardware». В нем мы в том числе обсудили частоту выхода новых стандартов SystemVerilog. Слушайте, смотрите, делитесь впечатлениями.
Лена и Антон
Please open Telegram to view this post
VIEW IN TELEGRAM
Teletype
SystemVerilog IEEE 1800-2023. Обзор нововведений.
Доброго времени суток, дорогие читатели! Не могу пройти мимо значительного события в сфере микроэлектроники, а уж в сфере её верификации...
🔥7👍2😁1
Снимаем для вас новый выпуск подкаста про JVM
Обсуждаем runtime, очень важный элемент JVM, и его задачи с Иваном Углянским, экспертом в разработке JVM runtime с более чем 10-летним опытом. Иван участвовал в создании такой необычной и интересной JVM, как Excelsior JET — сертифицированной реализации Java SE с AOT-компилятором. Также обсуждаем интероперабельность, развитие JVM и то, насколько сложно организовывать специальный профиль "Системное программирование" в НГУ.
Если пропустили наш прошлый эпизод подкаста, где мы погружались в JVM-мир с Владимиром Кемпиком, инженером YADRO, очень советуем послушать. Будете более подготовлены к новому выпуску.
Обсуждаем runtime, очень важный элемент JVM, и его задачи с Иваном Углянским, экспертом в разработке JVM runtime с более чем 10-летним опытом. Иван участвовал в создании такой необычной и интересной JVM, как Excelsior JET — сертифицированной реализации Java SE с AOT-компилятором. Также обсуждаем интероперабельность, развитие JVM и то, насколько сложно организовывать специальный профиль "Системное программирование" в НГУ.
Если пропустили наш прошлый эпизод подкаста, где мы погружались в JVM-мир с Владимиром Кемпиком, инженером YADRO, очень советуем послушать. Будете более подготовлены к новому выпуску.
🔥15
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно мы делились фотографиями с необычных съемок. Впервые в нашей студии не было гостя… Точнее он был, но в тысячах километров от нас, с разницей в несколько часовых поясов. Скажем честно: было необычно, привыкли видеть собеседника вживую.
Несмотря на расстояние, мы здорово пообщались с героем выпуска. Обсудили операционные системы, RISC-V, отличия Linux от RTOS, а также то, что входит в BSP и HAL. Обещаем — будет очень интересно.
Ну а пока этот выпуск в монтаже, рассказывайте, как вам беседа с Алексеем Коваловым? Уже послушали? Делитесь мыслями.
Несмотря на расстояние, мы здорово пообщались с героем выпуска. Обсудили операционные системы, RISC-V, отличия Linux от RTOS, а также то, что входит в BSP и HAL. Обещаем — будет очень интересно.
Ну а пока этот выпуск в монтаже, рассказывайте, как вам беседа с Алексеем Коваловым? Уже послушали? Делитесь мыслями.
🔥11
Новый эпизод! Операционные системы | Linux | Zephyr | HAL и BSP | ARC-V
В конце февраля мы делились фотографиями первой в истории подкаста записи выпуска с онлайн-гостем. И сегодня этот выпуск вышел в свет! Героем эпизода стал Алексей Бродкин, который уже 16 лет работает в Synopsys и сейчас руководит командой инженеров, разрабатывающих Linux и операционные системы реального времени.
Поговорили об особенностях разработки ОС и их поддержке для разных процессоров и архитектур. А еще обсудили на примере ARC-V, зачем большому вендору вкладывать ресурсы в создание процессорного семейства, которое будет использовать набор команд RISC-V.
Из выпуска вы узнаете:
▪ Почему вероятность появления новой большой и полноценной операционной системы очень мала;
▪ Что представляет из себя уровень аппаратных абстракций в ОС;
▪ Почему термин «операционная система реального времени» может вводить в заблуждение;
▪ Происходит ли миграция функциональности между Linux и RTOS;
▪ Можно ли начать разработку ОС до появления микросхемы в кремнии;
▪ Как связаны прерывания, их обработчики и планировщик задач.
Посмотреть и послушать новый эпизод можно на «Истовом инженере».
Комментарии открыты для ваших отзывов и предложений! Как вам такой формат записи? Кого еще из гостей нам стоит позвать?
В конце февраля мы делились фотографиями первой в истории подкаста записи выпуска с онлайн-гостем. И сегодня этот выпуск вышел в свет! Героем эпизода стал Алексей Бродкин, который уже 16 лет работает в Synopsys и сейчас руководит командой инженеров, разрабатывающих Linux и операционные системы реального времени.
Поговорили об особенностях разработки ОС и их поддержке для разных процессоров и архитектур. А еще обсудили на примере ARC-V, зачем большому вендору вкладывать ресурсы в создание процессорного семейства, которое будет использовать набор команд RISC-V.
Из выпуска вы узнаете:
Посмотреть и послушать новый эпизод можно на «Истовом инженере».
Комментарии открыты для ваших отзывов и предложений! Как вам такой формат записи? Кого еще из гостей нам стоит позвать?
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Операционные системы / Linux / Zephyr / HAL и BSP / ARC-V
В гостях у «Битовых масок» — Алексей Бродкин из Synopsys. Он работает в компании уже 16 лет и сейчас руководит инженерами, которые разрабатывают Linux и операционные системы реального времени. Поговорим с гостем об особенностях ОС и их поддержки для разных…
🔥9❤2👍1
Я — инженер-программист в группе оптимизирующей кодогенерации. А вы?
Мы ищем новых гостей для подкаста и хотим позвать кого-то, кто ближе большей части слушателей. Для этого нужно чуть больше узнать о вас. Выберите, пожалуйста, один (или несколько) актуальных для вас вариантов в этом анонимном опросе.
До встречи в эфире.
Мы ищем новых гостей для подкаста и хотим позвать кого-то, кто ближе большей части слушателей. Для этого нужно чуть больше узнать о вас. Выберите, пожалуйста, один (или несколько) актуальных для вас вариантов в этом анонимном опросе.
До встречи в эфире.
❤5🔥1
С гостем следующего выпуска мы обсудили много интересных тем: рантаймы, интероперабельность, новые проекты Java и образование для системных программистов. Материала получилось почти на 2,5 часа. Подскажите, стоит ли нам разбить выпуск на две части?
Anonymous Poll
37%
Удобнее послушать 2 части с промежутком в 1-2 недели
63%
Лучше опубликуйте один длинный эпизод
❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Немного подробностей о последнем эпизоде с Алексеем Бродкиным. Мини-студию записи мы организовали прямо в квартире Алексея. Было непросто, но результатом мы очень довольны. Теперь знаем, что при необходимости можем расширять географию гостей «Битовых масок».
Мы уже писали, что наша беседа в основном строилась вокруг операционных систем. А вот что сам Алексей думает об 11 выпуске подкаста:
Мы уже писали, что наша беседа в основном строилась вокруг операционных систем. А вот что сам Алексей думает об 11 выпуске подкаста:
«На мой взгляд, самым интересным было обсуждение операционных систем с точки зрения их размера и функциональности. То, что я в шутку назвал ОС, МОС (малая ОС) и СМОС (сверхмалая ОС). С одной стороны, мы обсудили много базовых понятий, касающихся операционных систем, с другой — хорошо прошлись по предрассудкам и легендам, связанным с ними».
🔥9
This media is not supported in your browser
VIEW IN TELEGRAM
Новый эпизод уже через неделю
В этот раз гостем «Битовых масок» стал Иван Углянский — один из разработчиков Excelsior JET, сертифицированной реализации Java SE, основанной на оптимизирующей AOT-компиляции. Сейчас он работает в Huawei, где занимается компиляторами, JVM и новыми языками программирования.
А вот что Иван рассказал про содержание 12 эпизода подкаста:
В этот раз гостем «Битовых масок» стал Иван Углянский — один из разработчиков Excelsior JET, сертифицированной реализации Java SE, основанной на оптимизирующей AOT-компиляции. Сейчас он работает в Huawei, где занимается компиляторами, JVM и новыми языками программирования.
А вот что Иван рассказал про содержание 12 эпизода подкаста:
«Отлично поговорили с Леной приблизительно обо всем :) И про Excelsior JET вспомнили, и мегапроекты в мире Java (Valhalla, Panama, Loom) обсудили, и даже затронули тему вузовского образования для системных программистов. Конечно, не обошлось и без рассказов о злых, трудно воспроизводимых и спорадических багах, а еще о тайм-тревел дебаггерах и встроенных в JVM профилировщиках. Кажется, получилось очень содержательно и весело!»
🔥9❤2👍1
Битовые маски #12: Иван Углянский о JVM runtime, развитии Java и образовании в области системного программирования
В четвертом выпуске мы поднимали тему JVM, но говорили больше о компиляторах. В новом эпизоде продолжаем беседу о виртуальных машинах, но уже со стороны рантайма.
Гостем «Битовых масок» стал Иван Углянский, член программного комитета конференции SnowOne, известный разработчик JVM и один из создателей профиля «Системное программирование» в НГУ. Он соприкоснулся с процессом разработки компиляторов и рантаймов еще в старших классах школы, а после продолжал заниматься этим направлением в Excelsior и Huawei. Елена Лепилкина обсудила с Иваном не только рантаймы, но и интероперабельность, преимущества и недостатки новых проектов Java, а также его опыт преподавания и взаимодействия с вузами.
Из выпуска вы узнаете:
▪ Что входит в состав рантайма, кроме garbage collector;
▪ Как отлаживать баги в рантайме с помощью «кротов» и Time Travel Debugging;
▪ На каких языках можно написать рантайм и чем интересна SystemJava;
▪ Что из себя представляют новые мегапроекты Panama, Loom и Valhalla;
▪ Почему виртуальные потоки в Java ближе к горутинам, чем к корутинам;
▪ Как и почему в НГУ появился профиль «Системное программирование».
А еще услышите много забавных и одновременно захватывающих примеров отладки багов из времен работы Ивана над Excelsior JET.
Смотреть📺 | Слушать 🎤
В четвертом выпуске мы поднимали тему JVM, но говорили больше о компиляторах. В новом эпизоде продолжаем беседу о виртуальных машинах, но уже со стороны рантайма.
Гостем «Битовых масок» стал Иван Углянский, член программного комитета конференции SnowOne, известный разработчик JVM и один из создателей профиля «Системное программирование» в НГУ. Он соприкоснулся с процессом разработки компиляторов и рантаймов еще в старших классах школы, а после продолжал заниматься этим направлением в Excelsior и Huawei. Елена Лепилкина обсудила с Иваном не только рантаймы, но и интероперабельность, преимущества и недостатки новых проектов Java, а также его опыт преподавания и взаимодействия с вузами.
Из выпуска вы узнаете:
А еще услышите много забавных и одновременно захватывающих примеров отладки багов из времен работы Ивана над Excelsior JET.
Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Java Runtime / Интероперабельность в Java / Как учить системных программистов
Новый гость подкаста «Битовые маски» — Иван Углянский, известный разработчик JVM, член программного комитета Java-конференции SnowOne и один из создателей профиля «Системное программирование» в НГУ. Он соприкоснулся с процессом разработки компиляторов и рантаймов…
❤8🔥4👍1
Битовые маски #13: Игорь Астахов — о программировании в 90-е и низкоуровневых оптимизациях
Игорь Астахов, новый гость «Битовых масок», впервые увидел компьютер уже на работе и учился писать машинный код на бумажке, загружая его в PDP-8/e с помощью механических переключателей. В 90-е годы он перешел в Intel, где проработал с низкоуровневыми библиотеками больше 20 лет.
Сейчас Игорь — ведущий инженер-программист в группе разработки математических библиотек, а также библиотек обработки сигналов и изображений в YADRO. Елена Лепилкина и Антон Афанасьев позвали коллегу поделиться обширным опытом в низкоуровневой оптимизации и рассказать о векторизации, акселераторах и о том, как изменилась индустрия за три десятка лет.
Из выпуска вы узнаете:
▪ Что такое идеальный код с точки зрения разработчика низкоуровневых оптимизаций;
▪ Как работают над переносом библиотеки на архитектуру, которая еще не появилась;
▪ Возможна ли реализация высокопроизводительной библиотеки на С без интринсиков;
▪ Как измеряют производительность низкоуровневых оптимизаций;
▪ Сможет ли AI создать высокопроизводительный код низкоуровневой библиотеки.
Смотреть📺 | Слушать 🎤
Игорь Астахов, новый гость «Битовых масок», впервые увидел компьютер уже на работе и учился писать машинный код на бумажке, загружая его в PDP-8/e с помощью механических переключателей. В 90-е годы он перешел в Intel, где проработал с низкоуровневыми библиотеками больше 20 лет.
Сейчас Игорь — ведущий инженер-программист в группе разработки математических библиотек, а также библиотек обработки сигналов и изображений в YADRO. Елена Лепилкина и Антон Афанасьев позвали коллегу поделиться обширным опытом в низкоуровневой оптимизации и рассказать о векторизации, акселераторах и о том, как изменилась индустрия за три десятка лет.
Из выпуска вы узнаете:
Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Разработка DSP-библиотеки / Низкоуровневые оптимизации / Программирование в 80–90-е
В гостях у «Битовых масок» — Игорь Астахов, инженер-программист, который разрабатывает высокопроизводительные библиотеки и занимается низкоуровневыми оптимизациями уже 25 лет. Он начал строить карьеру во времена, когда компьютеры были размером со шкаф, и…
🔥8👍6
Media is too big
VIEW IN TELEGRAM
Тринадцатый эпизод подкаста вышел чуть больше недели назад, но уже в первые часы набрал немалое количество просмотров и комментариев, что не может не радовать :) В нём мы обсудили:
▪ Правда ли раньше писали и дебажили код на бумажке;
▪ До сих пор ли пишут на ассемблере для получения наилучшей производительности;
▪ Почему Intel Itanium — идеальный процессор;
▪ Почему математика — во главе угла оптимизации DSP-алгоритмов;
▪ Обязательно ли оптимизировать функцию copy на CPU или можно передать эту задачу акселераторам.
А вы уже успели посмотреть выпуск? Делитесь впечатлениями в комментариях под видео или здесь под постом, если предпочитаете слушать.
А вы уже успели посмотреть выпуск? Делитесь впечатлениями в комментариях под видео или здесь под постом, если предпочитаете слушать.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥4
Судя по обратной связи под прошлыми видео, вам нравится наш выбор гостей. Но мы также будем рады узнать, кого вы бы хотели увидеть в нашей уютной студии. Это могут быть как известные представители инженерного сообщества, так и ваши коллеги, и даже вы сами, если есть желание поделиться знаниями и опытом со слушателями подкаста.
Ждём ваши идеи,
Лена и Антон
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2