Кафедра Ваннаха: Параллелизм в большом и малом мирах
Кафедра Ваннаха: Параллелизм в большом и малом мирах
Автор: Ваннах Михаил
Опубликовано 26 марта 2010 года
Давным-давно авторы "Золотого теленка" отметили, что "Параллельно большому миру, в котором живут большие люди и большие вещи, существует маленький мир с маленькими людьми и маленькими вещами". К достижениям большого мира в индустриальную эпоху относился дизель-мотор и Днепровская ГЭС; мотивацией же его творцов было стремление облагодетельствовать человечество. Маленький же мир порождал кричащий пузырь "уйди-уйди", брюки фасона "полпред" и испытывал "стремление одно - как-нибудь прожить, не испытывая чувства голода".
Постиндустриальная наука многое переменила в мире большом. Основой могущества в нем стал не столько масштаб инженерных сооружений, дамб и домен (хотя здоровенная субмарина, способная испепелить полконтинента, и остается Ultima ratio regis), сколько сила разума, овеществлённая в информационных технологиях. А компьютерное железо - оно чем мельче, тем лучше, расцвет всяких там нанонаук. Ну а маленький мир живет по-прежнему. Лавочник, перепродающий в конце логистической цепочки тряпки в 4,5 раза дороже, чем они выходят со швейной фабрики, имеет в ассортименте костюмы моделей "дипломат" и "консул" (не какой-нибудь большевистский полномочный представитель!), предназначенные для счастливых женихов, покупающих костюм раз в жизни. Но, заметим, большой и малый мир существуют не только параллельно. И в том и в другом имеет место параллелизм. Но вот проявляется этот параллелизм по-разному и с совсем разными последствиями для общества.
Параллелизм большого мира - это параллелизм компьютерных и сетевых архитектур. Глобальная сеть так надёжно и дёшево доносит до нас информацию, поскольку она умеет находить параллельные пути для движения трафика, более свободные, более дешёвые. И это не говоря о тех драматических ситуациях, когда какой-то кусок просто намертво вылетает из общения - ведь любое железо всегда имеет конечную надёжность. И компьютеры тоже всё больше и больше становятся параллельными. Ещё недавно, где-то в 1980-е, таковыми были специализированные процессоры, векторные и матричные. Работая параллельно с основным процессором, они могли за один шаг выполнить операцию с плавающей запятой разом над целым массивом чисел. Массивом векторным, матричным, а то и вовсе с размерностью гиперкуба. Припоминаются изделия фирмы Floating Point Systems, проникавшие в СССР вопреки всем санкциям Запада и находившие применение в "девятке", как звались девять оборонно-промышленных министерств. Такая стойка превращала обычный VAX почти в суперкомпьютер. Правда, при одном условии - при наличии алгоритмов, допускающих распараллеливание, и реализующих их программ. Их разработка - задача нетривиальная и непростая. А скептики в те времена вообще предлагали грубо оценивать производительность параллельной системы как производительность одного процессора, умноженную на натуральный логарифм от числа процессоров.
Но с развитием технологий микроэлектроники параллелизм одерживал победу за победой в компьютерном мире. Нынешний суперкомпьютер - это массив микропроцессоров, находящихся в родстве с теми, что живут в обычных писюках. Да и в десктопе параллелизм прижился - сначала в графике, а затем и в многоядерных процессорах. И программ, умеющих реализовать его, становится всё больше и больше. Короче говоря, большой мир параллелизм научился использовать. Ну, конечно, не стремясь облагодетельствовать человечество - стремление облагодетельствовать даже не всё человечество, а пролетариев или чистых арийцев, приводит, как показал ХХ век, к ГУЛАГовским могилам в колымской глине, да к печам Аушвица. А вот стремясь к прибылям, и к немаленьким, большой мир дал в качестве побочного эффекта человечеству поразительно дешёвые и эффективные средства обработки информации. Как их использовать - это уж дело выбора каждого из нас. Шанс предоставлен!
А вот параллелизм в маленьком мире. Том мире, что мотивируется желанием как-нибудь прожить, не испытывая чувства голода... Простое такое желание. Очень традиционное. Века и века человеческой истории большинство людей ни о чем и не заботилось. И что интересно - сейчас в маленьком мире маленьких людей оно приводит к совсем другим последствиям для общества, даже там, где имеет место параллелизм.
Оптимисты-реформаторы 1990-х полагали почему-то (трудно сказать наверняка - текила из хороших кактусов, грибочки, или настоящий, импрессионистами любимый, абсент на полынном масле), - полагали, что факт появления большого количества агентов рынка, то есть мелких торговцев, приведёт к конкуренции между ними, снижению цен, развитию производства, а за ним и научно технического прогресса.
Ага... Ждите! Вот пройдем на ближайший рынок, в зеленной да фруктовый ряд. На нём наблюдаются ряды продрогших, несмотря на весеннее солнышко, торговок. Товар у всех у них одинаков. И по одинаковым ценам. И показывающий, что обилие мельчайшего предпринимателя к развитию производства не приводит - голландская морковка, израильский сельдерей, эквадорский банан. И цены у всех - одинаковы. Никакой конкуренции. И вот тут-то начинается самое забавное - несмотря на то, что сидят торговки на открытом рынке в тряпичных палатках (апостол Павел в бытность Савлом трудился палаточным мастером - ладя именно такие палатки) цены у них на треть выше, чем в ближайшем гипермаркете. (Который наивные бабушки полагают дорогим и не заходят туда.) Почему?
А дело в неэффективном использовании параллелизма. Знаете, какие рассказы чаще всего приходится слышать об одном шибко распиаренном отечественном суперкомпьютере? О том, как по соседству при включении чуда техники вылетает энергоснабжение. Те, у кого накрылся эксперимент, требующий длительного бесперебойного кормления электричеством, употребляют в повествовании на редкость эмоциональную обсценную лексику. Дело в том, что эффективность вычислений зависит от программ и алгоритмов, ну а потребление энергии - вещь неизменная. Электроны хомячит каждое из процессорных ядер, вне зависимости от того - трудится оно с пользой, или молотит впустую. Отсюда и огромное потребление энергии, сравнимое с гальваническим цехом.
И то же самое - в случае с рынком. Торговки сидят и скучают, по-преимуществу. Греют своими организмами окружающую среду. Работают, - подают покупателю товар, отсчитывают сдачу, - лишь ничтожную часть рабочего дня. А тепло то рассеивают непрерывно. А законы сохранения не обманешь. За всё приходится платить - тем старушкам, что таскаются на базарчик, не ведая, что в магазине дешевле...
Ведь мотивация-то у зеленщиц - не сделать состояние на овощах (ну, знаете, success story - купил лимон, выжал сок, купил два лимона, а к вечеру помер дядя, завещав полмильярда...), вышибив с рынка конкуренток. Они хотят кормиться; жить, при этом давая жить другим. Отсюда - микро (или даже нано) монопольный сговор, то есть все недостатки параллелизма, при полном отсутствии достоинств. И вот простые и понятные человеческие стремления оказываются для общества скорее вредными, в том случае, как большая корысть движет прогресс...