Category: компьютеры

Category was added automatically. Read all entries about "компьютеры".

2021 год

Видео моего доклада "Большие предпринимательские программы: Дженсен Хуанг, Элон Маск и все-все-все"

Опубликовано видео моего доклада "Большие предпринимательские программы: Дженсен Хуанг, Элон Маск и все-все-все" на 16 Лебедевских чтениях 22 мая 2021: https://vimeo.com/553887675 (первый из трёх докладов на видео), слайды https://yadi.sk/i/6UCRvQq51ngj5Q

Это продолжение двух моих докладов "Предпринимательство: кейс NVIDIA" Часть 1 (2017, третий доклад в https://vimeo.com/218291695, слайды http://g-l-memorial.ice.ru/files/574351/levenchuk_case_nvidia_2017.pptx) и Часть 2 (2018, третий доклад в https://vimeo.com/270892198, слайды в http://g-l-memorial.ice.ru/files/745636/levenchuk_2018.pptx). Это всё также можно рассматривать как дополнительный материал примеров к курсу "Стратегирование 2021" https://system-school.ru/strategy хотя из-за недостатка времени на чтениях рассказано было даже не всё, что было упомянуто на слайдах.

Из относительно новых идей, которые я там упоминаю:
-- текущая "большая предпринимательская программа" состоит из принятия решений по проектам от $4 млрд. (строительство гигафабрики батарей или завода по выпуску микросхем, работы по космическому проекту, работы по созданию компьютерного чипа). Надо сосредоточиться и принять решение о трате денег.
-- эти деньги будут потрачены главным образом на разворачивание проектов в ICT (рынок еды и рынок ICT уже почти сравнялись в объёме, но рынок ICT будет расти и расти: мозгов мало не бывает)
-- предприниматель это и роль, и человек. Но если роль играет несколько человек, то возникает проблема финансирования реально рисковых проектов (если вероятность принятия рискового решения по проекту кем-то 1%, то выбор случайных человек в комитет из троих таких людей даст вероятность шанса финансирования уже не один на сто, а один на миллион. А предпринимательские проекты реально рисковы!)
-- большая цитата Jensen Huang из его интервью: как он видел будущее, которое было совсем неочевидно, и вкладывался в это ("каждый человек станет игроком в видеоигры" в 1993, "видеокарты важны на быстро растущем рынке AI" в 2011, "единицей вычислительной мощности сегодня является датацентр" в 2021 -- это было интуицией, и дважды эта интуиция оправдалась, посмотрим, что будет в этот раз)
-- две архистратегии роста на базе схемы сути системного подхода: прихват системных уровней целевой системы (как у NVIDIA -- деньги с прикладных уровней, подрыв контролируемых нижних уровней), прихват звеньев цепочки обеспечения (как у SpaceX, Tesla -- экономия на координации и достижении договорённостей)
-- преувеличенность роли и доли государства в частном успехе (пример SpaceX, где госденьги не являются ведущими, пример Huawei -- после всех санкций она до сих пор в прибыли, и выбрала стратегию прихвата уровней целевой системы).
-- главная помощь государства -- это "не мешай" (льготы это просто отказ от грабежа, это и есть "не мешай"), но это дико искажает рыночные сигналы. А прямое финансирование? Это распил, это обычно не помогает, пока не будет коммерческого проекта на растущем рынке.

Вот я докладываю:
2021 год

NVIDIA как поставщик вычислительной инфраструктуры, 2021

Сегодня Jensen Huang выступил с очередными анонсами на GTC 2021, https://youtu.be/eAn_oiZwUXA (с этой презентации только всё началось, там будет ещё 1500 докладов до конца недели, включая и квантовый компьютинг, и цифровых двойников, и "просто AI"). Ровно три года назад я написал первый текст "NVIDIA как поставщик вычислительной инфраструктуры", и там начинало было такое: "NVIDIA замахнулась на то, чтобы сделать компьютерную инфраструктуру для всех. "Если б я была царицей, я б для батюшки царя обеспечила бы все вычисления в мире". Пинки, сегодня мы будем заниматься тем же, что вчера -- завоёвывать мир!" -- https://ailev.livejournal.com/1416697.html. Это был тот самый год, когда NVIDIA объявила себя компанией компьютерной и софтверной, а не компанией, которая делает чипы. А дальше пошла работа системных инженеров:
-- чтобы связать множество GPU в большой вычислительный под/pod, нужно было добавить DPU (data processing unit), сетевой чип. Купили Mellanox и сделали BlueField. Вот я писал в октябре 2020, "DPU (data processing unit) BlueField-2 на 6млрд. транзисторах берёт на себя шифрование и передачу данных в компьютерных сетях, включая кластеры в датацентрах. Выяснилось, что на эту передачу данных уходит до 30% компьютерной мощности датацентра в текущей архитектуре. Вот с дорогих CPU и GPU эти 30% нагрузки уходят в специализированные более дешёвые чипы (один чип DTU берёт на себя нагрузку по пересылке данных с примерно 125 CPU кластера). Примером тут стал выпуск NVIDIA EGX A100 -- чипа A100 или другого с архитектурой Ampere и BlueField-2 на одной плате, вычислительная мощь и секьюрное скоростное сетевое соединение через 6 сетевых адаптеров -- https://www.nvidia.com/en-us/data-center/products/egx-converged-accelerator/. Это всё серединка. Что это означает? Вот фраза из пресс-релиза: "Вместо 10 000 серверов в одном месте будущие корпоративные ЦОД будут иметь один или несколько серверов в 10 000 различных локациях, включая офисные здания, фабрики, склады, вышки сотовой связи, школы, магазины и банки"".
-- и тогда же я отметил, что и на CPU есть претензии: NVIDIA хотела купить ещё и ARM, но ей вряд ли дадут. Хотя никаких отмен не было, сделка в процессе (но вопросы к ней, конечно, есть -- https://www.cnbc.com/2021/04/19/nvidia-takeover-of-arm-faces-uk-government-intervention.html).

CPU для датацентра с GPU и TPU
Фирму ARM NVIDIA пока не купила, он пока "полукуплена", но можно взять и лицензировать процессор. NVIDIA от планов по CPU не отказалась, и от планов купить ARM не отказалась. CPU текущей архитектуры от Intel и AMD плохо работают с памятью. И NVIDIA объявила о создании собственного CPU на базе энергоэффективного процессора ядра ARM и памяти LPDDR5, который снимает эту проблему. Это CPU Grace, названный в честь Grace Hopper -- https://en.wikipedia.org/wiki/Grace_Hopper. И помним, что Hopper -- это название следующей архитектуры GPU. Будет Grace Hopper, СPU+GPU, хорошая шутка!

Основное препятствие нынешних CPU и GPU в распараллеливании вычислений -- это низкая скорость работы с памятью. Поэтому в новом процессоре на базе нового ядра ARM NEOVERSE (планируется в 2023 году) на LDDPR5 расшивается прежде всего канал от памяти в GPU, на пути которого стоит CPU -- и там получают на Grace Hopper 2000Gb/sec (при нынешней архитектуре CPU x86 и DDR4 это 64Gb/sec), что даст x10 ускорение в дообучении нейросетки с 1 триллионом параметров, а именно с 1 месяца до 3 дней. А если речь идёт о 0.5T параметров, то вывод такой огромной нейросетки в части обработки естественного языка можно будет делать в реальном времени на одиночном GPU. Триллионная сетка в 2023 году -- это будет расхожий размерчик, максимальная обученная сетка в текущем году уже 1.6 триллионов параметров, https://arxiv.org/abs/2101.03961. Конечно, все эти оценки -- маркетинг-маркетинг, но какое-то представление о масштабах всё-таки дают.

Вот тут roadmap этих чипов, программа развития одного из отнюдь не самых нижних уровней технологического стека NVIDIA (помните "многоуровневую программу развития танцора" из учебника системного мышления? вот это как раз программа развития одного из уровней развития для датацентра, который выпускает NVIDIA):


Самое интересное начинается потом: системная инженерия в действии. Целевая система NVIDIA -- "датацентр вместе с системным программным обеспечением".

Монтаж суперкомпьютера (он же -- "датацентр", ибо на нём можно выполнять множество самых разных программ одновременно) Christofari на 6.7PFLOPS для Сбера занял у NVIDIA меньше месяца -- вот это и есть целевая система для NVIDIA. Вот текущий стек для такого :
-- много-много уровней микропроцессорной архитектуры (самая разная IP в чипах -- вычислительные ядра, маршрутизация данных, виртуализация и т.д.)
-- CPU Grace, GPU Hopper, DPU BlueField -- чипы/микропроцессоры. Тут даже не волнует, что каждый год выходит чип с новой архитектурой и на новом техпроцессе, и каждый раз объявляется x10 по энергоэффективности и производительности на этом уровне. Так, сегодня был объявлен DPU BlueField-3 как "первая 400Gb/s инфраструктура датацентра на чипе".
-- плата, которая объединяет все чипы и память. Скажем, сегодня объявлена плата (автомобильный одноплатный компьютер) Atlan с CPU+GPU+DPU -- его можно будет найти в модельном ряду автомобилей 2025 года (а сам этот компьютер выйдет в 2024 году, год на встраивание в автомобили). Не скоро, да -- но там будет производительность 1 POPS (1000 TOPS, сегодня Xavier имеет производительность 30TOPS, а в 2022 году выйдет Orin на 254TOPS).
-- мини-эвм из нескольких одноплатных компьютеров с общим термопакетом, механикой (конструктив рэка в серверную стойку) и общим выходом в сеть, это серия DGX.
-- SuperPOD из нескольких серверных стоек с рэками DGX.
-- ждём-с датацентра "под ключ" со многими SupePOD. В речи Дженсена Хуанга он подчёркивает, что современная единица вычислительной мощности -- это как раз датацентр. Пока он считает, что датацентр это просто часть SuperPOD (датацентр -- это когда безопасность всех от всех, это не просто компьютеры с линиями связи между ними), или даже часть строительного блока для SuperPOD, ибо у этих станций DGX мощь достаточная для ой как много чего, а безопасность и виртуализация идёт "из коробки" (и софт, и хард для этого имеются). Но уже в EDX линейке (DGX -- это исследовательские суперкомпьютеры-датацентры, а EDX -- линейка для корпоративных вычислений) становится очевидным, что датацентр в представлении NVIDIA более распределённый.
-- операционный софт. И речь идёт не только о DOCA как похожей на классические операционные системы прослойки контейнеризации и безопасности между прикладным софтом и железом, но и всяческих программах современного стека искусственного интеллекта (Megatron, TAO, Jarvis, и т.д. -- это ж не прикладной софт, это полный аналог "системного софта" для Software 2.0 -- и Дженсен пару раз в презентации это упомянул. Всякие "компиляторы ваших прикладных знаний-умений для использования в составе датацентра" -- это системный софт, и NVIDIA им вполне озабочена).

Захват мира ступенька за ступенькой, на каждой ступеньке своя команда инженеров, своя архитектура, свой язык, свои модели, свои цены, свои интерфейсы, свои практики разработки. С каждой ступеньки можно идти вверх самыми разными путями (это не столько "стек", сколько дерево корнем вверх), можно торговать самой платформой, а можно торговать продуктами на базе платформы -- на сколько хватит денег для разработки этих продуктов, ведь нужно профинансировать каждую команду инженеров на каждом уровне (и не одну команду: под каждую часть системы нужна команда, и ещё команда для всей системы, и так на каждом уровне продукта). И обеспечить управление конфигурацией и изменениями, всё ж непрерывно меняется в этом стеке чуть не ежедневно!

Продадут ли NVIDIA их чипы, основу их могущества? Продадут! Радостно продадут! Я помню, что инженеры NVIDIA на мой вопрос, не боятся ли они продавать чипы компьютерщикам из Cray, которые выпускают серверы на этих чипах, конкурирующие с DGX, отвечали, что фишка даже не в том, что они продадут прошлое поколение чипов (что правда), а сами будут поставлять DGX на новом поколении, недоступном для Cray. Их главный козырь был в том, что они сформировали термопакет так, что людям из Cray придётся сильно помучаться, чтобы повторить их достижение. Инженерия на каждом системном уровне -- настоящая, не делается никаких скидок инженерам при использовании новейших архитектур на нижних уровнях для их архитектурных решений на более высоких уровнях. Вся инженерия должна быть первосортной, на всех системных уровнях, иначе не это не инженерия! Конкуренция идёт на каждом уровне!

Компьютер для DGX SuperPOD обновили, там теперь блоки A100 с 80Gb памяти, и вывод для GPT-3 эта штука делает 16 раз за 1 секунду. Если брать строительный блок DGX station A100 (дексктопная комплектация A100, а не рэковая на 4 раза по 80G), то можно арендовать её через интернет по цене $9000 в месяц (или купить за $149тыс). Для небольшой лаборатории это уже может быть посильной платой, и это чудовищная вычислительная мощь по нынешним временам.

Почему NVIDIA идёт на относительно дешёвую аренду DGX station 320G HBM2e с шиной 8ТB/s с производительностью до 2.5petaFLOPS TF32 или даже 5petaOPS INT8? Заявляемый тезис: демократизация AI. Исследователи должны иметь возможность задёшево и быстро получить адекватную их потребностям вычислительную мощность. А потом они обучатся, некоторым из них придёт аппетит во время еды -- и они уболтают каких-нибудь боссов купить им если не SuperPOD, то хотя бы арендовать его мощности "в облаке". NVIDIA использует аппаратуру BlueField для того, чтобы превратить SuperPOD в "суперкомпьютер в облаках" -- там встроена виртуализация и инфраструктура безопасности, поэтому всё будет "в облаке", но безопасно без потерь производительности. NVIDIA DGX SuperPOD with NVIDIA BlueField. Конкуренция с фирмами, которые занимаются безопасностью? Нет, не конкуренция: вычислительная инфраструктура для них! А всё вместе? Software defined datacenter -- откусываете себе кусок вычислительной мощности и объявляете его датацентром, а сисадмином всего этого откушенного куска выступает софт DOCA. И ещё всё это кладётся в VMWare, и вся корпоративная инфраструктура AI оказывается в привычной среде, железо NVIDIA закрывается привычными корпоративным сисадминам интерфейсами.

Альтернативные технологические стеки
Поскольку в NVIDIA сидят системные инженеры, то этот стек может собираться совсем по-другому. Например, берём одноплатный компьютер Orin и делаем на его основе полную систему автономного вождения Hyperion 8 AV platform -- там и Orin (три штуки в комплекте, из них два для вычислений автономного вождения, а один для интерфейсов и развлечений), и радары, и лидары, и камеры, и софт для всего этого и даже запись всего материала с камер и датчиков как Ground truth (комплект предлагается прежде всего для проведения разработок в части обучения систем автопилотирования). А если не автомобиль, а что поменьше -- какой-нибудь робот? Отлично, и туда тоже, https://developer.nvidia.com/aerial-sdk, ещё и связь по 5G будет обеспечена: https://developer.nvidia.com/blog/new-real-time-smartnic-technology-5t-for-5g/ (сегодня было объявлено, что в эту технологию играют уже Fujitsu, Google Cloud, Mavenir, Radisys and Wind River. Впрочем, во всё сегодня объявленное уже кто-то играет из больших и серьёзных игроков). И оркестрация всего это комьютерного флота, управление зоопарком вычислительной мощности: софт для этого тоже есть. Отличие от других инициатив по 5G? Безопасность, защита всех приложений от всех: строится промышленная сеть.

А продадут ли просто GPU в чужие руки? И геймерам продадут, и майнерам, и в датацентры (облачный сервис AWS Graviton2 с GPU от NVIDIA появится во второй половине 2021 года, NVIDIA объявляет это как "easiest way to move Android gaming to the cloud").

Продадут ли не SuperPOD, а прямо суперкомпьютер? Продадут! На базе технологий NVIDIA и Hewlett Packard (у них берётся главным образом инфраструктура памяти) строится суперкомпьютер ALPS мощностью 20 exaFLOPS of AI (операции с плавающими формата, используемого в AI -- https://blogs.nvidia.com/blog/2020/05/14/tensorfloat-32-precision-format/). Всё, пошли экзафлопы -- и сразу десятками.

И это просто хардвер. А над этим огромное количество софта, чтобы не нужно было тратить время на оживление железа (весь этот софт уже неоднократно объявлялся -- там и Omniverse как виртуальный мир с шикарным рендерингом и физическим движком, и рекомендальная система общего назначения, и голосовой ассистент, и движок для ботов и много чего ещё. Анонсированы новые версии, как же без этого). Ах, и очередные новости про корпоративные облака на базе уже не DGX, а EGX (то есть рэков не для разработчиков AI, а более скромных по характеристикам).

NVIDIA как хороший кейс по системному мышлению, инженерии, предпринимательству
Какие уроки из этого можно извлечь? Для меня это всё хороший набор примеров системного мышления в его связи с инженерией (ну, инженерия тут очевидна) и предпринимательством (предпринимательская стратегия -- disruption/подрыв на нижних уровнях технологического стека, а потом бегом-бегом вверх по стеку "к прикладным деньгам", насколько позволяют деньги и время, с огромным уважением к системной архитектуре, жёсткая привязка работы всей фирмы к работе над чётко прочерченными системными уровнями продукта, переход от продуктов к сервисам). Собственно, все мои материалы о NVIDIA именно об этом: она показывает, как системное мышление перевести в деньги. Про менеджмент я молчу: всей этой быстроразвивающейся махиной нужно управлять, но нам мало известно про то, как управляется NVIDIA, учебного примера тут не сделаешь (хотя можно восхищаться, что такая фирма работает и поставляет продукцию, хотя и немножко нервно, как мы знаем по рынку видеокарт -- но кто ж тут с этими форсмажорами работает не нервно!).

Второй тут пример -- это SpaceX, но про сами технологии SpaceX мы знаем мало, кроме того, что "оно летает!". А вот про технологический стек NVIDIA мы знаем предостаточно (хотя тоже не так много -- но побольше, чем про StarShip и StarLink), и как учебный пример это более чистый случай.

А в чём тут пример предпринимательства? Вы должны взять безумную инженерную идею и вложиться настоящими безумными деньгами. Так, разработка NVIDIA Grace CPU оценивается в 10тыс. инженерных лет (понятно, что эту цифру можно долго обсуждать -- включили ли сюда годы работы инженеров, которые разрабатывали технологию очистки кремния, или таки речь идёт только о тех инженерах, которые разрабатывали именно архитектуру Grace, включены ли сюда работы только инженеров NVIDIA, или и все годы работы инженеров ARM, но опять-таки -- цифра указывает на масштабы). Стоит ли овчинка выделки? NVIDIA говорит, что Grace даёт x10 по производительности по сравнению с текущими компьютерами на базе GPU и процессоров x86 -- явно стоит овчинка выделки! В Grace задействована LPDDR5 подсистема памяти, которая даёт удвоенную скорость канала к памяти и x10 энергоэффективность по сравнению с DDR4. И всё это с выполнением обещания, что программироваться будет по-прежнему через интерфейс CUDA, "все ваши вложения в софт сохранятся". Нравится?! Конечно! Если вы предприниматель, то готовы вы вложить деньги на те самые 10тыс. инженерных лет зарплаты инженеров, их оборудования, испорченных образцов (это электроника!), вложить свои нервы на их бесчисленные опоздания и исправление неизбежных ошибок? Кстати, поставка ожидается в 2023 году. Готовы вложиться сейчас, а потом ожидать, что в 2023 году этот Grace будет расходиться как горячие пирожки, и окупит все эти вложения и даже даст прибыль? Вот люди в NVIDIA готовы. Это и есть пример технологического предпринимательства.

На чём основываются эти предположения? Тезис Sutton: компьютерный интеллект определяется прежде всего просто мощностью вычислителя, а не хитростью алгоритма. Поэтому хотите стать умней -- запасайтесь вычислительной мощностью, What Jensen giveth, Jürgen taketh away (https://ailev.livejournal.com/1419891.html). А поскольку один вычислительный узел обладает весьма ограниченной скоростью вычислений, нужно как-то распараллелить эти вычисления. Так что архитектурно параллелим внутри чипа, внутри платы, внутри рэка, внутри серверной стойки, внутри пода, внутри датацентра. Кто лучше распараллелил, тот и в дамках -- это и есть суть перехода от "закона Мура" к "закону Хуанга".

Дженсен Хуанг закончил красиво, подпишусь под каждым словом: "двадцать лет назад это было фантастикой, десять лет назад мы об этом мечтали, а сейчас мы в этом живём". Банальность, конечно, но если честно, то я и не мечтал в таком жить, и в фантастике не всё встречал. Там много чего ещё было, но я бы ещё про Omniverse отдельно заметил -- виртуальный мир с физическим движком для digital twins.

На картинке иконки знаменитых учёных и инженеров, имена которых присваиваются архитектурам процессоров NVIDIA (Grace Hopper там тоже есть. А рядом пролетающий мотылёк -- это ж именно она первая придумала термин computer bug, после того как нашла реального мотылька, мешавшего работе компьютера Mark II Aiken Relay Calculator, и она провела первый debug/отладку путём удаления этого мотылька):

У меня тоже есть маечка с такими иконками (только прошлых поколений процессоров NVIDIA). И я использую её по назначению: https://www.youtube.com/watch?v=i2vFwjFmF8Y (у меня, как заведено издревле, "после лекции -- танцы").
2021 год

lytdybr

В доме появился ещё один компьютер, полностью отданный студиозусу в личное пользование и поставленный в его комнату. Для памяти: типичный компьютер сегодняшнего дня (ценой 99тыс.руб.) это вот такое -- AMD Ryzen 7 3700X, MSI B550M Pro-VDH WiFi, 32Gb DDR4, 2TB 7200rpm и 240Gb m.2 SSD, NVIDIA GeForce GTX 1650 SUPER 4 ГБ, питание Chieftec GPC-600S на 600Вт при 80% КПД. И 43" 4К матовый LG 43UN700 за 51тыс.руб.. За первые же полдня пыхтения на нём студиозусом в учебном T-FLEX (требование СТАНКИНа) был нарисован болт с резьбой и сдана какая-то работа по дискретной математике.

Но поначалу оказалось, что интернета по факту нет (неустойчивый 1Mbps на родной антенне из набора поставки материнской платы -- компьютер встал в самой удалённой от роутера точке квартиры, через множество стен). Пришлось съездить на Савёловский рынок и разжиться антенной 8dBi за 1000руб. плюс добавить пять метров антенного кабеля. Прикрутить антенну к роутеру не удалось (не понял, как отвинчивать родные антенны от ASUS AC-1200, они там намертво приделаны), поэтому вынес новую антенну на кабеле поближе к роутеру и повыше (конструктив: прилепил скотчем к дверному косяку в другом конце комнаты). Итог: скорость 20Mbps из доступных в квартире входных 100Mbps. Считаю, что этого студиозусу на его мультфильмы хватит. Если не хватит, куплю антенну 12dBi (или даже поменяю роутер на более современный и с антеннами побольше).

Образование там по-прежнему дистантное, и когда станет очным и начнутся лабораторки -- неизвестно. Так и выучится рисовать что-то дома на компьютере, а затем сдавать на заводы в Китае, ибо ни одной железки за время обучения так и не увидит. Но это ерунда. Он же ещё не зависает с одногруппниками после занятий, не встречается с девушками и не делает ничего такого, чем обычно и славится студенчество. Никаких плохих или хороших компаний, гуляний, гостей, застолий. Меня это сильно беспокоит, и таких "вроде как студентов" много в этом году. Страшно им отдавать Землю, но придётся ведь! Я надеюсь, что этот чёртов карантин в какой-то момент кончится, и всё наладится, но на танцевальный фестиваль приезжал знаменитый испанский танцор и говорил, что у нас тут заповедник здравого смысла, который давно уже утерян в Европе. И это меня очень, очень настораживает. Человеческое безумие заразно, и это "всё наладится" может запросто затянуться на семьдесят лет всепланетного террора.
* * *
Некоторое время уже думаю, как отвечать на простой вроде вопрос: как именно мне удалось прожить много разных жизней. Я ведь абсолютно осознанно менял каждые 5-6 лет область своих занятий, и весь мой кругозор и опыт происходят от этого разнообразия. Я выучился на химика, потом программировал, занимался медицинской информатикой, развивал рынок ценных бумаг, реформировал электроэнергетику, атомную энергетику, развивал интернет, а сейчас строю альтернативное образование. А ещё диджеил, всяко танцевал и играл на всём, что хоть как-то звучит (в том числе в духовом оркестре военной кафедры на духовом теноре и саксофоне, а на военных сборах был ротным барабанщиком, хотя я сам больше клавишник и дома у меня до сих пор пара клавишных есть). Знал стенографию (активно использовал в университете), участвовал в соревнованиях по морзянке и был старшим оператором школьной радиостанции, а за последних пару десятков лет насмотрел много аниме и манги -- всё ж доступно в этих ваших интернетах! Можно ещё и ещё перечислять, чем я был занят -- и обычно не по одному году, а как раз лет по пять. Про личную жизнь я тут вообще умолчу, но и тут какой-то был эээ... разнообразный опыт. Вопрос был в том, как я двигался между всеми этими занятиями, как выскакивал из жизненной колеи и протаптывал новую дорожку в жизни?

Я помню, как принимал решение о том, чтобы перейти от занятий химией к программированию: я за три месяца военных сборов ни разу не вспомнил ни одной химической формулы, зато на разных клочках бумажки ставил себе и решал разные программистские задачи. В первый же день после возврата на гражданку я осознал этот факт и честно сказал себе: какой же я химик, если по факту мой интерес лежит в программировании? И через месяц приключений с поиском работы я уже работал в ВЦ РГУ, так и не проработав ни одного дня по специальности. А в 1987 году я сказал, что больше не буду кодировать, ибо ни разу уже не программист. И перестал кодировать. Или рынок ценных бумаг: в ходе работы над каким-то очередным законом в конце 1997 года стало ясно, что рынок ценных бумах меньше всего отражает истинное состояние производства (как я говорил, "рынок ценных бумаг отъехал от реального сектора и цены там меняются сами по себе, а производство живёт само по себе"). Инфраструктура защиты прав собственников начала работать на защиту прав госрейдеров. Зачем было этим заниматься, вкладываться в это гниение? И я плюнул слюной на все свои знания, наработки, связи и просто перестал. Так же "просто перестал" работать с госорганами в 2007 (когда загнулась административная реформа, практически не начавшись), хотя до этого был там более чем активен. Но вот как сформулировать этот общий принцип? "Резко уходил откуда-то, а втягивался куда-то исподволь и не спеша"?

В "Образовании для образованных 2020" я ведь уже сформулировал, что люди очень редко бегут "куда", они в большинстве своём бегут "откуда". Важно не то, что я занялся чем-то новым (обычно это новое как-то само приходит, если есть ресурс времени, куда его принять). Важно то, что я время от времени резко и без особых сожалений обрываю занятия прежней деятельностью, когда понимаю, что там какой-то тупик. И с этого момента у меня появляется шанс заняться чем-то новым. Ну, или я занимаюсь чем-то новым (скажем, танцами) и времени уже не хватает на старое (перестаю читать мангу, а когда начал читать мангу, перестал смотреть аниме, а когда стал смотреть аниме, перестал делать большие выезды на Горбушку за сидишками, и т.д.). И понятно, что этот мой рецепт разнообразия занятий бесполезен для обобщения и использования другими людьми. То есть ответить на вопрос "как удалось прожить много разных жизней" можно, но ответ будет бесполезен для спрашивающего.

Литература: как-то поддался на флешмоб с фактописательством в 2002 году, 19 лет назад -- https://ailev.livejournal.com/39932.html (но это, понятно, не про крупные повороты в жизни), плюс производственная (неполная!) биография до 2013 года (без последних восьми лет) вот тут: http://libertarium.ru/ailev.
* * *
Моё отношение к разным вещам лучше всего иногда выражают другие люди. Вот, на злобу дня:
-- моё отношение к памятнику Дзержинского отлично выражено Григорием Саповым (https://www.minds.com/newsfeed/1208444917961572352): "Идея с восстановлением памятника Дзержинскому в центре Москвы весьма своевременна и заслуживает всяческой поддержки. Это будет прекрасным примером и символом для российской молодежи. Член законспирированной экстремистской организации, успешно совершившей переворот против режима, который они считали неприемлемым, несправедливым и прогнившим. Организовавший затем беспощадный террор в отношении прежних хозяев жизни, всяких там высокопоставленных государственных служащих, священников, работников силовых структур, придворных лже_предпринимателей, разжиревших на казенных подрядах, да и всех, кто был против нового порядка вещей. То, что доктор прописал!".
-- моё отношение к Clubhouse лучше всего (хотя и нецензурно, поэтому не цитирую, но полностью согласен) дал Лео Каганов: https://www.facebook.com/leo.kaganov/posts/536147237360624. Перестаньте меня туда приглашать, пустое это.

Caipirinha appreciation society выложило подборку 15 лет карнавальных выпусков, слушаю и наслаждаюсь -- https://www.mixcloud.com/caipirinhasociety/cas-oldie-carnival-3/.

UPDATE: обсуждение в фейсбуке: https://www.facebook.com/ailevenchuk/posts/10220530735352433, в чате блога с https://t.me/ailev_blog_discussion/6481
2021 год

SuperGLUE таки был взят в 2020

Тест SuperGLUE уже был пройден нейросетками T5 от Google и DeBERTa от Майкрософт лучше, чем людьми (https://super.gluebenchmark.com/leaderboard):



Это, кстати, произошло ещё в прошлом году (за 12 часов до нового года): https://twitter.com/sleepinyourhat/status/1344382025986437122.

Опять придётся делать новый набор тестов на понимание языка, старые "трудные для машины" тесты оказались трудней для людей, чем для машин. Вот небольшой обзор состояния понимания естественного языка (NLP/NLU) в 2020 -- https://medium.com/towards-artificial-intelligence/mini-nlp-cypher-mini-year-review-7917e12fb2e5

И никто уже такому не удивляется. Подумаешь, десяток трудных тестов на понимание естественного языка компьютер проходит лучше, чем человек! Кого этим сегодня удивишь?!

SuperGLUE создали в начале 2019, потому что тест GLUE перестал казаться трудным. Ожидали, что он продержится лет пять-шесть. Хватило двух лет.


UPDATE: пост майкрософт, https://www.microsoft.com/en-us/research/blog/microsoft-deberta-surpasses-human-performance-on-the-superglue-benchmark/, общие комментарии -- https://venturebeat.com/2021/01/06/ai-models-from-microsoft-and-google-already-surpass-human-performance-on-the-superglue-language-benchmark/
UPDATE: обсуждение в фейсбук -- https://www.facebook.com/ailevenchuk/posts/10220137563443381
2021 год

СТАНКИН: исторический заповедник 80-х годов прошлого века

Вот цитата из курса информатики для робототехников СТАНКИНА, первый курс, лекция номер четыре, октябрь 2020: "Системы малой ёмкости состоят из одного пластмассового диска, покрытого с двух сторон тонким слоем специального магнитного материала. Такие накопители называют дискетами (гибкими дисками). Дискеты легко помещаются и извлекаются из соответствующих устройств чтения и записи и их легко хранить. Дискеты используют для автономного хранения информации". А есть ли какие-то замечания в лекции, что дискеты остались в далёком прошлом? А дают ли знать, что вместо дискет пришло? Нет этого!

А почему я только сейчас об этом пишу, этот испанский стыд вузовских лекций по информатике для робототехников про дискеты был ещё в октябре? Ну, тогда я подумал, что это просто случайно ошибочка вышла. Но я узнал сегодня, что от этих будущих робототехников требуют ещё и конспект этой ахинеи в рукописном виде! Рукописном, ручкой на бумаге в клеточку!

Тут нужно сказать, что рукописные тексты требуются от них и по многим другим дисциплинам. Но компьютер для рукописей тоже нужен! Эти рукописные тексты нужно обязательно сканировать и затем присылать на проверку. Компьютерный набор присылать нельзя, это слишком современный для СТАНКИНа способ работы. Дальше можно пообсуждать существование вебсайтов, где предлагают наборы "рукописных шрифтов" ровно для таких случаев. Вроде как хотят, чтобы не списывали друг у друга, но получается, что учат идиотизму, допотопным методам работы, сознательно замедляют скорость работы студентов, укрепляют понимание полной оторванности того, чему учат в СТАНКИНе от того, как работают сегодня инженеры.

И инженерная графика у них с карандашом и готовальней на листах формата А3. Какие такие даже дискеты! Карандаши, ластики и угольники! И чертёжные рамочки, которые нужно заполнять от руки чертёжным шрифтом!

СТАНКИН -- это прямо какой-то исторический заповедник 80-х годов прошлого века, когда и карандашами все чертили, и дискеты вокруг этих карандашей были разбросаны, и всё писалось в прошитые тетрадки чернильными авторучками. Закончится их период дистантного ковидного образования, нужно будет сходить туда поглядеть: у них там за последние 30 лет мхом всё по пояс заросло, или уже по самые уши?

UPDATE: обсуждение в чате блога с https://t.me/ailev_blog_discussion/5413. Первый же коммент там: "Интересно, управляющим механизмом для их роботов будет служить машина Бэббиджа? Или, хехе, Тьюринга. С очень длинной лентой, замечательным оптомеханическим перцептроном и высококлассными карандашом и резинкой".

Обсуждение в фейсбуке: https://www.facebook.com/ailevenchuk/posts/10219963241885451
2021 год

Алгоритмика-2020

Алгоритмика -- это сердце информатики/вычислительного мышления. Алгоритмы изобретаются, их вычислимость проверяется экспериментально (ибо вычисляют их физические вычислители, а физика -- естественная наука, тем самым computer science тоже оказывается экспериментальной, "естественной" наукой).

Мой тезис в том, что алгоритмы многоуровневы, алгоритмика системна "из коробки" (мой заход 2016 года на системную информатику в https://ailev.livejournal.com/1272169.html, а самое свежее рассуждение недельной давности про нахождение в интеллект-стеке выше системного мышления -- https://ailev.livejournal.com/1544639.html, обсуждения курса вычислительного мышления идёт в чате https://t.me/comp_thinking).

Алгоритм -- функциональное (время работы) описание вычислителя. Система определяется по её функции. Вычислитель определяется по его алгоритму работы. Код или инф.модель харда -- это описание вычислителя (включая его поведение: вычисления), его можно документировать. Вычислитель -- воплощение системы, описанной алгоритмом. Вычислитель физичен! Так что алгоритм -- это описание какой-то физической машины-вычислителя (или описание логической машины, которая описывает работу какой-то другой логической машины, и так по цепочке, пока не доходим до машинного кода физического вычислителя).

Исторически развитие compute science рассматривалось как развитие алгоритмики: всё более и более кучерявые вычислители над сравнительно простыми данными. Потом жизнь резко изменилась:
-- в компьютерах медленно, но верно победила концепция RISC (споры на эту тему по факту утихли), и это даже не самый нижний уровень, ибо ниже идёт физика вычислений (а RISC это уже "программирование физики" в предположении, что она у нас классическая "кремниевая").
-- на среднем уровне победили простые алгоритмы обработки десятков тысяч плотно связанных таблиц в корпоративных базах данных (кучерявые реляционные и далее графовые модели данных)
-- на уровне, когда появляется слово "интеллект" (общий вычислитель, который можно настроить для разных типов задач) всерьёз рассматривается "горький урок Sutton" ровно про то же самое: все прорывы связаны с простыми алгоритмами, работающими над всё более сложными и объёмными структурами данных, просто этим алгоритмам в самом низу алгоритмического стека дают достаточную вычислительную мощь.

Развитие многоуровнево: на каком уровне сейчас развивается алгоритмика? Ответ: на всех.

1. Физика вычислителя.
-- Уже заговорили о "квантовом пузыре" (имеется ввиду инвестиционный пузырь), в прошлом году не очень уверенно, а сегодня уже уверенно: https://www.pcmag.com/news/quantum-computing-a-bubble-ready-to-burst. Квантовое превосходство (и тут политика: слово "превосходство"/supremacy некоторым намекает расовое превосходство белых над чёрными -- и хотят это слово заменить!) уже подтверждено, вот вчерашнее сообщение о "квантовом преимуществе" (таки заменили слово!): https://science.sciencemag.org/content/early/2020/12/02/science.abe8770, там преимущество в скорости квантового вычисления -- 10**14 (за 200 секунд работы квантового вычислителя было выполнено вычисление, которое требует 2.5млрд лет работы суперкомпьютера Fugaku). Алгоритмика никогда уже не будет прежней. И деньги в квантовый софт уже пошли, вот Zapata raises $38 million for quantum machine learning, https://venturebeat.com/2020/11/19/zapata-raises-38-million-for-quantum-machine-learning/
-- оптика тоже рулит, вот свежий декабрьский 2020 обзор по оптике в AI, https://www.nature.com/articles/s41586-020-2973-6 (увы, там paywall), но там просто вал новых работ. Скажем, кремниевый оптический передатчик на 100Gbps https://phys.org/news/2020-11-world-all-silicon-optical-transmitter-100gbps.html -- кремний вроде тот же (совместимый техпроцесс с CMOS), но физика другая.
-- и даже питание имеет свои новации, "анти-лазеры" уже доказано, что возможны: https://www.livescience.com/anti-laser-wireless-charging.html. The new anti-laser demonstrated in this experiment accounts for all that, and it receives scattered energy beamed around a space in an unpredictable pattern — still receiving 99.996% of the sent power. The formal term for the method they used is "coherent perfect absorption" (CPA). CPA uses one machine to send power across the room, and another (the "anti-laser") to suck it back up.

2. На уровне "железа" классических машин (это просто "реализация алгоритмов в железе"):
-- побеждает классическая архитектура с RISC, засилье wintel потихоньку заканчивается (например, https://www.zdnet.com/article/risc-v-the-linux-of-the-chip-world-is-starting-to-produce-technological-breakthroughs/ -- As just one example, a recent microprocessor design using RISC-V has a clock speed of 5 gigahertz, well above a recent, top-of-the-line Intel Xeon server chip, E7, running at 3.2 gigahertz. Yet the novel RISC-V chip burns just 1 watt of power at 1.1 volts, less than one percent of the power burned by the Intel Xeon. ... "It's kind of amazing," said David Patterson, a professor at the University of California at Berkeley who helped create RISC-V. "I think IBM mainframes have a 5-gigahertz product that's liquid-cooled, and takes 100 watts" to run).
-- GPU это "новый CPU", тут просто гонка (попытки угадать алгоритмы следующего поколения в AI, и подстроиться именно под них. Хотя NVIDIA делает ставку на то, что не только нейросетями будет живо человечество). Обсуждение железа для задач AI на русском ведётся в чате "железячников" в телеграме, https://t.me/hw_ml. Всякие заметки типа "Амазон сделал кастом чип для обучения нейросетей для своего облака" (декабрь 2020, https://venturebeat.com/2020/12/01/amazon-debuts-trainium-a-custom-chip-for-machine-learning-training-workloads/), скорее всего, будут там.
-- средства выражения алгоритмов (языки программирования): там после десятилетия застоя в нулевых годах наметилась тихая революция: Rust, Go, Julia. Тренд: высокий уровень абстракции при высокой скорости исполнения этих абстракций (в Julia это описывается как "проблема двух языков": чтобы писать быстро и высокоуровнево, как на Python, а исполнять на железе быстро, как на C". Интересно, что лет тридцать назад тренд был "поддержать язык железом" (типа LISP-машины и PROLOG-машины). А сейчас LLVM в компиляторах идёт как отдельный абстрагирующий слой от железа! То есть "железный вычислитель", далее LLVM-вычислитель, далее уже язык как вычислитель.
-- с базами данных идёт сдвиг к GPU ускорителям, "типовые алгоритмы должны уходить в железо": The global GPU Database market size is expected to gain market growth in the forecast period of 2020 to 2025, with a CAGR of 16.0% in the forecast period of 2020 to 2025 and will expected to reach USD 279 million by 2025, from USD 153.8 million in 2019. Это из https://www.orbisresearch.com/reports/index/global-gpu-database-market-2020-by-company-regions-type-and-application-forecast-to-2025, эти алгоритмы уходят в железо, что очень похоже на "мейнфреймы, команды которых микропрограммируются" (тоже несколько уровней вычислителей)
-- Intel не прекратила баловаться с нейроморфными архитектурами, вот https://venturebeat.com/2020/12/03/intel-showcases-neuromorphic-computing-innovations-at-labs-day/, Loihi solutions required 75 times less power than conventional mobile graphics cards without perceivable losses in performance. In fact, in a study accepted to the 2020 Conference on Robot Learning, the Rutgers team concluded that Loihi could learn tasks with 140 times lower energy consumption compared with a mobile graphics chip. Основная проблема как раз с алгоритмикой для этой архитектуры, и софтом с этой алгоритмикой. Но тут трудно говорить о "другой физике". Архитектура другая, но вот физика (пока в нейроморфной архитектуре не задействуют мемристоры) та же, что и у классики -- и там тоже два уровня, используется микропрограммирование (https://en.wikichip.org/wiki/intel/loihi).

3. На уровне "обычных алгоритмов" -- это предыдущая алгоритмика. Думать тут нужно о томах Кнута: алгоритмы сортировок последовательностей, генерации случайных чисел, обхода графов, удаления невидимых линий в трёхмерной графике и т.д.. Тут полно результатов, только они сегодня не так интересны. Например, Гугль сказал, что его квантовый компьютер решает за 200 секунд задачу, которую суперкомпьютер IBM решает за 10тыс. лет. IBM предложила новый алгоритм, и он решает на суперкомпьютере эту задачу за 2.5 дня (https://www.ibm.com/blogs/research/2019/10/on-quantum-supremacy/). Но эти алгоритмы мало кого волнуют сегодня, это стало уделом узких спецов -- знание алгоритмики сегодня идёт в плюс программистам, но по большому счёту оно уже не считается фронтирным, рок-н-ролл ушёл в другие места. Да, кого-то ещё может взволновать крошечное (после 44 лет исследований!) улучшение алгоритма нахождения кратчайшего пути коммивояжёра -- https://www.quantamagazine.org/computer-scientists-break-traveling-salesperson-record-20201008/, но по большому счёту такие достижения вдруг перестали считаться интересными.

4. А вот "универсальные алгоритмы" (варианты The Master Algorithm, как он описан у Pedro Domingos в книжке https://yadi.sk/i/TxIe5tc1SWekdQ) как раз очень бурно развиваются. Именно про них был горький урок Sutton, именно им нужно добавлять вычислительную мощь. Вот только некоторые из результатов этой "новейшей алгоритмики":
-- по факту замена алгоритмов свёрточных нейронных сетей алгритмами архитектруры работы с вниманием -- трансформерами, впрямую использовали эту архитектуру для работы с изображениями и получили SoTA: https://ai.googleblog.com/2020/12/transformers-for-image-recognition-at.html. Теперь и CNN, и RNN заменены на трансформеры, появившиеся в 2017 (и появилось много вариантов, типа Reformer, эффективный вариант от января 2020 -- https://ai.googleblog.com/2020/01/reformer-efficient-transformer.html)/
-- алгоритмический прорыв в алгоритмах сворачивания белков, AlphaFold, 50 лет стояла эта задача в биологии, и оказалась решена (существенно раньше, чем в любых прогнозах. Так же, как задача победы человека в игре Го), https://deepmind.com/blog/article/alphafold-a-solution-to-a-50-year-old-grand-challenge-in-biology
-- алгоритмический прорыв в решении уравнения Шрёдингера, https://syncedreview.com/2019/09/18/quantum-chemistry-breakthrough-deepmind-uses-neural-networks-to-tackle-schrodinger-equation/
-- алгоритм NVIDIA, сокращающий требуемый для видеоконференций трафик вдесятеро, https://syncedreview.com/2020/12/02/nvidia-neural-talking-head-synthesis-makes-video-conferencing-10x-more-bandwidth-efficient/
-- ... и этот поток нескончаем. Универсальные алгоритмы -- это универсальные аппроксиматоры. Если их научиться обучать, то можно решить множество самых разных задач (в том числе, конечно, инженерные расчёты, химические расчёты, физические расчёты и т.д.). Вот, например, обзор расчётов турбулентности методами машинного обучения: https://www.tu-ilmenau.de/fileadmin/media/tsm/papers/Schumacher2020_3.pdf. Но рассчитывать этими методами можно очень много чего, практически всё! Можно ли из этих расчётов потом вынуть математическую модель, "физическую модель"? Да, таких алгоритмов тоже полно, этим не занимаются только ленивые. Вот пример: https://arxiv.org/abs/2009.11500, Discovery of Governing Equations with Recursive Deep Neural Networks или https://arxiv.org/abs/2012.00428 по попыткам подбирать уравнения покомпактнее -- таких работ множество, "перевести данные в какие-то короткие формулы" скоро будет уделом стандартных библиотек. Я бы выделил вот эту работу: https://arxiv.org/abs/2011.11981, там уравнения в частных производных открываются генетическим алгоритмом из редких и зашумленных данных. Законы Кеплера легко открываются из данных, не нужно ждать сотни лет. Неполноприводное движение тоже обеспечивается сегодня выучиванием алгоритмов этого движения, а не программированием.

Мой пойнт в том, что алгоритмика многоуровнева и стремительно развивается. И пока непонятно, чему учить в алгоритмике
-- "простых людей" (алгоритмика в составе трансдисциплины вычислительного мышления -- мой интерес. Думаем об абстрактном "директоре стадиона", который должен уметь поддержать разговор со своими айтишниками на уровне более детальном, чем "сделайте мне красиво", тьфу, "вычислите мне что-нибудь, и подешевле"),
-- прикладных специалистов (инженеров, которым нужно делать инженерные расчёты. Или учёным, которым нужно "открывать законы природы"),
-- программистов (которых разных сортов уже столько, что не факт, что их нужно учить одной и той же алгоритмике -- скажем, спецов по квантовым компьютерам какой алгоритмике учить? А спецов в data science? А спецов в AI? Или они все уже не "программисты"?

И спросить не у кого. Такой момент в истории, когда никто ничего про алгоритмику в целом не знает. Как в притче о слоне и семи мудрецах, один видит в алгоритмике продолжение дела Кнута, другой дифференцируемое программирование (differentiable programming, https://ailev.livejournal.com/1464563.html), третий рассуждения про применимость теоретических работ Тьюринга к нейроморфным компьютерам на мемристорах и квантовым компьютерам (computer science -- естественная наука), и алгоритмика как-то теряется как цельная дисциплина. И даже непонятно, нужно ли стремиться компактифицировать знание об алгоритмике, сделать его более универсальным, или плюнуть и считать алгоритмику разъехавшейся по каким-то частным дисциплинам?

И это даже не всё вычислительное мышление. Кроме алгоритмики в вычислительном мышлении что-то должно быть сказано и про моделирование данных. Ибо без данных алгоритмы не бывают. А там тоже всё чудесато. Ибо алгоритмы и данные -- это две стороны одной медали, и не только в классической информатике. Графы знаний и коннективистские модели данных (скажем, language models как те же нейросети), моделирование данных в ходе DDD (domain-driven development) -- и вот уже и моделирование данных оказывается весьма бурно развивающимся. Хотя результаты этого моделирования, скорее всего, мы узнаем как "вот открыли ещё один тип алгоритма, который эффективно работает с вот этим видом данных" -- и новизна вида данных потухнет перед новизной алгоритма. Эту ситуацию с недооценкой моделирования данных в информатике тоже нужно исправлять. Есть чат "Типы в языках программирования, моделирования, представления знаний", https://t.me/typeslife, там 439 интересующихся. И поддержать какой-то осмысленный разговор на тему связи структур данных (Arrays, Linked Lists, Stacks, Queues, Maps & Hash Tables, Graphs, Trees самых разных видов, Disjoint Set Union и т.д.), типов данных (целое, строка, плавающее и т.д. -- активно развиваются сейчас плавающие для ускорения вычислений универсальных алгоритмов AI, тех же нейронных сетей), типов (они ж необязательно "данных"), баз данных (где "модель данных" уже звучит вполне знакомо), баз знаний/онтологий/графов знаний и т.д. -- там это не получается почему-то. Разговор сразу рассыпается, увы. Но будем проблемы решать по очереди. Пока решим, что делать с алгоритмикой.

UPDATE: обсуждение в чате блога с https://t.me/ailev_blog_discussion/5058, в чате по типам -- https://t.me/typeslife/7958
2021 год

Только одна из компьютерных физик: заказан цифровой компьютер с 0.01 секстиллиона операций в секунду

NVIDIA получила заказ на изготовление цифрового компьютера Leonardo вычислительной мощностью 0.2экзафлопс, если замерять в FP64, стоить он будет примерно €0.24 миллиарда, строиться начнёт в следующем году летом, а в 2022 году вступит в строй -- нынешний экзафлопс FP64 идёт по цене миллиарда долларов, https://www.hpcwire.com/2020/10/15/nvidia-and-eurohpc-team-for-four-supercomputers-including-massive-leonardo-system/.

Но если брать AI вычисления, то речь в Leonardo уже идёт о мощности в 10 экзафлопс (10 квинтиллионов, то есть 10**18 операций половинной точности в секунду) -- https://venturebeat.com/2020/10/15/nvidia-will-supply-hardware-for-leonardo-a-10-exaflop-supercomputer/. Мы уже привыкли к классическим цифровым компьютерам, и вроде как шла борьба за экзафлопс, но она плавно перешла в борьбу за зетафлопс (это уже 0.01зетта -- начинаем учить новый префикс, секстиллионы). Ещё можно поспорить, о каких флопсах говорится, https://medium.com/@moocaholic/fp64-fp32-fp16-bfloat16-tf32-and-other-members-of-the-zoo-a1ca7897d407 (самым популярным становится TF32, который подразумевает 19 бит в умножении, но 32 бита в сложении -- https://blogs.nvidia.com/blog/2020/05/14/tensorfloat-32-precision-format/, у Intel это FP19. Скорее всего, речь идёт именно о 10экзафлопс с именно такими плавающими -- 32 бита в памяти, в сложении, но 19 бит в умножении). Если вы ухитряетесь делать умножения на калькуляторе за одну секунду, то чтобы выполнить 10экзафлоп операций с этой скоростью вам нужно будет потратить 316887650000 лет (т.е. почти 17 миллиардов лет, Земле всего 4.5 миллиарда лет, нужно было бы работать вчетвером, чтобы управиться за время от зарождения Земли до настоящего времени вычислить с дикой скоростью одного умножения в секунду столько умножений, сколько их будет делать Leonardo всего за секунду. Там ведь примерно 14тыс. NVIDIA A100GPU, да ещё на водяном охлаждении! Невероятная мощьность).

Вот я писал про квинтиллионы операций в секунду (и желание иметь нейросетки с тера/триллионом параметров) в сентябре -- https://ailev.livejournal.com/1536283.html, вот про ускорение и перестройку в айтишном мире по состоянию на осень 2020 -- https://ailev.livejournal.com/1540648.html, тут лишь добавлю несколько штрихов.

Computer science это естественная наука, ответ на вопрос о том, что может быть вычислено, а что не может быть вычислено даётся теориями computer science, а работающие теории выбираются экспериментами, а не математически. Ужас в том, что в евклидовой геометрии сумма углов треугольника 180 градусов, но если реально замерить сумму углов треугольника вблизи Земли, то это будет (искривление пространства-времени большой массой!) 180,0000002 градуса, и если эту поправочку "из физики" не учитывать, то нельзя построить GPS. То же самое относится к любым другим объектам: математическая точка и физическая точка (особенности с учётом особенностей квантовой физики) это очень разные объекты. И математическое понятие вычисления и физическое вычисление -- это разные объекты. Так, математическое вычисление прежде всего даёт нам легко имитируемые аналоговыми цепями классического цифрового компьютера операции логики (и, или, не) с нулями и единицами. А теперь поменяем физику компьютера с цифрового на квантовый, где ровно вот эти операции делаются с огромным трудом, но зато какое-нибудь разложение на множители -- раз плюнуть. Что теперь с computer science? Можем мы быть уверенными в результатах вычислений квантовых компьютеров? А если это оптический компьютер (например, https://venturebeat.com/2020/06/03/lighton-researchers-explain-how-they-trained-an-ai-model-on-an-optical-co-processor/) -- то что именно он считает, и насколько мы должны быть уверенными, что он считает именно это? Кто это должен сказать: математики или физики? Кто должен сопоставить "математические треугольники" и "физические треугольники" для тамошних вычислений?

Чтобы было понятней: классический компьютер имеет алгоритмы, которые при добавлении одного разряда к разлагаемому на множители числу утраивают время вычисления. Время вычисления растёт в геометрической прогрессии. Рекорд прошлого года -- 240 десятичных разрядов, и речь идёт о примерно четырёх тысячах лет работы одного компьютерного ядра (ну, или четырёх годах работы тысячи компьютерных ядер), https://listserv.nodak.edu/cgi-bin/wa.exe?A2=NMBRTHRY;fd743373.1912. Квантовый алгоритм Шора 250-значное число раскладывает на множители лишь за несколько тысяч операций, то есть практически мгновенно. Но этот алгоритм раскидывает вычисления по примерно 10**500 вселенных в мультиверсе (интерпретация Эверетта для квантовой механики -- самая понятная в части объяснений происходящего), собирая результаты этих вычислений через механизм интерференции. Во всей вселенной существует всего около 10**80 атомов, что существенно меньше по сравнению с 10**500. Для квантовых компьютеров таким образом открыты такие задачи, которые классические цифровые компьютеры вообще не могут решить. Это физика, математика тут отдыхает.

А есть ли квантовые алгоритмы обучения нейронных сетей? Да, есть. И вы попадаете в другой мир, где трудно вычислить 2*2, но легко вычислить разложение на множители 250-значного числа. Можно начинать computer science сначала, и мир ждёт квантового Дональда Кнута (https://en.wikipedia.org/wiki/Donald_Knuth): квантовые алгоритмики в новом мире будут самыми главными (как и в классическом IT "просто алгоритмики"), чтобы потом точно так же отойти в тень: алгоритмики (ну, или алгоритмисты, уж кому как нравится) всё-таки ближе к кодерам, а вот программисты, приходящие им на смену больше озабочены вопросами "зачем" и "почему", нежели "как", они больше инженеры, а не computer scientists. Но без знания алгоритмики, то есть что можно, а чего нельзя просить у компьютера -- классического, квантового, нейроморфного, оптического, мемристорного -- software engineering времени мультипарадигмальной компьютерной физики не взлетит.

А поскольку компьютеры по факту будут (как и люди!) во всех проектах, то компьютерный кругозор должен быть у всех -- software engineering как специализация systems engineering должна присутствовать в образовании. И базироваться должна на естественной науке computer science, а не на чистой математике.

Квантовая и оптическая революции в вычислениях уже начались, через пяток лет вычислительный пейзаж будет абсолютно другим: я считаю, что в этих областях экспоненты работают, так что всё будет дешёвым -- и быстро. Проблема будет только в том, чтобы люди изобрели killer application (за этим не заржавеет) и дальше появилось достаточное число людей, чтобы с этим работать.

Классические цифровые компьютеры скоро достигнут мощности зеттафлопса (ещё парочка поколений архитектуры GPU и архитектуры датацентров-компьютеров), но это будут классические тьюринговские алгоритмы, а квантовые компьютеры (которые через пару лет тоже уже будут вполне "классическими", равно как и оптические компьютеры) будут блистать в других алгоритмах, имеющих абсолютно другие оценки скорости вычислений, ибо элементарные операции в них будут абсолютно другими, несводимыми к логическим конъюнкциям, дизъюнкциям, отрицаниям.

No free lunch theorem можно переформулировать с математической постановки задачи (нет универсально хорошего алгоритма для оптимизации/обучения во всех классах задач) на физическую (нет универсально хорошего физического вычислителя для всех классов задач).

Computer science нужно переписывать, она перестаёт быть универсальной дисциплиной: computers оказываются более чем разными физически, и математики для них тоже оказываются разными! И только эксперимент даёт ответ: можем ли мы сопоставить с достаточной степенью надёжности эти разные математики этим разным компьютерным физикам. Это идёт физическая революция в computer science, революция физического разнообразия вычислительной мощности: для разных алгоритмов будем использовать разные физики в компьютерах, что трудно для одной физики -- раз плюнуть для другой, и наоборот.

И это, заметим, никак не отменяет тезис Alan Key: The Computer Revolution Hasn't Happened Yet -- https://ailev.livejournal.com/469995.html (мой текст ещё 2007 года с пересказом идей Алана от 2004 года) и более жёсткие формулировки в тексте 2017 года (https://ailev.livejournal.com/1363194.html): компьютер удивительный музыкальный инструмент, на котором люди не играют удивительную музыку, а пищат и шумят (грубо говоря, используют компьютер как микроскоп, которым заколачивают гвозди -- и ситуация с этим всё печальней и печальней). Даже плохие сегодняшние компьютеры не используются по назначению, на них никто не учится быть умнее, на них учатся быть глупее. И тут дело не в компьютерах, а в людях: не пианино виновато, что на нём играют "Чижика" одним пальцем вместо Шопена. Компьютерная революция будет не в тот момент, когда компьютер сумеет автоматизировать что-то ещё (разгрузит человека), а в тот момент, когда наоборот, компьютер сможет быть использован для того, чтобы человек смог выполнять более сложные задачки. Ну, типа компьютер из лестницы, ведущей мозг вниз, станет лестницей, ведущей мозг вверх. Конечно, для этого нужно будет дополнительно учиться, как учатся играть на скрипке (и тут я не могу не напомнить "Никто не хочет учиться играть на XYZ" -- http://ailev.livejournal.com/1158826.html, рынок такое не оплачивает). Но для этого нужно поменять всю систему образования, а для этого нужно осознать, что происходит развал цивилизации.

Вот я осознал, вот я думаю над курсом вычислительного мышления. Этот курс должен выжить пришествие квантовых и оптических вычислителей/computers, и он должен рассказывать о том, как эти вычислители делают человека и группы людей умнее, усиливают интеллект, а не развлекают и автоматизируют. Да, это очень непопулярная постановка вопроса. Если бы я делал курс по гарантированному выигрышу в покер на раздевание, да ещё предлагал "никакой теории, только практика", то за мной пошли бы толпы. Тут же толп пока не намечается, на фронтире толп обычно не бывает.

UPDATE: обсуждение в фейсбуке -- https://www.facebook.com/ailevenchuk/posts/10219608604139729
2021 год

lytdybr

Всё происходит быстро, сегодня прочёл вступительную лекцию по системному мышлению полусотне магистрантов-техпредпринимателей в МФТИ. Первый семестр у них будет системное мышление, потом будет системная инженерия. Курс там идёт с 2012 года, по факту каждый год новый. В этом году тоже курс новый: онлайн-курс 2020 года по учебнику 2020 года. По факту я полчаса посвятил рассказу про опыт предыдущих семи потоков (за что ставят двойки, какой объём изучаемого материала, что из материала курса они успевают забыть к госэкзаменам), полчаса отвечал на вопросы, час рассказывал "Образование для образованных 2020" (у них этого курса не будет, но знать о его существовании полезно), и час про системное мышление в его текущем варианте. Приятно осознавать, что в текущей версии курса системного мышления (https://system-school.ru/systems-thinking) он отлично вписывается и в подготовку инженеров, и в подготовку менеджеров, и в подготовку предпринимателей. Особенно забавно, что всё это приключение с преподаванием системного мышления началось именно с обучения предпринимателей, а не инженеров или менеджеров! Но почему предпринимателям дальше читается именно системная инженерия? Потому что курсы по предпринимательству и менеджменту у них будут за два года магистратуры в количестве, а системная инженерия -- это последний шанс, когда студенты смогут ознакомиться с мышлением инженера, если дальше они пойдут именно по предпринимательской и менеджерской стезе, а без понимания мышления инженера им дальше в проектах придётся туго. Я с этим аргументом полностью согласен.

Потихоньку грызу тему вычислительного мышления. Она более чем тесно переплетена с темами онтологики в части моделирования, физичности вычислений (те же квантовые и оптические компьютеры, ресурсы и сложность алгоритмов), и AI с эволюцией/open-endedness. Плотнейший клубок. Отклик на мой прошлый пост с сентябрьским вариантом эскиза структуры курса (https://ailev.livejournal.com/1539088.html) показал, что пока обсуждать эту тему не с кем: большинство откликов было от программистов, которые хотят научить следующее поколение программистов. Обсуждения трансдисциплины не получилось. ОК, некоторое время буду начитываться. Пока продолжаю читать Дэвида Дойча, но его книжки были написаны до основных прорывов что в квантовом компьютинге, что в open-endedness, что в causal inference, что в AI -- но Дойч хорош тем, что показывает плотную перевязанность этих тем друг с другом, целостное мировоззрение. Его собственный (конечно, маргинальный) взгляд на физику, вычисления и всё остальное -- в constructor theory (ибо на Deutsch вы будете находить исключительно немецкий язык, а не работы Дэвида), http://constructortheory.org/, и это относительно свежее приключение, начавшееся в 2012 году. Типичная тема: Babbage’s Analytical Engine was a Universal Classical Computer. The question of whether a Universal Constructor can exist is of great interest in Constructor Theory. Пиара у этой работы нуль, но мне двадцать человек прислали ссылку на умелого пиарщика Вольфрама, его новый сайт https://www.wolframphysics.org/. При этом я понимаю, что главное в этой истории про вычисления -- хорошо прицелиться в трансдисциплину, то есть довести до уровня, когда рассуждения о вычислениях можно будет использовать во всех проектах непосредственно, как системное мышление, хотя вычислительное мышление я поместил уровнем ниже в интеллект-стеке, над онтологикой, но под системным мышлением. В вычислительном мышлении модели уже есть, нотации есть, вычисления есть, а что речь идёт моделях именно систем -- вот этого ещё нет.

Пион Медведева тоже замышляет глубокую переработку курса онтологики и коммуникации. Чует моё сердце, что после окончания переработки курса онтологики и вычислительного мышления придётся опять переписывать учебник системного мышления, а ещё переписывать "Образование для образованных 2020". Все эти трансдисциплины очень плотно перевязаны друг с другом. И мы всё ближе и ближе к длинному формату образования, ближе к реально бакалаврского уровня программе.

А где моё мышление письмом? Я делаю заметки, а как же! Но они настолько сырые, что я их пока не публикую. Как только появится что-то осмысленное -- за мной не заржавеет, немедленно напишу и опубликую.

Dell выпустил очередные ноутбуки той же серии, что я купил в октябре 2019 года (Dell XPS 13 2-in-1 7390-7880 с док-станцией WD19TB, https://ailev.livejournal.com/1493843.html) -- XPS 13 2-in-1 9310, -- https://www.dell.com/en-us/work/shop/dell-laptops-and-notebooks/sr/laptops/xps-laptops/13-inch?appliedRefinements=15602,23775. У меня с прошлогодним 2-in-1 одна проблема: не хватает процессорной мощности: когда со всеми этими MS Teams, Zoom и прочим подобным работает видеокамера и вещается экран (4К, других нет), то всё более чем медленно -- при полной загрузке процессора. Если поменять прошлогоднее шило 7390 на этогоднее мыло 9310 -- поможет ли это, и насколько именно поможет?! Вроде как новые процессоры должны быть побыстрей, плюс переделали систему охлаждения. Нужно ли срочно менять компьютер, или ещё год подождать? С прошлым компьютером мне ничего не жало четыре года до его смены (и менял по факту из общих соображений, состарилась батарея, я и ноут поменял). В этом году дистант и связанные с ним тормоза в работе. Задумался.

Продолжил попадать на видео и фото в своей танцевальной жизни, вот таррашо-на-вейвинге с Натальей Романчевой -- https://vk.com/video2449939_456239372. Качество съёмки там не очень, это достаточно новый танец, который идёт к нам главным образом из Парижа и танцуют его на кизомба-площадках. Суть его в том, что ведение в танце происходит не столько в движении по танцполу (хотя и это немного есть), сколько на полутора метрах по вертикали: один волнообразно двигающийся корпус ведёт другой корпус. У начинашек при этом не хватает гибкости, и никаких волн вообще не получается. У меня уже немного получаются, но явно не парижских амплитуд, и на видео это плохо видно. Но в паре это отлично чувствуется. И обратите внимание: на этом видео только женские лайки, и две трети лайкнувших что-то подобное со мной танцевали -- то есть могут оценить, как оно там чувствуется изнутри пары. Незнакомые с этим танцем думают о нём примерно так же, как о танго в начале прошлого века ("до чего докатилась нынешняя молодёжь!". Это я-то молодёжь?!). Антон Климат поглядел это видео, и сказал, что я всё правильно делаю: волны у меня не плоские, а спиральные, остальное приложится, если практиковать такие танцы подольше (это всё описано в пункте 2 поста про урбан сембу https://vk.com/wall-179019873_853, и даже учебное видео Антона приложено). Пока у меня в таррашо конкурентное преимущество на московском танцполе: остальные чуть менее разнообразны, и танцуют таррашо-на-паппинге (с мышечными ударами-остановами, Антон это называет "заиканиями"), а я танцую практически без заиканий на вейвинге (без остановов). Через пару лет таких умельцев будет море, и хип-хоп будут выдавать все танцоры кизомбы, и даже зука. Я же потихоньку оглядываюсь по сторонам уже сегодня: очень много чудесного (и часто незаслуженно забытого) стайлинга можно брать из свинговых. Мне свезло, я попал на фестиваль свинговых, слушал чудесный живой джаз и даже танцевал под живую джазовую музыку -- https://vk.com/moscowcomesaround2019 (меня танцующего под джаз можно даже увидеть на заднем плане вот этого видео: https://vk.com/video-178725410_456239031). А ещё идут занятия в нашей экспериментальной группе социального мультиданса, и я много пишу всякой теории для этого: https://vk.com/buffdance (смотрите там посты последней пары недель).
2021 год

Вычислительное мышление: эскиз структуры в сентябре 2020

Это просто рабочий дамп текущей структуры: чтобы собрать какие-то замечания и структурировать дальнейшую работу. Предыдущие развёрнутые материалы были в книге ОдО2020 (https://ridero.ru/books/obrazovanie_dlya_obrazovannykh/) и https://ailev.livejournal.com/1477090.html. Ключевые влияния с тех пор:
-- предложение проконтролировать, что речь действительно идёт о трансдисциплине (обучение условного директора стадиона во втором бакалавриате), а не о начальном курсе программистской специализации (обучение будущего айтишника).
-- экспоненциальный рост представленности на рынке нецифровых вычислителей (оптические и квантовые машины). То есть через пару лет это будет общее место, и директор стадиона не должен будет считать их шайтан-машинами и не должен говорить "цифровизация" (это ж нецифровые компьютеры).
-- выход ОдО с интеллект-стеком и определением трансдисциплин как управления вниманием, а также понимание "курсового окружения": пререквизитами будут онтологика (онтология, эпистемология/научное мышление, логика) и системное мышление.

Цель курса: дать связанные с системным моделированием объекты, на которые обращать внимание в проектах.
На что это должно быть похоже: что-то среднее между "системным мышлением" и книжкой "главный алгоритм" Педро Домингоса как обзором вычислений для AI.

UPDATE из комментов: каждый день к директору стадиона подкатывает кто-нибудь с "цифровой трансформацией", "цифровой экономикой" как способом что-то заработать — но директору непонятно, что именно заработать, и всегда при этом почему-то просят деньги, а не дают. Ему хотелось бы понимать, в каком месте рассуждения его с этим "цифровым двойником стадиона" и "цифровым двойником спортсмена" и "цифровым двойником болельщика" дурят. А ещё директор обнаружил, что его айтишник называет себя архитектором предприятия и в какой-то мере сам является цифровым двойником директора: без него почему-то не обходится ни одно совещание, и директор хотел бы понимать, как так вышло. Дочь директора вдруг заявила, что её сознание будет уже через пару лет загружено в компьютер, и поэтому она бросает учиться и просто ждёт этого момента: директор хотел бы поддержать на эту тему разговор, но не очень понимает, что в этой области происходит. А ещё ему на семинаре объяснили, что без квантового компьютера сейчас нельзя, его айтишник глубоко поддерживает идею, но почему нельзя, и почему это так дорого стоит?!

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

Конечно, директор стадиона тут условен: речь идёт отнюдь не только о корпоративном софте.

Как проверять усвоение материала, какая тут практика? Так же, как в курсе системного мышления: эссе на тему того, как делается системное описание в рабочем проекте, как идут вычисления по используемым в нём моделям.

Предварительная (ни разу не окончательная! это первый дамп, версия 0.0.1) программа курса:

1. Вычислительное мышление в интеллект-стеке
-- для чего нужны вычисления
-- границы с онтологикой (физика, математика, вычисления -- физичность вычислений и т.д.)
-- границы с системным мышлением
-- границы с кругозорами (инженерия для вычислений -- software engineering, data engineering)
-- информатика как работа с текстами и кодами
-- скорость вычислений и исследование операций

2. Понятие вычисления
-- логика/inference как вычисления (включая causal inference)
-- объяснения в вычислениях
-- доказательства как вычисления
-- моделирование как вычисление
-- мышление как вычисление
-- проблема генерации (вычисления нового)
-- модели и данные

3. Структуры и базы данных
-- системное моделирование как формализация/кодирование/онтологизирование
-- имитационное моделирование как рендеринг/деформализация
-- моделирование данных (онтологии/графы знаний)
-- коннективистские модели (языковые модели)

4. Основные вычислительные парадигмы
-- императивное программирование
-- функциональная оценка
-- логическое программирование
-- вероятностное программирование
-- квантовое программирование
-- дифференцируемое программирование (и нейросетевое программирование как подкласс)
-- генетическое программирование и эволюционные алгоритмы
-- NLP и что там из искусственного интеллекта (inference в парадигме QA)

5. Многоуровневость вычислений (стеки и конвейеры/ленивость)
-- размытость границы софт-хард
-- ленивость и t-shirt конвейер Алан Кея сотоварищи
-- компьютерная архитектура
-- Осы, виртуализация

6. Основные типы аппаратуры вычислителей
-- аналоговые компьютеры
-- цифровые компьютеры
-- статистические компьютеры (вычислительная оптика)
-- квантовые компьютеры
-- разные вычисления (на DNA и прочей экзотике)

7. Распределённые вычисления
-- компьютерные сети и закон Амдаля
-- компьютерный туман
-- совместные вычисления людей и экзокортекс
-- совместные вычисления людей и компьютеров (exploratory programming)

8. Представления и нотации
-- мощность, безопасность, человеколюбие языков программирования
-- графика против текста

9. Искусственный интеллект как вычислитель
-- сжатие, внимание и сознание, воображение и т.д.

10. Особенности обеспечения/жизненного цикла вычислителей
-- жизненный цикл вычислителя (от компьютерной инженерии до DDD в корпоративном IT -- есть ли особенности?)
-- использование вычислителей для создания вычислителей (от кремниевых компиляторов до AI-автокомплита в IDE)
-- вычисления "в малом" и "в большом"
-- закон Мура и аналогичные ему представления

UPDATE: обсуждение в чате блога в телеграм, начиная с https://t.me/ailev_blog_discussion/4370, обсуждение в фейсбуке -- https://www.facebook.com/ailevenchuk/posts/10219479934403066
2021 год

Курс вычислительного мышления: надо делать!

Студиозус в первом семестре института мехатроники и робототехники СТАНКИНа имеет только два предмета из инженерного кругозора: машиностроительные технологии и инженерную компьютерную графику. Всё, инженерия на этом закончилась. Остальное -- продолжение средней школы: химия, физика, математика, информатика, иностранный язык. И продолжение индоктринации (враг не пройдёт!): физкультура, история, русский язык. Это чётко показывает, что в вузах нет продуктивных идей по поводу современного бакалавриата. Понимание, что в школе чему-то недоучили -- это есть. Но нет понимания, чему именно. "Мы учили 11 лет ребёнка русскому языку, и ещё он каждый день разговаривал и писал по-русски, жил-то в России. И что-то плохо получилось -- умней он от этого не стал. Давай поучим ещё в бакалавриате, вдруг всё-таки поумнеет?!" -- логика примерно такая.

Продолжаю определяться с тем, куда думать в четвёртом квартале (https://ailev.livejournal.com/1535897.html). По очкам начинает выигрывать тема сдвижки с места вычислительного мышления. Аргумент Вячеслава Мизгулина, что без этого курса и системная инженерия и системное моделирование в системном мышлении, и кусок с моделированием в онтологике не очень понятны -- он остаётся, в этом месте у нас пока образовательная дыра. Я сообразил, что и в части мышления о личном и корпоративном экзокортексе без вычислительного мышления плохо, да и моделирование предприятий тоже как бы в воздухе: как системное мышление лежит в основе системного менеджмента, так и вычислительное мышление! И в части понимания как думать об AI, что сегодня уже совсем актуально (если фон-неймановский компьютер для выпускника 2000 года не шайтан-машина, то нейросетевые алгоритмы уж точно загадочны, а квантовый компьютинг уж совсем непонятен -- а ведь уже полно коммерческих сервисов, типа https://forge.qcware.com/, https://aws.amazon.com/braket/).

Кому предназначен этот курс? Хорошее предложение было -- поглядеть на директора стадиона как студента. Ибо если какой-нибудь программист будет делать курс вычислительного мышления, то он неявно будет стараться породить себе подобного -- тоже программиста, соблазн велик! А нам нужна постановка вычислительного мышления, а не выпуск очередного программиста. Понятно, что директор стадиона нуждается в вычислительном мышлении, ибо активно работает со всевозможными моделями. Но не факт, что он хочет быть программистом, и что его нужно готовить к программированию. Речь идёт о трансдициплине, а не о прикладной дисциплине. Это даже не кругозорная дисциплина типа программной инженерии/системной инженерии. Нет, это трансдисциплина: как думать о моделях и вычислениях над ними, на что обращать внимание (какие объекты в этой предметной области). И помним, что речь идёт о computer science, которая всё чаще и чаще рассматривается сегодня как "экспериментальная наука".

Текущая постановка задачи курса вычислительного мышления была сформулирована в середине 2019 года в https://ailev.livejournal.com/1477090.html, в каком-то чуть упрощённом виде она вошла в книжку "Образование для образованных 2020" (https://ridero.ru/books/obrazovanie_dlya_obrazovannykh/). Это, конечно, сильно отличается от текущей трактовки в MIT, где computational thinking это главным образом про численные методы (вычисления же!) и как их реализовать на классических компьютерах (https://mitmath.github.io/18S191/Fall20/). На данном такте (конец 2020 года) эту постановку задачи нужно докручивать в стыковке с курсами онтологики и коммуникации а также системного мышления. Вот текущее понимание предмета, в сверхкомпактной форме:
Вычислительное мышление (computer science) -- это управление вниманием в ситуациях вычисления (как системное мышление -- это управление вниманием в ситуациях с системами). Вычисления -- это работы вычислителей с описаниями (тезис extended computer, аналогичный тезису extended mind нужно рассмотреть отдельно). Вычислители (алгоритмы, реализованные компьютерами самых разных архитектур или живыми мозгами) не должны восприниматься как шайтан-машины: это основная задача курса. Описания=тексты (концепция "всё есть текст") и коды. Работы с описаниями -- работы информатики (https://ailev.livejournal.com/1008054.html, перетекстовка, кодирование, отекстовка, перекодирование). Стык с системным мышлением: описания -- это информационные модели системы, или же информационные модели других описаний (описания описаний). В ситуациях вычислений (в том числе вычислений интеллекта -- мышления) должны быть объекты внимания, при отслеживании которых можно создавать успешные вычисления (успешные описания aka моделирование данных и успешные вычислители aka алгоритмы для вычислений как работы с описаниями). Моделирование, программирование, онтологизирование -- это одно: подготовка описаний к вычислениям. Программная инженерия и компьютерная инженерия -- это про разработку и воплощение успешных вычислителей над данными описаний (вычислители -- это алгоритмы, они воплощаются софтом и аппаратурой, граница между которыми весьма условна).
Это всё онтологически чистить, раскрывать, потихоньку формировать последовательность изложения.

UPDATE: обсуждение в фейсбуке -- https://www.facebook.com/ailevenchuk/posts/10219409311557539