понедельник, 29 июля 2013 г.

Квантовый компьютер


С каждым годом компьютеры вокруг нас становятся все умнее и умнее. То, что еще десяток лет назад едва ли мог сделать мощный настольный ПК и даже сервер в дата-центре, сегодня с легкостью выполняет умещающийся в кармане смартфон. До чего же дойдет прогресс вычислительной техники в будущем?

Еще в 1965-м году один из основателей компании Intel Гордон Мур обнаружил любопытную закономерность: с появлением новых микросхем количество транзисторов, входящих в их состав, возрастает примерно вдвое каждый год. Это наблюдение вошло в нашу жизнь под названием «закон Мура», правда, в несколько скорректированном виде. Каждые полтора года быстродействие процессоров удваивается благодаря росту числа транзисторов и быстродействия каждого из них.


ЕСТЬ ЛИ ПРОБЛЕМА?

Вычислительная техника развивается огромными темпами. Это факт. Можно с уверенностью сказать, что ни одна другая область техники не делает это так быстро. Но будет ли так всегда? Если учитывать использование имеющихся полупроводниковых технологий, то можно ответить однозначно - нет. В 2007-м году сам Мур, уважаемый во всем мире ученый и успешный бизнесмен почтенного возраста, заявил, что скоро его закон перестанет действовать. Причины для этого столь же банальны, сколько непреодолимы. Из-за атомарной природы вещества и конечного значения скорости света вычислительная техника в том виде,в котором мы ее знаем, скоро достигнет своего технологического предела.

Близость предела полупроводниковой технологии мы ощущаем уже сейчас. Достаточно вспомнить конец 1990-х и начало 2000-х годов, когда ведущие производители микропроцессоров для настольных и мобильных компьютеров были вовлечены в гонку тактовых частот. Буквально за несколько лет частота старших моделей увеличилась в десять раз, но внезапно этот рост остановился. В результате в последние несколько лет мы наблюдаем качественный рост процессоров: у них становится все больше ядер, расширяется список поддерживаемых инструкций, увеличивается степень интеграции.

МНОГО ПОТОЧНОСТЬ - НЕ ВЫХОД

Смена приоритетов - это как раз те самые первые ласточки приближающегося конца. Увеличение тактовой частоты в какой-то момент стало приводить к катастрофическому повышению тепловыделения. По сути, 100 Вт рассеиваемой мощности это не так уж и много - как обычная лампа накаливания. Но если учесть, что все это происходит на площади в четыре тетрадные клетки, то это уже серьезная проблема. Еще один побочный эффект усложнения техпроцесса - возникновение паразитных емкостей: сами проводники, связывающие транзисторы на кристалле процессора, при таких наноразмерах становятся конденсаторами. Да и время p-n-перехода - величина известная и установленная, так что полупроводниковая логика не может работать быстрее.

Самый простой выход, который пока позволяет решать проблему, - параллельные вычисления. Почти все современные процессоры обладают несколькими ядрами, а задачи распределяются между ними. Получается, что в рамках одного кристалла трудится сразу несколько полноценных процессоров, этакий суперкомпьютер на одном кристалле. Сейчас такие суперкомпьютеры стоят внутри привычной нам техники, даже смартфоны оснащаются двух-и четырехъядерными процессорами, а некоторые - и восьмиядерными.

Все бы хорошо, но далеко не все задачи можно решить параллельными вычислениями. Довольно распространены линейные алгоритмы, в которых многоядерные системы работают как одноядерные, со скоростью своего самого быстрого ядра. Тем не менее пока потенциал многоядерных систем еще не использован полностью, так что в ближайшие годы в мире вычислений царить будут именно они.

НЕ ВСЕ ПОЛУПРОВОДНИКАМ ПОД СИЛУ

Несмотря на попытки распараллелить вычисления с помощью большого количества ядер или потоков, привычные нам полупроводниковые компьютеры являются устройствами с последовательным выполнением операций. Кроме того, практически все имеющиеся традиционные компьютеры, включая электромеханические гиганты первой половины XX века, построены на принципах, описанных Джоном фон Нейманом, и оперируют битами.

Как известно, бит - элементарный разряд в двоичной системе счисления, единица измерения информации. У него может быть лишь два значения - 0 или 1, комбинацией которых и определяется все разнообразие информации, обрабатываемой компьютером. Архитектура фон Неймана хорошо подходит для решения далеко не всех задач, да и возможности ее весьма ограничены. Например, задача по разложению числа на простые множители может оказаться не по зубам даже самым современным полупроводниковым компьютерам. Столь же сложными будут задачи по оптимизации.

Классическая задача комбинаторной оптимизации -так называемая задача коммивояжера. Представьте, что на карте находится несколько городов, которые Вам нужно посетить, при этом Вы должны определить самый короткий маршрут и в итоге вернуться в исходный город. Компьютеры, построенные по фоннеймановской архитектуре, решают подобные задачи перебором всех вариантов.

При этом всего 15 городов - это уже гигантское, но все же доступное современным компьютерам число вариантов: 14х13х12х11х10х9х8х7х6х5х4х3=43589145600. Если предположить, что один вариант просчитывается процессором за один такт, то одноядерный процессор с тактовой частотой 2,4 ГГц будет решать такую задачу на протяжении 18 секунд. А вот когда городов становится больше, то задача очень сильно усложняется. Например, при 20 городах число вариантов уже составляет 60822550204416000. У того же процессора это займет более 293 дней. Разумеется, при большем количестве городов задача может стать и вовсе непосильной для любых мыслимых и немыслимых суперкомпьютеров. На практике подобной сложностью обладают расчеты, связанные со сложными многокомпонентными системами вроде биологических.

