SDCast #63: в гостях Алексей Маркин, программист из МЦСТ

Приветствую, товарищи! В предыдущем выпуске мы немного затронули тему процессоров «Эльбрус» и VLIW-архитектуры , но эта тема показалась интересной, и вот, в этом выпуске у меня снова в гостях Алексей Маркин, программист из МЦСТ, и этот выпуск целиком и полностью посвящен этой теме.

Вначале Лёша рассказал немного про компанию МЦСТ, историю её появления и развития, направления деятельности, и чем компания занимается сейчас.

Далее мы поговорили про процессоры «Эльбрус», что они из себя представляют, чем они принципиально отличаются от других архитектур (x86, ARM, RISC и прочее). Для VLIW-архитектуры «Эльбруса» порядок инструкций исполнения программы имеет особо важное значение, так как процессор не умеет их сам переставлять, поэтому оптимальный порядок формируется уже на этапе компиляции программы, и компилятор является неотъемлемой частью архитектуры.

Далее мы обсудили оптимизирующий компилятор для процессоров «Эльбрус», непосредственно разработкой которого Алексей и занимается. Лёша рассказал, что это такое — оптимизирующий компилятор, зачем он нужен и какие задачи решает, в чём его отличие от «обычных» gcc, clang. Довольно подробно Лёша рассказал про различные типы оптимизаций, которые присутствуют в компиляторе, что они дают на выходе в плане производительности, рассказал как вообще эти оптимизации находятся и разрабатываются и внедряются в компилятор. Рассказал про различные подводные камни на этом тернистом пути оптимизации :)

Так же обсудили сам процесс разработки компилятора, какие инструменты используются в команде разработки в МЦСТ, как устроено тестирование и сбор метрик, бенчмарки и замеры производительности.

Читать далее

SDCast #62: в гостях Александр Титов и Амир Аюпов, инженеры из Intel и Алексей Маркин, программист из МЦСТ

Такого еще не было! Товарищи, рад представить вам 62-й выпуск подкаста, в котором у меня не один, а сразу целых три гостя! На этот раз вместе с Александром Титовым и Амиром Аюповым, инженерами из Intel и Алексеем Маркиным, программистом из МЦСТ, мы обсуждаем тему процессоров и разработку на стыке Hardware & Software. Отдельная большая часть подкаста посвящена вопросам айтишного образования в России.

По традиции, в начале ребята вкратце рассказали про себя, кто есть кто и чем занимается. Ну а дальше мы окунулись в мир процессоров! Обсудили из каких компонентов состоит процессор вкратце, как происходит выполнение пользовательского кода на процессоре, опять же очень условно, не вдаваясь в сложные технические детали. Обсудили какие бывают архитектуры и вообще что подразумевается под архитектурой процессора, чем отличаются x86, ARM, Эльбрус с точки зрения систем команд: традиционные RISC и CISC, плюс альтернативный VLIW.

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

Так же обсудили различные типа процессоров: CPU, GPU, различные кастомные железки, FPGA и прочее; какие классы задач решаются теми или иными процессорами, вопросы железячного прототипирования и разработки своего железа «с нуля».

Подискутировали на тему перспективных направлений в CPU дизайне и трендов разработки процессоров в индустрии. Что нас может ждать в ближайшем будущем и что интересного есть уже сейчас.

Во второй части подкаста мы пообщались про направление “Computer Science” в образовании. Поскольку все из участников подкаста так или иначе имеют отношении к высшему образованию, кто-то преподавал, кто-то преподает сейчас, мы вспомнили как это было у нас. Ребята рассказали про то, какие курсы и лекции они читают сами, поделились своим опытом преподавания и взаимоотношениями с институтами.

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

Читать далее