Юрий Панчул – разработчик микросхемы нового поколения для ускорения вычислений нейросетей в стартапе Кремниевой долины Wave Computing, технический руководитель проекта MIPS Open. Он занялся программированием и начал интересоваться компьютерной архитектурой с 8-го класса: выучил несколько языков программирования и пару архитектур компьютеров. С тех пор вся его жизнь неразрывно связана с современными технологиями проектирования микроэлектроники.
Этим летом Юрий Панчул принимал активное участие в летней школе «От физики к программированию», организованной Институтом МПСУ для учеников средних и старших классов в рамках реализации проекта «Инженерные каникулы». Специально для читателей «ИНверсии» он поделился своей историей успеха и размышлениями о техническом образовании в России.
- Юрий, расскажите, как вы попали в Кремниевую долину? Для многих это мечта.
- Да, это было редкое стечение обстоятельств, которые наслоились друг на друга. Когда я поступил на Физтех, у меня уже были рабочие навыки программирования, сравнимые с навыками после окончания советских вузов, поэтому на втором курсе я начал работать в разных проектах, связанных с базами Физтеха.
Это было время перестройки. Горбачёв разрешил частные предприятия, моя неформальная студенческая группа превратилась в маленькую коммерческую компанию прямо на кампусе университета. Мы заключили несколько договоров, и я сразу стал писать часть компилятора для советского суперкомпьютера под названием «Электроника СС БИС». Это был клон американского компьютера «Cray-1». И хотя таких компьютеров было сделано всего четыре, для всех студентов, участвующих в этом проекте, это было возможностью быстро приобщиться к передовым практикам, так как компилятор был основан на компиляторе Portable C Compiler (PCC) от AT&T Bell Labs, сделанном в штатах. Кстати, с его автором, Стивеном Джонсоном, я сейчас работаю – моя студенческая мечта осуществилась.
После этого проекта я перешёл на только что разрешённые и возникшие частные предприятия, в частности, в совместное предприятие AS (далее Steepler), которое стало первым дистрибьютером Microsoft в СССР. Они сделали мне приглашение в штаты и визу. Потом был проект с Рижским военным училищем: используя свои знания по компиляторам для суперкомпьютеров, я сделал для них модель процессора и компилятор для старого бортового компьютера, который использовался в советских самолётах, и на деньги, вырученные от этого проекта я купил себе билет Москва-Нью-Йорк. То есть совпало так, что летом 1991 года я одновременно получил деньги от проекта с бортовым компьютером и приглашение в штаты через совместное предприятие в командировку.
После 4-го курса я прилетел в штаты и там встретился с основателем компании Cognitive Technologies Ефимом Щукиным, а через 5 дней случился августовский путч. Мне предложили сделать рабочую визу. Я подтвердил степень бакалавра, стал работать над распознаванием образов и потом получил грин карту, по закону о советских учёных 92-го года, используя мой проект с бортовым компьютером. Был такой специальный закон о том, что если кто-то может доказать, что имеет хоть какое-то отношение к разработке оружия (в данном случае это отношение было задокументировано договором с Рижским военным училищем), то он получает грин карту.
Потом я использовал этот же проект, чтобы в 95-м году устроиться в компанию Microtec Research, которая была первой компанией в средствах программирования встроенных систем. Её купила компания Mentor Graphics, которая была одной из трёх крупнейших компаний в сфере электроники. Так я вошёл в электронику. Для Mentor Graphics я организовал совместный проект с той же группой в МФТИ, в которой я был, начиная со второго курса. Они проработали с ними 10 лет. Потом мне пришла идея некого стартапа для проектирования, и я уволился оттуда, получил начальные инвестиции от частных инвесторов, привлёк венчурные компании. Нанял профессиональных управляющих, они привлекли деньги от Intel Capital. Я был там пять лет, потом стартап, не очень правда удачно, был продан Synopsys, – компании номер один в сфере разработки и проектирования электроники. Затем в мою жизнь пришла компания Denali Software, где я сделал небольшой продукт, который помогал инженерам в Apple (в ноутбуках Air) и в других компаниях делать верификацию (то есть проверку их чипов). Последние 10 лет я работаю в компании MIPS, корни которой в Стэнфорде. Она возникла из исследовательского проекта под руководством будущего президента Стэнфорда Джона Хенесси.
- А чем вы там занимались?
- В MIPS я использовал предыдущие проекты, делал верификацию нового процессора на уровне блока, а потом учувствовал в проектировании процессора как такового. В 2010-м году я обнаружил, что в России есть две разные компании: «Элвис» в Зеленограде и НИИСИ в Москве, которые сами сделали свои процессоры на основе архитектуры MIPS, и наш вице-президент по продажам в Европе Штефан Бьющманн, пришёл ко мне и сказал: «Юрий, давайте съездим в Россию и исследуем, что там находится». Я ответил: «Я в России не был 20 лет, я даже не помню станции метро». Он ответил: «А я там не был никогда». Мы с ним остановились в отеле Шереметьево, потом приехали в Зеленоград, стали обговаривать то, что стало первыми сделками через несколько лет.
- Вы тогда обратили внимание на российское образование в области ваших интересов?
- Да, я увидел, что в курсах различных российских вузов есть дефект, который образовался во время коллапса СССР: 30 лет назад были созданы технологии проектирования микросхем, которые легли в основу чипов для смартфонов, а в то время уже была сделана база современных технологий. До этого инженеры рисовали схемы мышкой на экране, а потом стали проектировать с помощью языков описания аппаратуры. Но это было внедрено в вузах типа MIT ещё в 90 годы! В Россию всё это пришло с некоторым опозданием. В МИЭТе это делали Synopsуs и Cadence, а ведь во многих вузах России этого было мало, частично из-за дефицита массовых учебников. Я тогда предложил нашему менеджменту спонсировать перевод учебника Harris & Harris, в нём есть все части образования, которые нужны, так сказать, с высоты птичьего полёта. То есть во многих методичках, на том же Физтехе, скажем, в начале шли хорошие «основы цифровой логики», после них шёл пропуск, а дальше программирование на языках высокого уровня. Вся эта «методология проектирования с использованием языков описания аппаратуры» была пропущена. Потом были учебники, которые использовались в Питере, которые объясняли микроархитектуру, строение процессора в блоках, но не показывали примеры с кодом на языке описания аппаратуры и как этот процессор спроектировать. Изза чего получались люди, которые умели хорошо говорить на интернет-форумах, но ничего не могли сделать. Я увидел быструю возможность это поправить на самом базовом уровне. С помощью группы волонтёров, с деньгами от Imagination Technologies и «Роснано», мы сделали перевод этой книжки, который можно было получить бесплатно. И эта инициатива имела большой успех: она стала шагом, который «заткнул» очень явную дырку. Следующим шагом был онлайн-курс профориентации для школьников от «Роснано», потом лабораторный практикум по FPGA, который выходит под эгидой ВШЭ МИЭМ и с участием ИТМО и вот семинары, которе мы сейчас проводим.
- Получается, вы уже несколько лет активно занимаетесь темой образования школьников и студентов?
- Да, как хобби. Это было связано с бизнесом частично, так как в компании мы сделали проект MIPSfpga, но это уже не для школьников и даже не для младших студентов, а, скорее, для аспирантов, которые знают архитектуру, но желают поработать с промышленными процессорными ядрами. Я провёл семинар по MIPSfpga ещё в 2015 году и тогда увидел, что его можно расширить как для младших студентов, так и для школьников. Вот сейчас я узнал, что такая же нужда есть и в Китае: они хотят вырастить новое поколение проектировщиков чипов. Поэтому они интересуются ровно такими же вещами. Вполне возможно, что всё те же материалы будут использованы и там.
- Как вы оказались в МИЭТе?
- Я приехал со Стефаном Бьющманном с визитом в НПЦ ЭЛВИС, а так как компания работает с МИЭТом, я сразу же поднял знакомых. Я был знаком с Сергеем Вакуленко, с которым мы общались ещё с Физтеха, а потом он работал в институте имени Курчатова, и я помог ему устроиться в MIPS. Он дал мне координаты людей в «Элвис Неотек», которые связали меня с нужными людьми в МИЭТе. Мы встретились, в частности, с директором Института МПСУ Алексеем Леонидовичем Переверзевым, а также прошли и в другие компании в Зеленограде.
- Как вы оцениваете знания современных школьников? Из кого получаются талантливые инженеры?
- 30 лет назад, когда только началась компьютеризация, считалось, что программировать современные программы могут только на западе, а в СССР можно делать лишь бухгалтерские программы с перфокартой и распечаткой ведомости. Тогда на моих глазах сломался этот стереотип: когда мы делали программы для Windows в совместном предприятии в 1990 году, люди удивлялись: эти программы принципиально не отличаются от того, что делают в Microsoft. В 2010 году я увидел очень похожий стереотип: якобы всё, что можно делать в России – это военные чипы со старыми геометриями кристалла. Нам нужно было решить три задачи, чтобы каким-то образом вывести РФ на международный уровень в дизайне чипов. Одна проблема была – нехватка денег, но она решилась с помощью «Роснано». Вторая – нехватка связей с международными компаниями, она была в МИЭТе частично устранена, но в других местах ещё нет. Это были времена первых сделок, но когда две эти вещи были решены, то возникла новая проблема. Я увидел, что в России очень мало команд, в которых люди владеют средствами проектирования. Есть «Элвис», «Миландр», «Байкал электроникс», «Модуль», «КМ211». И теперь стоит вопрос: как расширить эту экосистему и сделать её массовой. Скажем, в Силиконовой долине имеется много команд, которые могут создавать многоядерные процессорные кластеры с когерентностью кэшей, а в России только одна компания – «Эльбрус». Дело в том, что количество таких инженерных групп невелико, и им приходится обучать новых студентов, начиная с базовых технологий прямо на работе. Проблема в этих высокопроизводительных чипах: здесь профессионализм приходит через 10 лет, когда у людей появляется интуиция (сколько какая логика будет занимать времени и как это всё дизайнить). Это как в игре на скрипке, там беглость появляется после долгого времени и лучше начинать с раннего возраста. Тогда человек будет виртуозом. Желательно отбирать людей, которым это интересно с детства, но в электронику более тяжёлый начальный вход, чем в программирование. Необходимо мышление, требующее параллельного дизайна для высокопроизводительных чипов: оно логически более сложное, но его можно тренировать, как и игру на скрипке. - То есть, по-вашему, государство должно больше внимания уделять таким способным ребятам?
- Да, чтобы возникли супердизайнеры. Возможно, не все добьются успехов в этой области, но они точно станут кем-то. Одни могут пойти в физическое проектирование, другие в технологии производства микросхем, третьи в проектирование встроенных систем, и во всех трех случаях то, что они учат сейчас, станет неким кирпичиком в их картине мира, который поможет им в других смежных специальностях.
- Что бы вы сказали тем ребятам, которые сейчас учатся на проектировщиков на бакалавриате и собираются в магистратуру?
- Желательно читать статьи с конференций, поскольку там выходит большое количество вещей, которые потом станут мейнстримом. Проблема в том, что в индустрии многие вещи не описаны в учебнике, а просто переходят от дизайнера к дизайнеру. Вначале, конечно, стоит освоить все базовые приёмы, делать свои небольшие проекты, а потом смотреть реальные индустриальные примеры, например, наши открытые процессорные ядра. Безусловно, как я и делал, со второго курса, полезно столкнуться рано с реальным производством, это опять же нужно делать параллельно с изучением базовых вещей. Должно быть и изучение учебников, и реальное производство. Если Вы придёте в компанию и будете копаться случайным образом в огромном количестве кода, то Вы только будете выглядеть занятыми… В нашем деле нужна комбинация теории и практики, а также мотивация.
- Как мотивировать современных школьников?
- Способных школьников особо не нужно мотивировать извне. Есть избранные школьники, и я был в их числе, которых интересуют абстрактные вещи внутри процессора. Но их очень мало. Гораздо лучше привязать это к чему-то наглядному на экране. Например, с помощью проектирования схемы для видеоигры. С одной стороны, здесь есть всё те же приёмы, что и при проектировании процессора, но с другой стороны, они могут строить графические игры на экране, то есть в этом есть элемент творчества с быстро видимым результатом. И я надеюсь, что процент людей, у которых есть живой интерес к проектированию цифровых схем, можно повысить.
- Расскажите о вашем взгляде на техническое образование в России. Основную идею мы уже поняли – нужно начинать раньше, а что ещё?
- В России есть один интересный момент, которого нет в других странах. Этот момент – традиция, которая идёт ещё с 19-го века. Мои дети ходят в ту же школу, в которой учился Стив Джобс, Стив Возняк, но я их ещё отдал в дополнительную школу, которая называется Russian School of Mathematics. Это сеть школ в штатах, несколько есть в Калифорнии, в Бостоне, в других местах. И, несмотря на то, что она называется так, преподавание идёт на английском, и в основном в неё ходят китайцы, индусы, некоторые американцы. Русских там примерно 10%. В школе работают преподаватели из стран бывшего СССР. И вот в этой школе очень наглядно видно, почему туда стремятся отдать детей. В американской школе, даже и в хороших частных, и государственных, школах, когда преподают математику, её преподают больше в виде рецептов «Что делать?» А в русской математической школе преподаются доказательства теорем с пониманием «Почему?» Там дети тренируются в доказательстве теорем, в том, что в России Холмогоров, Погорелов и учёные до них делали больше 100 лет. И мозг, натренированный на решении именно такого рода задач в массовых масштабах, является грандиозным преимуществом России.