КВАНТОВЫЕ ВЫЧИСЛЕНИЯ

Выход из ситуации есть: квантовые вычисления. В 1980-м году выдающийся советский математик Юрий Манин впервые высказал идею подобных вычислений. Уже в следующем году Ричард Фрейман предложил первую теоретическую модель квантового компьютера, а в 1982-м году Пол Бениофф описал теоретические основы его построения.

В отличие от обычного компьютера, квантовый оперирует вовсе не битами, а особыми квантовыми разрядами, называющимися кубитами. Если классический бит может находиться либо в одном (0), либо в другом (1) состоянии, то кубит обладает свойством квантовой суперпозиции, то есть находится одновременно в двух состояниях, но с различной комплексной амплитудой. На физическом уровне кубиты могут быть реализованы любыми объектами, имеющими два квантовых состояния. Это, например, поляризационные состояния фотонов или спиновые состояния ядер.

Таким образом, каждый кубит куда информативнее обычного бита. Но главное преимущество таких вычислений в другом - так называемом квантовом параллелизме. Физика процессов позволяет распараллеливать вычисления по оптимизации на таком низком уровне, что традиционной электронике такие возможности и не снились. Благодаря этому и возможно решать сложные аналитические задачи, недоступные классическим компьютерам.

При определенном упрощении квантовые вычисления происходят следующим образом. Определенный массив кубитов программируется так, чтобы задать начальные условия задачи. Затем начальное состояние системы изменяется с помощью унитарных преобразований, которые являются своеобразными аналогами логических операций в классических вычислениях. Подобную схему в 1989-м году предложил Дэвид Дойч. Он же обнаружил интересную закономерность: вычисления любой сложности можно организовать с помощью всего двух базовых операций. При этом получаемый ответ лишь с определенной долей вероятности будет правильным. С помощью увеличения числа операций можно приблизить вероятность правильного результата к единице.

При этом базовые квантовые операции позволяют выполнять любые классические логические операции. Таким образом, квантовый компьютер в теории может полностью заменить классический, в то время как классическому недоступна даже малая часть возможностей квантового.

Несмотря на то, что теоретических работ по созданию квантовых компьютеров накопилась масса, практическая реализация до сих пор остается сложным и дорогостоящим делом на пределе технических возможностей человечества. Удачный пример работ в этом направлении лишь один - канадская компания D-Wave и серия одноименных компьютеров.

А ЧТО НА ПРАКТИКЕ?

Компания впервые заявила о себе еще в начале 2007-го года. Тогда, по заявлению ее представителей, был создан компьютер, состоящий из 16 кубитов. Квантовый процессор использовал явление сверхпроводимости как одно из немногих известных квантовых явлений, которые возможно наблюдать в макромире. Информация была весьма скептично воспринята научным сообществом, так как не отвечала требованиям, предъявляемым к научным сообщениям. Уже в ноябре того же года на онлайн-конференции была продемонстрирована работа новой модели D-Wave Leda с 28-кубитовым процессором.

Несмотря на весь скепсис, в последующие годы компании удалось заполучить и инвестиции, и первых покупателей своей продукции. В мае 2011-го года компания представила D-Wave One - первую коммерческую модель квантового компьютера стоимостью 11 млн. долларов. Устройство оснащено процессором из 128 кубитов и способно выполнять лишь задачи по дискретной оптимизации. По сути, устройство не является полноценным квантовым компьютером, так как подавляющее большинство процессов в нем выполняют полупроводниковые приборы, а единственной по-настоящему квантовой операцией является квантовый отжиг внутри процессора. Тем не менее уже через пару недель после анонса у D-Wave нашелся первый клиент в лице американской авиастроительной корпорации Lockheed Martin.

В декабре 2012-го года была анонсирована модель D-Wave Two, процессор которой состоит из 512 кубитов. Совсем недавно были опубликованы результаты независимого тестирования компьютера. Оказалось, что с задачами комбинаторной оптимизации он действительно справляется куда лучше существующих кремниевых компьютеров. В частности, одну из поставленных задач он выполнил в 3600 раз быстрее, чем рабочая станция Lenovo на базе четырехъядерного процессора Intel с тактовой частотой 2,4 ГГц и 16 ГБ оперативной памяти.

Недавно стал известен и второй в истории коммерческий клиент компании. Им стала специально учрежденная для этого лаборатория по изучению искусственного интеллекта, созданная совместно NASA и Google. Кроме специалистов обеих организаций, доступ к устройству получат ученые из некоммерческой Университетской ассоциации космических исследований (USRA). Ожидается, что они смогут пользоваться компьютером около 20% времени.

Как видим, ни Google, ни NASA не смутила та подозрительность, с которой ученое сообщество относится к работе компании D-Wave. Видимо, компьютеры этой марки действительно способны справляться со сложными задачами, недоступными для понимания обычной классической логики в кремниевой реализации. Так что D-Wave Two с его 512 кубитами, похоже, не что иное, как переворот в вычислительной технике и начало ее новой эры.

(с) Егор Калейник