Школа информационных наук и технологий Яньского университета.
Большая мультимедийная лекционная аудитория в Научном корпусе была забита под завязку.
Дополнительные стулья вставили не только в проходы, но даже свободное пространство у задней стены и подоконники заполонили студенты, пришедшие в качестве вольнослушателей из-за репутации профессора.
Гао Вэнь был истинным богом в области компьютерной архитектуры и низкоуровневых алгоритмов в Яньском университете, а также академиком Инженерной академии Хуася.
Он редко вёл фундаментальные курсы у бакалавров.
Сегодняшнее занятие под названием «Низкоуровневые алгоритмы и архитектура высокопроизводительных вычислений» на самом деле являлось первой лекцией семестра для первокурсников. Это был также один из немногих профессиональных вводных курсов, которые он лично вёл в этом семестре.
По этой причине явились не только все студенты информационной школы, но даже лучшие умы из других школ прознали об этом и примчались сюда лишь ради шанса лично увидеть истинного бога.
Академик Гао стоял у трибуны с мелом в руке, вырисовывая на классной доске логическую схему низкоуровневой системной архитектуры.
— В архитектуре НУМА многоядерная параллельность не был простым наложением потоков.
— Когда два потока одновременно изменяют разные независимые переменные в пределах одной строки кеша, это запускает ловушку ложного разделения.
— В этот момент протокол когерентности кеша МЭСИ спровоцирует наносекундный шторм сброса недействительных этих на базовой физической шине, утягивая на дно вашу столь гордую параллельную вычислительную мощность!
Академик Гао красноречиво и непринужденно вещал с трибуны, тогда как первокурсники внизу были совсем ошеломлены.
Хотя логика академика Гао была кристально чиста, где каждый пункт вытекал из предыдущего, и они могли уловить причинно-следственные связи...
...они еще не сталкивались со столь специализированными концепциями низкоуровневого «железа» и протоколов когерентности кеша. «Неужели это и впрямь то, что следует преподавать на вводном курсе для первокурсников?»
На самом деле, для человека уровня академика стоять за трибуной никогда не означало преподавать студентам некий конкретный объем знаний.
То, что они передавали, было путем, совсем новым способом мышления, направлением для прорывов, способных сокрушить условности!
Что же касается обучения конкретным знаниям?
Например, как писать базовый синтаксис C++?
Как объявить переменную?
Как вызывать существующие интерфейсы АФС?
Забудьте об академике Гао, академике Инженерной академии Хуася — даже случайный профессор, взятый из Школы информационных наук Яньского университета, не стал бы обучать подобному!
Потому что в глазах этих ведущих ученых Яньского университета инструменты программирования и языковые спецификации — вещи, которые можно отыскать, словно в словаре, — разве не были тем, что вы, лучшие из лучших, поступившие в Яньский университет, могли выучить самостоятельно, потратив две бессонные ночи в общежитии?
Зачем университетскому профессору тратить время на обучение столь базовым вещам с трибуны?
Таковы были стандарты и характер самого престижного университета Хуася!
Хотя сидевшие внизу студенты были озадачены, они все равно яростно конспектировали, надеясь постепенно переварить информацию в своих комнатах.
Академик Гао сделал паузу и сурово сказал.
— Отложите ручки. Вам не нужно вести конспекты.
— Если вы попытаетесь слушать и писать одновременно, то просто не поспеете за моим темпом.
Стоило ему это произвести, как лица первокурсников, так яростно записывавших лекцию, мгновенно покраснели.
Как раз когда они начали испытывать стыд за свои наивные действия, академик Гао внезапно усмехнулся.
— Но вы можете записывать это на телефоны. Эта штука поспеет...
По аудитории прокатилась волна смеха.
Лишь тогда эта группа умнейших представителей нации по-настоящему осознала, насколько сильно университет отличается от школы — как по содержанию предметов, так и по профессуре.
Тем временем Ли Дун, сидевший на самом последнем ряду лекционного зала, слушал происходящее со всё возрастающим восторгом.
Другие могли не понимать, но он-то был способен!
«Выходит, проблема когерентности кеша при многопоточной параллельности по своей сути есть отображение борьбы за эти на физическом уровне...»
ДЗИНЬ-ДЗИНЬ-ДЗИНЬ.
Прозвенел звонок, возвещающий об окончании занятия.
Академик Гао прямо заявил.
— На сегодня лекция окончена. Все свободны.
Ли Дун сорвался с места, схватил рюкзак и приготовился помчаться к трибуне, чтобы задать вопрос.
Однако привычки, выработанные им еще в Седьмой школе Цзянчэна, преподали ему суровый урок.
Он сидел в самом последнем ряду, и к тому моменту, когда ему наконец удалось добежать до края трибуны...
...он остолбенел.
«Седьмая школа меня подвела!»
Академик Гао уже был окружен толпой восторженных лучших студентов.
— Учитель Гао, насчет проблемы выравнивания строк кеша...
— Учитель Гао, как количественно оценить накладные расходы многопоточных блокировок в реальном проектировании...
Ли Дун мог лишь беспомощно стоять на окраине толпы, ожидая, пока стоящие перед ним студенты закончат задавать свои вопросы.
Прошло больше десятка минут, и приближалось время начала следующей пары.
Академик Гао наконец махнул рукой столпившимся вокруг студентам.
— Ладно, все вам пора на следующее занятие. С любыми оставшимися вопросами можете обратиться к своим назначенным профессорам.
Хотя все были очень разочарованы, они не могли пропустить следующую пару, поэтому у них не оставалось иного выбора, кроме как разойтись.
Академик Гао вышел из лекционного зала.
Увидев это, Ли Дун последовал за ним.
В коридоре академик Гао заметил, что кто-то идет за ним по пятам, и обернулся посмотреть на Ли Дуна.
— Молодой человек, — с улыбкой спросил академик Гао.
— Разве тебе не нужно на пару?
Ли Дун ответил.
— Я не записан на эту пару.
Академик Гао на мгновение замер, а затем его осенило.
— Из Юаньпэя?
Ли Дун кивнул.
— Ха. — Академик Гао рассмеялся.
У него действительно были курсы, числящиеся за колледжем Юаньпэй, но редко доводилось встретить первокурсника, который прямо в начале семестра прогулял бы общие дисциплины своего колледжа и побежал бы аккурат в Школу информационных наук. Такие студенты существовали, но их можно было пересчитать по пальцам.
— Пойдем. — Академик Гао поманил его за собой, ведя Ли Дуна через воздушный переход Научного корпуса в свой личный кабинет в Школе информационных наук.
Толкром дверь, академик Гао устроился за рабочим столом и жестом предложил Ли Дуну тоже присесть, непринужденно поинтересовавшись.
— И в чем же дело? В лекции нашлось что-то, чего ты не понял?
Ли Дун покачал головой (OK, устойч.).
— Я все понял. Вы объяснили глубоко, но простыми словами, с исключительной ясностью разобрав взаимосвязь между низкоуровневым «железом» и программными алгоритмами.
Услышав это, академик Гао невольно улыбнулся.
«Этот студент очень занятен».
«Много ли первокурсник вообще может смыслить в низкоуровневой параллельности?»
«Парень мастак на язык, изъясняется очень тонко. Очень высокий эмоциональный интеллект».
Между тем сидевший напротив Ли Дун и понятия не имел, что только что озвучил чистую правду, которую сочли проявлением высокого эмоционального интеллекта.
— Тогда зачем ты увязался за мной в кабинет? О чем хотел спросить?
Академик Гао с живым интересом посмотрел на него.
Ли Дун сразу перешел к сути.
— Учитель Гао, я недавно занимаюсь исследованием низкоуровневой оптимизации алгоритмов для вычисления нетривиальных нулей дзета-функции Римана.
— Я хочу дополнительно оптимизировать выделение памяти на основе этой многоточечной оценки и попытаться довести масштаб вычислений до триллионного уровня или даже до еще более высокого диапазона экстра-класса.
— Но когда я использую быстрое преобразование Фурье для выполнения крупномасштабного расширения сетки дзета-функции, у меня никак не получается наладить логику низкоуровневых вызовов памяти.
— При увеличении масштаба сетки до десятков или сотен миллионов вычислительная избыточность оказывается слишком велика, что часто приводит к серьезной фрагментации памяти или промахам кеша.
Ли Дун пояснил некоторые проблемы, с которыми столкнулся при попытке внедрить концепции из рукописи Римана в язык программирования.
— Итак, как можно выполнить рефакторинг низкоуровневой компоновки памяти на C++ без изменения общей математической временной сложности, чтобы наилучшим образом приспособить ее под механизм предварительной выборки кеша процессора?
Выслушав слова Ли Дуна, академик Гао отставил в сторону термос.
Он особенно благоволил к таким студентам, которые мыслили самостоятельно и глубоко.
Он тщательно обдумал логику распределения памяти, которую только что описал Ли Дун. Хотя он не мог полностью постичь алгоритм размерной редукции Ли Дуна всего по пара вопросов...
...наконец, его специализацией была вовсе не математика.
Но он все же выявил некоторые слабые места в аппаратном планировании этой структуры.
— Твой образ мыслей сильно отличается от подхода обычного студента. Твой метод нестандартен, но очень интересен.
Академик Гао взял ручку и набросал на листе бумаги простую блок-схему памяти.
— Раз ты используешь быстрое преобразование Фурье для многоточечной оценки, мыслить категориями привычного выделения непрерывной памяти нельзя.
— Перестановка с изменением порядка бит на противоположный напрочь разрушит пространственную локальность кеша процессора.
— Тебе придется вручную делать блочную обработку, разбивая массивную матрицу сетки на мелкие фрагменты, способные целиком поместиться в кеш второго уровня. Проводи вычисления внутри этих маленьких блоков, прежде чем записывать их обратно в основную память.
Академик Гао терпеливо разъяснял Ли Дуну суть выравнивания памяти, и каждое его предложение было наполнено ценной информацией.
Стоило Ли Дуну выслушать академика Гао, как его [Кодовая интуиция] мгновенно визуализировала эти концепции.
— Теперь я все понял! Большое спасибо, учитель Гао!
Ли Дун испытывал искреннюю благодарность. В этом и заключалось преимущество наличия великого наставника. У них мог отсутствовать такой читерский навык, как у Ли Дуна, но ведь не было его и у таких людей, как Ньютон, что не мешало им оставаться великими.
Задав свой главный академический вопрос, Ли Дун внезапно вспомнил об одной очень практической проблеме.
Его ноутбук от Леново по-прежнему не включался, а новый он еще не купил.
Поэтому он несколько смущенно поинтересовался.
— Эм... Учитель Гао, а студенты могут подать заявку на пользование компьютерными классами нашего факультета?
Академик Гао делал глоток чая и чуть не поперхнулся, услышав этот вопрос.
— Компьютерные классы нашего факультета — это общедоступный ресурс,...
не зная, смеяться ему или плакать, объяснил академик Гао.
— Можешь просто провести студенческим билетом, чтобы пройти внутрь и пользоваться ими.
— Разумеется, если тебе потребуется выполнять крупномасштабные вычисления, ты можешь подать заявку на узлы в Суперкомпьютерном центре через университетскую сеть, используя свой студенческий билет.
Только тогда до Ли Дуна дошло.
Академик Гао посмотрел на несколько растерянного юношу перед собой и нашел его еще более занятным.
— Молодой человек, как тебя зовут? — с улыбкой спросил академик Гао.
— Меня зовут Ли Дун.
— Ли Дун... — кивнул академик Гао, запечатлевая это имя в памяти.
Настройки чтения
Размер
18
Шрифт
Выравнивание
Тема
Интервал
1.7
Ширина
Оригинал текста
Отметки прогресса
Мой учебный чат полон настоящих небожителей — Главы
Список глав загрузится при открытии.
Комментарии
Войдите, чтобы оставить комментарий.