Максимальную частоту, с которой бит может менять свое состояние, определяет одна полезная теорема – теорема Марголюса – Левитина. Норм Марголюс, как уже было отмечено, – один из пионеров физики вычислений; вместе со своим научным руководителем Томмазо Тоффоли из Массачусетского технологического института он показал, что простые физические системы, вроде сталкивающихся друг с другом атомов, могут выполнять универсальные цифровые вычисления. Лев Левитин из Бостонского университета
[33] одним из первых стал использовать законы физики для вычисления пропускной способности каналов связи, например оптоволоконных кабелей, для передачи информации. Эти ученые объединили свои усилия и в 1998 г. опубликовали свою теорему
{13}.
Теорема Марголюса – Левитина гласит, что максимальная частота, с которой физическая система (электрон, например) может переходить из одного состояния в другое, пропорциональна энергии системы; чем больше доступной энергии, тем меньше времени нужно электрону, чтобы перейди отсюда туда. Эта теорема очень общая. Для нее несущественно, какая система хранит и обрабатывает информацию; важно только, сколько энергии есть в системе, чтобы обрабатывать эту информацию. Рассмотрим, например, атомы и электроны в моем компьютере. Их температура немного выше комнатной. Каждый атом и электрон раскачиваются, и количество энергии, связанной с типичными колебаниями, остается одним и тем же для атома и для электрона. Энергия на одно колебание просто пропорциональна температуре, независимо от того, говорим мы об атоме или об электроне. Следовательно, частота, с которой электрон в компьютере может перемещаться от одного состояния к другому, отсюда туда, или от 0 к 1, – такая же, что и скорость, с которой атом может переходить из одного состояния в другое. Электроны и атомы инвертируют свои биты с одной и той же частотой.
Теорема Марголюса – Левитина дает метод для вычисления максимальной частоты, с которой бит может менять свое состояние. Возьмем количество энергии, доступной для инвертирования бита, умножим ее на 4 и разделим на постоянную Планка. В результате мы получим число возможных инверсий бита за секунду. Применяя эту формулу к атомам и электронам в моем компьютере, мы выясним, что каждый колеблющийся атом и электрон изменяют свое состояние и свой бит примерно 30 трлн (30 х 1012) раз в секунду.
Скорость, с которой атомы и электроны инвертируют свои биты, обычно намного больше, чем скорость, с которой это делает обычный компьютер. Компьютер, на котором я печатаю текст, вкладывает в зарядку и разрядку конденсаторов, которые хранят его биты, в миллиард раз больше энергии, чем используют атомы и электроны на свои колебания и на инверсию своих битов. Но мой компьютер действует в 10 000 раз медленнее атомов. Медлительность моего компьютера не противоречит теореме Марголюса – Левитина. Эта теорема дает только верхний предел того, как быстро может менять свое состояние бит. Бит может делать это медленнее максимальной скорости, допускаемой теоремой. Квантовый компьютер, однако, всегда инвертирует свои биты с максимальной скоростью.
Теорема Марголюса – Левитина устанавливает предел количества элементарных операций (опов), которые может выполнять бит в секунду. Предположим, что мы оставим неизменным количество энергии, доступное для изменения состояния битов, но теперь разделим эту энергию между двумя битами. Каждый из этих двух битов получит половину энергии нашего первоначального бита и сможет работать вдвое медленнее. Но общее количество переходов в секунду останется тем же.
Если разделить количество доступной энергии между десятью битами, то каждый из них будет менять свое состояние в десять раз медленнее, но общее количество переходов в секунду останется тем же. Так же как она безразлична к размерам системы, эта теорема не «заботится» о том, откуда берется доступная энергия. Максимальное количество операций в секунду – это энергия E, умноженная на 4 и деленная на постоянную Планка.
Теорема Марголюса – Левитина позволяет легко вычислить мощность абсолютного ноутбука. Энергию абсолютного ноутбука, доступную для вычисления, можно вычислить с помощью известной формулы Эйнштейна E = mc², где E – энергия, m – масса ноутбука, а c – скорость света. Введя в эту формулу массу нашего абсолютного компьютера (один килограмм) и скорость света (300 млн м в секунду), мы обнаружим, что у абсолютного ноутбука есть почти 100 миллионов миллиардов (1017) джоулей доступной энергии для выполнения вычислений. Если привести тот же результат в более знакомой форме энергии, у ноутбука есть около 20 млрд (2 х 1013) килокалорий доступной энергии, что эквивалентно 100 млрд шоколадных батончиков. Это очень много энергии.
Другой знакомый нам эквивалент – это количество энергии, высвобождаемой при ядерном взрыве. У абсолютного ноутбука есть двадцать мегатонн (20 млн т в тротиловом эквиваленте) энергии, доступной для вычисления. Это сопоставимо с количеством энергии, высвобождаемой при взрыве большой водородной бомбы. По существу, когда наш абсолютный ноутбук выполняет вычисления на максимальной скорости, используя для изменения состояния битов каждую доступную калорию, изнутри это выглядит как ядерный взрыв. Элементарные частицы, которые хранят и обрабатывают информацию в абсолютном ноутбуке, движутся при температуре в миллиард градусов. Абсолютный ноутбук похож на маленький кусочек Большого взрыва. (Технологии упаковки должны будут совершить серьезный прорыв, прежде чем кто-то захочет положить абсолютный ноутбук к себе на колени.) В итоге количество операций, которое может выполнить наш маленький, но мощный компьютер, составляет огромную величину: миллион миллиардов миллиардов миллиардов миллиардов миллиардов (1051) операций в секунду. Компании Intel есть, к чему стремиться.
Но сколь велик путь, который придется пойти компании Intel? Вспомним закон Мура: в последние полвека количество информации, которую могут обрабатывать компьютеры, и скорость, с которой они ее обрабатывают, удваивается каждые восемнадцать месяцев. Множество технологий – последней из них стали интегральные схемы – сделали возможным такой рост мощности обработки информации. Нет никаких причин, по которым закон Мура должен продолжать действовать год за годом; это закон человеческой изобретательности, а не закон природы. В какой-то момент закон Мура перестанет работать. В частности, никакой ноутбук не может вести вычисления быстрее, чем абсолютный ноутбук, описанный выше.
Но сколько времени потребуется компьютерной индустрии, чтобы при существующей скорости технического прогресса создать абсолютный ноутбук? Мощность компьютеров удваивается каждые полтора года. За пятнадцать лет она удваивается десять раз, то есть увеличивается на три порядка. Иначе говоря, нынешние компьютеры в миллиард раз быстрее, чем были гигантские электромеханические машины всего пятьдесят лет назад. Нынешние компьютеры выполняют порядка триллиона логических операций в секунду (1012). Следовательно (если закон Мура продержится до тех пор), мы сможем купить абсолютный ноутбук в магазине примерно в 2205 г.