IBM привела меня к интернету. VNET -- это внутренняя корпоративная сеть IBM, по которой пользователи сумели договориться и провести корпоративную реформу, действуя сообща против текущего менеджмента на благо всей фирме -- история, умолчанная в http://en.wikipedia.org/wiki/IBM_VNET, но активно обсуждавшаяся в менеджерских кругах. К 1990г. уже пытался читать ксероксы из западных менеджерских публикаций, и долго искал каких-то поставщиков сетей (это был 1990г., и несовместимых друг с другом "глобальных сетей" было огромное количество), проверяя их всех на предмет возможности "выхода на VNET". Наконец, встреченный в г.Троицке Зайцев сказал "тебе нужен Internet" и дал домашний телефон fox_1, который сверился по какому-то справочнику и заверил "да, через Internet можно попасть в VNET". В начале 1991г. у меня уже был мой сегодняшний адрес -- ailev@asmp.msk.su. Так для меня IBM открыла Сеть.
Первый мой ноутбук (до этого была парочка лэптопов) был IBM, и весил он дикое количество килограмм. Мы купили его, чтобы делать приватизацию в Находке: десктопы везти было бессмысленно, а лэптопы были существенно недокомпьютеры. У меня еще пару раз были ноутбуки от IBM, и от них у меня остались самые нежные воспоминания.
Последний раз я столкнулся с IBM косвенно и совсем недавно: EPF Composer является open source продуктом, подаренным IBM сообществу. Мы (TechInvestLab), кстати, перевели хелп к нему, и намерены выложить его до конца февраля в открытый доступ -- нельзя ожидать доводки открытой части закрытого коммерческого продукта от Большого Голубого, поэтому мы решили вмешаться и сделать что-то сами.
Но эти все дифирамбы я пою не оттого, что у меня какая-то особая любовь к IBM. Нет, "плохую программу можно написать и на Паскале", я повидал у IBM и много нелепого и странного.
Дифирамбы я пою по случаю выхода серверов на POWER 7 -- http://www-304.ibm.com/jct03001c/systems/power/news/announcement/20100209_systems.html (а подробно историю вопроса -- https://www.ibm.com/developerworks/mydeveloperworks/blogs/morepowertoyou/?lang=en, плюс загляните в http://en.wikipedia.org/wiki/POWER7).
Нет, я все понимаю про бесперспективность "фирменных серверных решений" для большинства применений -- когда-то сотрудники меня уговорили купить сервер Sun за $20тыс., потому как "все интернет-фирмы должны иметь крутые интернет-сервера со специальной архитектурой", и я до сих пор считаю это своим самым неудачным вложением денег в оборудование. Много лет потом этот "специальный интернет-сервер" работал где-то роутером локальной сетки, ибо мощность его невероятно быстро стала сравнима с мощностью обычной писишки, а любой апгрейд давал непринципиальное улучшение, хотя по цене и был сравним со стоимостью покупки новой писишки, а то и нескольких. Хватит с меня "крутых серверов", исторически их проигрыш перед "простыми серверными фермами" типа используемых Гуглем очевиден.
Но когда я читаю про сервера, использующие POWER7, мне искренне чудится, что на этих серверах можно решать совсем другие задачи, нежели на "простых серверных фермах". Если у вас есть 32MБ кэша L3 на чипе и восемь ядер, то вам в жизни должны быть доступны какие-то другие ощущения -- ради которых можно было бы и раскошелиться. Проблема в том, что я не очень понимаю, какие именно должны быть эти ощущения. У меня на сегодня про эти ощущения есть лишь смутные догадки.
Если бы я был волшебником, у которого есть много времени и денег (а не мозгов -- иначе бы я просто сотворил сразу нормальное железо, причем в количестве и качестве "никто не ускользнет обиженным"), то я бы попробовал на таких серверах запустить алгоритмы поиска эвристик (то бишь изобретения новых продвинутых алгоритмов) для перебора, ассоциативного поиска и логического вывода. И заставил бы заниматься этим вопросом десяток человек, обслуживающих аппаратуру и эти алгоритмы. Пусть теперь компьютер изобретает следующее поколение софта.
Я, конечно, понимаю, что все современные серверные архитектуры оптимизированы под интранетизацию, сапизацию, виртуализацию и прочие "много-много независимых мелких приложений на одном немелком серваке, прикидывающемся облаком" варианты использования. Но и линия заточенных под графику GPGPU тоже архитектурно мимо интересных "размыслительных задач" (не "вычислительных"!). Ни из одних, ни из других LISP-машины не получишь, тем более что для задач логического вывода нужен таки не LISP (флейм в этом месте я готов получить, но пафос моего постинга совсем не в признании великих заслуг языка из далеких 60-х прошлого века).
Впрочем, для решения задач не нужен и только логический вывод: уже понятно, что рулит мультипарадигмальность. Да и сам логический вывод -- это не столько тупой алгоритм, сколько различные способы подсократить перебор, что требует совсем не логического программирования, а другого, на котором это логическое программирование написано. То есть аппаратура для вывода архитектурно должна быть совсем не аппаратной реализации логики, а аппаратной реализацией той парадигмы, на котором логический вывод с его многочисленными оптимизациями написан. Вспоминается архитектура CYC, в которой над семантической сеткой трудятся сотни специализированных спецпроцессоров, каждый из которых пытается максимально эффективно вычислить что-то свое, нежели один общий "вычислитель с неонкой внутре", который применяет максимально общий (и поэтому неэффективный) алгоритм для всех целей.
Я бы на молотилках с процессорами POWER7 пробовал решать задачи, а не диспетчировать мелочёвку. Обратите внимание, как сдвинулись акценты серверных архитектур: сервера сейчас нужны, чтобы быть облаком, в котором живет миллиард пустяков, а не для того, чтобы решать задачи. Задачи сейчас решают суперкомпьютеры, но это не задачи, а вычислительные эксперименты. Это другое. Я же говорю о размыслительных задачах, когда от компьютера требуется напрячь процессор и память на размышление, а не на переливание многих-многих слоев кодирования из одних зряшных прерываний и виртуализаций в другие. Меня интересует распознавание речи, распознавание сцен, формулирование гипотез, в конце концов, меня интересует порождающих дизайн -- в том числе, кстати, и порождающих дизайн самих компьютеров. Грубая архитектурно-железная сила тут явно не сказала еще своего заднего слова. Как и многие другие пожилые люди, успевшие застать Большой Взрыв софтовых и хардверных архитектур, я мечтаю о том, чтобы многие опередившие свое время идеи были попробованы на современной технологической базе. До этого момента уже не так долго осталось ждать: через пяток лет рынок будет наводнен смартфонами с емкими SSD и лазерными проекторами, на которых бессмертный уже Ворд будет стартовать за 5 секунд и управляться голосом и тычками в подсвеченный проектором стол. Рынку ноутбуков нужно будет противопоставить что-то, что оправдывало бы большие размеры и большую вычислительную мощность. Нужно будет предоставить умение решать задачи, а не загружать в оперативную память Ворд за меньше, чем 20 секунд -- то есть демонстрировать высокую скорость думания, а не скоростное перекладывание непотребно пушистого кода из правой руки в левую, то бишь из дисковой памяти в оперативную. Для любителей ОпенОфиса у меня специальное замечание: к ним это все тоже относится, слово в слово, включая непотребно пушистый код.
Я четко осознаю, что этот мой постинг из разряда романтических устремлений. Некое концептуальное эхо из эпохи середины 80-х, когда тех же самых LISP-машин было несколько конкурирующих марок и люди четко понимали, какие задачи они на этих машинах они хотят решать. Я повторяю чуть ли не все те же аргументы, игнорирую современный компьютерный мейнстрим и явно намекаю на использование достижений компьютерщиков из IBM не по (тщательно продуманному маркетологами) назначению. Да, соглашусь. Романтика, эмоции, мечты, розовые цифровые сопли. И задачи я хочу решать ровно те же, что сдохнувшие в конце 80-х могикане лисп-машин. Но прошло 30 лет, жизнь поменялась, и многие из тех задач уже можно было бы попробовать решить. Никакой романтики, сугубо предпринимательский расчет.
Мой нюх меня редко обманывает. В этой серверной многоядерности и терабайте оперативной памяти что-то есть эдакое, что может в сочетании с новыми поколениями алгоритмов оптимизации вывода и специализированными алгоритмами работы со знаниями породить очередное поколение killer applications -- несуперкомпьютерные (а просто серверные) думательные приложения. В голове при этом у меня CAD/PLM -- набор разноспециализированных САПР, работающих с онтологическим репозиторием информационной модели. Через этот онтологический репозиторий и через эти САПРы и влезут новые постлисп-машины (помню, помню, что AutoCAD написан на LISP!). А этих новых машин нет, я завороженно гляжу на новые сервера с самыми мощными в мире процессорами POWER7 -- и думаю, как бы использовать эту вычислительную мощь разумней, чем для поддержки социального веба. Компьютеры должны не только маршрутизировать сообщения людей, компьютеры должны еще и думать. И люди могут уже себе это позволить.
Кстати, суперкомпьютер Watson из IBM, который готовится к выступлениям в игре Jeopardy, уже готов выигрывать у людей. Хотя ему еще нужно потренироваться, чтобы выигрывать у чемпионов этой игры -- http://www.networkworld.com/news/2010/021010-ibm-jeopardy-game.html?source=NWWNLE_nlt_daily_am_2010-02-11. POWER7 в этом шоу тоже будут участвовать. Это как раз то направление работ, о котором я говорю. Дальше вопросы можно будет задавать не игровые, и отнюдь не только медицинские. Я думаю, что инженерные вопросы для такого Watson были бы не менее интересным полем приложения его способностей. Подробности: http://www.research.ibm.com/deepqa/faq.shtml
Мне кажется, что мы скоро можем стать свидетелем еще одного Большого Компьютерного Потрясения (после уже легендарных System/360 и IBM PC) от IBM. Я на это очень надеюсь, больше ведь ждать не от кого.
А теперь не могу удержаться, наболело: конечно, нынешним компьютерным нашим всем являются смартфоны и планшеты, а тамошний лидер -- известный инноватор. Только этот лидер может нарисовать иконки такими, что их захочется лизнуть. Следующее поколение изделий этого лидера будет таким же, только лизнуть эти иконки захочется глубже, по самые гланды. Компьютерная революция в понимании этого лидера -- когда мультитач захочется делать языком, а не пальцами. Когда от нового планшета захочется откусить.
Нет уж, я буду следить за новостями от IBM. От них пахнет будущим, а не тонкой пленкой настоящего глянца на прошлом.