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