Новый Мир Новый Мир - Новый Мир ( № 7 2011)
В данном случае вычисление есть измерение веса палочек.
Компьютер работает точно так же. Известно, что любое вычисление можно свести к вычислению функций алгебры логики, то есть таких функций, которые оперируют переменными, имеющими только два значения — 0 и 1. Функция также может принимать только два значения — 0 и 1. То, что к таким простым функциям сводится любой вычислительный процесс, было доказано великими логиками в 1930-е годы. Это независимо доказали Алонзо Чёрч, Стивен Клини и Алан Тьюринг. Тьюринг выразил свой результат в виде гипотетической «машины» — универсальной машины Тьюринга. Она представляет собой бесконечную бумажную ленту, на которую с помощью маркера наносятся нули и единицы. Машина может прочитать значение, написанное в клеточке, на которой стоит маркер, изменить значение, сдвинуть маркер по ленте влево или вправо. Это практически все.
Но еще в XIX веке американский логик и философ Чарльз Пирс обратил внимание на то, что любая функция алгебры логики может быть реализована с помощью соединения нескольких элементарных электрических схем. Чтобы вычислить любую функцию, нам нужно выставить переключатели в два состояния — «включено» или «выключено» (это точный аналог нулей и единиц) и пустить ток. Допустим, в нашей сети есть электрическая лампочка, тогда если она загорелась — значение функции при введенных данных (состоянии переключателей) равно единице, если лампочка не загорелась — нулю.
Здесь мы видим полную аналогию со взвешиванием палочек. Пока мы устанавливали переключатели, мы как бы пересчитывали палочки, когда включили ток — запустили процесс счета (или взвешивания), когда посмотрели на лампочку — считали результат.
Идеи Пирса независимо от него использовал Клод Шеннон при создании первых компьютеров в 1940-е годы. Фактически Шеннон показал, как можно с помощью электрических схем реализовать машину Тьюринга. Прямое следствие открытий Тьюринга и Шеннона — возникновение во второй половине XX века того постиндустриального, цифрового мира, в котором мы сегодня живем. Физика полупроводников сделала компьютеры сначала реализуемыми, а потом и настолько миниатюрными, что их можно уместить в мобильный телефон. Так что, когда вы будете звонить по своему мобильнику, помяните благодарным словом этих великих людей.
Но в начале XXI века выяснилось, что использование электрических схем для создания вычислительных устройств имеет свои границы, и эти границы на сегодня практически достигнуты: перед человечеством встали задачи, которые можно решить с помощью существующих компьютеров, только теоретически. В реальности их решение потребует времени, сравнимого или даже превосходящего время существования Вселенной. И некоторые такие задачи имеют совсем простую формулировку, например, разложить большое число на простые множители (задача факторизации). На реальной невозможности решения этой задачи построено большинство криптографических систем, работающих методом шифрования с открытым ключом. Здесь не место подробно разбирать принципы работы таких алгоритмов шифрования, стоит отметить только, что если бы сегодня кому-то удалось найти способ быстро разлагать большие числа на простые сомножители, — для него стали бы доступны все транзакции во всех банках мира.
Другая задача, с которой не справляются (и по-видимому, никогда не смогут справиться) сегодняшние компьютеры, — это моделирование квантовых систем, в том числе сложных молекул, в частности самых интересных для нас — ДНК.
Профессор МГУ Юрий Ожигов, работающий в лаборатории квантовых компьютеров Физико-технического института РАН (ФТИАН), сказал: «Даже для численного моделирования единственного атома гелия (а это всего второй по сложности атом — после атома водорода. — В. Г. ), причем без учета движения ядра, требуется миллион миллионов узлов расчетной сетки, а это уже серьезная проблема даже для суперкомпьютера. Ну а о точном квантовом расчете сложнейших молекул белков и ДНК сегодня и думать невозможно» [6] .
Если бы в первой половине XX века человечество не придумало, как использовать электрические схемы для вычислений, мир был бы другим — никакой механический вычислитель, те же весы, которые использовал для сложения Боб, невозможно встроить в мобильный телефон. Значит, и сегодня нам нужно найти другой физический принцип, чтобы его можно было использовать для «расчета сложнейших молекул белков и ДНК».
В 1965 году сотрудник компании «Intel» Гордон Мур сформулировал эмпирический закон, получивший его имя. Он заметил, что каждые два года плотность размещения транзисторов на одном квадратном дюйме кремниевой подложки увеличивается в два раза. (У этого закона было много уточнений, и это — только одна из возможных формулировок.) Этот закон утверждает, что вычислительные мощности растут экспоненциально, то есть фактически со скоростью взрыва. Когда Мур сформулировал свой закон, он, конечно, не предполагал, что такой рост сохранится долго. Между тем закон Мура до сих пор работает.
Но в начале XXI века стали заметны серьезные проблемы. И многие обычные пользователи персоналок, те, кто начинал еще в 90-е, их уже заметили. Столь частые в те годы победные реляции о достижении новой тактовой частоты уже давно не слышны.
Процессор Pentium 4, разработанный компанией «Intel» еще в 2002 году, имел тактовую частоту 3 ГГц. И с тех пор тактовая частота не выросла. Хотя есть процессоры с частотой 3,8 ГГц, но, как правило, используются процессоры с частотой 3 ГГц. А от частоты 4 ГГц «Intel» отказалась [7] . Для дальнейшего роста есть несколько принципиальных (непреодолимых) барьеров: атомная структура вещества, ограничение скорости света, туннельный эффект и проблема отвода тепла (перегрев процессора).
Процессор, каким бы маленьким он ни был, не может быть меньше одного атома. Сегодня самая передовая технология производства процессоров — 32-нанометровая — уже отличается от размера атома всего на три порядка — 1000 размеров атома. «Intel» заявила, что к 2017 году компания перейдет на 10-нанометровую технологию, но это уже точный предел для существующих решений.
Сигнал между транзисторами не может распространяться со скоростью, превышающей скорость света, а значит, есть предел для роста скорости обмена данными.
При размерах порядка нанометра заряженные частицы начинают «просачиваться» через закрытые переключатели, возникает «туннельный ток», и уже нельзя уверенно сказать, закрыт переключатель или открыт. Это чисто квантовый эффект, не имеющий аналогов в классическом мире, и связан он с тем, что заряженная частица — не частица вовсе, а волна информации, и при квантовых размерах локализовать ее положение с любой точностью нельзя.
Существует и еще одна принципиальная трудность — это отвод тепла. Работающий процессор нужно охлаждать, а это тоже возможно только до определенного предела. Еще в 1961 году сотрудник «IBM» Рольф Ландауэр сформулировал принцип, согласно которому в любой вычислительной системе, независимо от ее физической реализации, при стирании 1 бита информации выделяется теплота. Это происходит просто потому, что при стирании информации она теряется безвозвратно, а значит, увеличивается энтропия системы и неизбежно выделяется тепло. В начале 1960-х на этот принцип не обратили внимания — количество тепла показалось совершенно ничтожным; сегодня эта проблема стала одной из самых трудных.
Крупнейшие производители процессоров, и в первую очередь «Intel», отказались от наращивания тактовой частоты и перешли к реализации многоядерных решений, то есть фактически стали встраивать в компьютер не один процессор, а два или четыре. Но, во-первых, не все алгоритмы можно эффективно распараллелить, чтобы на двух процессорах они работали быстрее, чем на одном, а во-вторых, взаимодействие процессоров — это большие накладные расходы. Попросту говоря, два процессора работают не в два раза быстрее, чем один, а, скажем, в 1,8 раза. Причем чем процессоров больше, тем прирост будет менее значительным. То есть здесь тоже ясно виден предел. Но пока еще есть куда расти.
Зачем нам нужны все более быстрые и мощные компьютеры? Нельзя ли ограничиться теми, что есть? Ответ однозначный: даже в среднесрочной перспективе уже нельзя. Это связано с лавинообразным ростом количества цифровой информации и количества пользователей и производителей этой информации. Буквально шесть лет назад, в феврале 2005 года, когда появился Youtube, никто не подозревал, что количество видеоинформации будет расти с такой поразительной скоростью. И это только небольшая часть цифровой информации, которая создается и передается по глобальной сети. Хотя количество людей на Земле сравнительно невелико, количество устройств и сервисов, использующих цифровую информацию, ничем не ограничено. Если сегодня перестать наращивать цифровые мощности, встанет Сеть. Последствия могут быть катастрофическими. Но это только одна из проблем. Мы ведь хотим продолжать теми же темпами (а хотелось бы и побыстрее) познавать и конструировать природу, в частности, попытаться конструировать работу мозга, а без взрывного роста вычислительной мощности это невозможно.