Экспанты. Носитель кода - Острожский Глеб. Страница 29
Уже дома в своей комнате Алексей достал бутылку из рюкзака. Судя по этикетке, в бутылке находился продукт солнечной Армении. До этого Алекс пил только пиво и немного вина. Коньяк оказался напитком, оставивляющим противное послевкусие, которое хотелось чем-то запить. О том, чтобы захватить на кухне воды, он сразу не подумал, а сейчас бежать на кухню мимо комнаты, где родители смотрели телик, тоже не хотелось. Поэтому смирившись с горечью во рту он разделся и попытался уснуть.
Было одиннадцать вечера и, хотя он давно так рано не ложился, недосыпание последних дней и коньяк сделали свое дело. Как только Алексей укрылся одеялом, глаза сами закрылись и Алекс провалился в глубокий, без сновидений, сон.
Проснулся Алекс от непонятного дискомфорта — где-то вдалеке назойливо звучала трель телефона. Нехотя, с трудом он выбрался из приятной расслабленности сна и понял, что это действительно упорно трезвонит в коридоре телефон. С удивлением он понял, что успел отвыкнуть от этого звука, поскольку практически всегда занимал линию интернетом.
Трубку подняла мама. На часах было шесть утра, поэтому ее "Алло" было тревожным, словно она опасалась какой-то неприятности, которую приносят такие ранние бесцеремонные звонки.
Но тут открылась дверь и мама с удивлением сказала:
— Леша, там тебя хочет Витя слышать. В такую-то рань. Что-то на вас не похоже.
Голос у нее был уже спокойным и даже слегка удивленным. Раздражения не было — через пятнадцать минут все равно нужно было подниматься на работу на работу. Год назад ее перевели в другое подразделение банка, и теперь на автобусе и метро добиралась на работу больше часа.
— Ну что спишь? — голос Виктора в трубке был взволнованным. — Так проспишь величайшее в жизни событие.
— Сплю, — Алекс еще полностью не проснулся и плохо соображал, — Между прочим, до семи еще час, а мы договаривались раньше свой нос не совать.
— Да я не сдержался. В пять проснулся, ворочался и таки полез смотреть. Там — бомба. Если коротко — то у нас получилось. Давай так. Приходи ко мне, как раз в семь будет результат. А я к тому времени кое-какие расчеты проведу.
— Хорошо, ты скажи, коммуникатор нормально сработал? Сколько скачалось?
— А-а-а, о своем коммуникаторе волнуешься? Не знаю, как сработал алгоритм поиска оптимального места скачивания, но пятнадцать минут назад Муравейник работал на сорока пяти процентах машин, от которых прошла информации об установки коммуникатора. В общем — дуй ко мне.
Сорок пять процентов! О такой цифре в первый день Алекс и не мечтал. Ведь часть машин в Сети сейчас пока скачивают Муравейник, многие за эти шесть часов в Интернет еще не заходили. То есть можно было сказать, что Муравейник заработал везде, где коммуникатор попадал в Интернет.
Через полчаса Алекс был уже у Виктора.
— Итак, первое. — Виктор выглядел еще более возбужденным, чем показалось Алексу во время разговора по телефону. — Система запустилась нормально и начала расчеты через пятнадцать минут после первой установки. При средней скорости скачивание и установки Муравейника занимает от четырех до двадцати минут, и если через четверть часа начался расчет, значит, Муравейник запустился не меньше, чем на двадцати тысячах машин. То есть твой алгоритм "вирусного маркетинга" сработал! — в голосе Виктора звучал триумф.
— Блин, Джокер, я даже такого не ожидал. Это ж позволит любые большие файлы распространять независимо от мощности исходящего сервера. Скорость будет ограничена только каналом пользователя, который принимает информацию.
— Точно, но это не самое главное, почему я тебе звонил. Посмотри на длину получившегося числа.
Алексей посмотрел на монитор.
— Подожди, — Алекс был в замешательстве. — Мы запустили программу часов в десять вечера. Верно?
— Приблизительно да. Потом пока запустилось… короче время работы программы в более или менее полную силу составило восемь часов и почти сорок пять минут. Причем, производительность на уровне двух миллионов компьютеров стала поддерживаться часа через три работы.
— Но на сегодня последний рекорд вычислений это шесть миллиардов знаков после запятой за две недели. Неужели..?
— Да, — перебил Виктор, — Мы бы до этой цифры дошли за двое суток. Но и это не все.
— Не все?! Да ты понимаешь, что мы сделали сегодня ночью? Мы гении! — Алекс от возбуждения вскочил из-за компа и стал ходить по комнате
— Ну… Есть одна вещь, которая меня смущает. Пока ты ехал я проверил одну свою гипотезу. Я взял производительность десяти тысяч машин в разные моменты загруженности системы. И она разная, причем существенно.
— Что ты имеешь в виду? — Алекс не понимал, о чем говорит Виктор, в голове не умещалось то, что он уже услышал.
— До отметки в семьсот тысяч одновременно работающих компьютеров она была в целом стабильна, но после нее случился резкий скачок процентов на тридцать.
— Но что это значит? — спросил Алекс.
— Это значит, что любые десять тысяч компьютером в системе должны иметь приблизительно одинаковую производительность, поскольку в таком большом случайно выбранных компьютером и более мощные и менее мощные машины уравнивают свои производительности. В общем, так оно и есть. С одной разницей, когда количество участвующих в выполнении задачи машин перевалило приблизительно семьсот тысяч, производительность любых десяти тысяч компьютеров увеличилась почти на треть.
— Такого не может быть.
— Не может, но есть. У меня несколько мыслей. Первая, что в Муравейнике стало работать большое количество суперсовременных компьютеров, которые вначале не попали в базу. Например, в ЦРУ и НАСА начался рабочий день, а кто-то установил наш стрип-покер с коммуникатором на их компьютеры.
— Отпадает, — сказал Алекс. — Если это произошло при количестве в семьсот тысяч, то никакие суперкомпьютеры не могли увеличить производительность аж на треть.
— Да, я тоже так подумал. Вторая — Муравейник резко стал забирать бОльшее количество ресурсов. Проверил и эту версию. Я запустил в полседьмого свой старенький комп, где был коммуникатор. Муравейник скачался, запустился и последние 15 минут работы до семи Муравейник брал строго 3 % мощности машины. У меня остается последняя и самая сумасшедшая.
— Муравейник… превратился… в муравейник, — Алекс подошел к столу и уставился в монитор, словно ожидая что-то увидеть там еще. — Эффект интеллектуальной синергии. Но это же…
— невозможно, — закончил мысль Виктор.
В комнате повисла пауза. Гипотеза была настолько нереальной, что вызывала неприятный холодок в животе. Первым заговорил Виктор.
— Если действительно после наличия некой критической массы компьютерная сеть начинает работать не как сумма мощности входящих в нее компьютеров, а на 30 % больше…
— Тут еще надо посмотреть, не будет ли, например, трех миллионов машин очередного скачка производительности, — перебил его Алексей.
— Тут вообще много неизвестного, — согласился Виктор. — Неизвестно, зависит ли появление этого эффекта от количества машин и их суммарной производительности, или только от количества единиц в системе. А главное: было ли это каким-то неизвестным науке эффектом увеличением производительности или же это было самостоятельная оптимизация алгоритма расчета.
— Ты понимаешь, что ты говоришь? Ты хочешь сказать, что система начинает думать?
— Не способность думать, а… ну как бы это сказать. Ну, как в том же муравейнике: один муравей — набор инстинктов, а если их много у них появляются способность выполнять действия присущие организмам с наличием мозга. Может, после определенного порога сеть даже более оптимально использует свои ресурсы, чем прописано в программе.
В голове у Алекса была просто каша. Еще вчера вечером он волновался только об одном: как сработает коммуникатор. То, что алгоритм "качай и одновременно делись с другим" прекрасно работал, уже было достижением. А тут прыжки производительности, расчет числа Пи со скоростью выше любого суперкомпьютера. Кстати о суперкомпьютерах…