Обчислення зі швидкістю світла
Фотонні процесори по продуктивності набагато обганяють звичну електроніку.
Фотонні процесори по продуктивності явно обганяють звичні електричні, і, можливо, недалекий той день, коли вони прийдуть їм на зміну. (Фото: Sashkin7 / Depositphotos )
Сергій Степаненко на Національному суперкомп'ютерному Форумі.
>
Чи можна поліпшити сучасні комп'ютери? Питання насправді набагато серйозніше, ніж може здатися на перший погляд. В середині минулого століття, коли електронні обчислювальні машини тільки з'явилися, їх конструювали на основі електронних ламп, потім перейшли на транзистори, ще пізніше - на інтегральні схеми, які об'єднували на одному кристалі напівпровідника сотні транзисторів. Нарешті в 1970-х з'явилися мікропроцесори - компактні інтегральні схеми, що включали в себе величезну кількість елементів, набагато більше, ніж раніше (мільйони і навіть мільярди, якщо говорити про сучасних мікропроцесорах).
Комп'ютери кожного нового покоління працювали швидше і ефективніше колишніх: транзисторні працювали краще лампових, мікропроцесорні краще транзисторних. Однак з того моменту, коли винайшли мікропроцесори, в комп'ютерній електроніці з'являлося все менше принципових інновацій, і прогрес ішов просто по шляху поліпшення того, що вже придумано. І зараз вже не за горами той момент, коли в комп'ютерах поліпшать абсолютно все, що можна.
Щоб еволюція розумних машин, які стали для нас такими незамінними, не зупинилася, нам потрібні кардинальні зміни в їх пристрої. Найпопулярніше на сьогодні напрямок розробок тут - квантові комп'ютери. Але чим швидше працює такий комп'ютер, тим сильніше у нього проявляються різні фізичні ефекти, які заважають обчислень, і дослідники поки що не знають способу їх подолати.
Крім того, квантові комп'ютери - досить специфічні пристрої, які не для всіх задач хороші. Вони ідеальні там, де потрібно перебрати величезну кількість варіантів рішення, де потрібно моделювати квантові системи (що випливає з їхньої природи). Але обчислити якийсь квадратний корінь буде швидше і простіше на звичайному комп'ютері, а на квантовому ми витратимо на це абсолютно неадекватні ресурси.
Чи є альтернатива квантових обчислень? Так, і на думку Сергія Степаненка, лауреата Державної премії Російської Федерації і доктора фізико-математичних наук з Російського федерального ядерного центру - Всеросійського науково-дослідного інституту експериментальної фізики (Російський федеральний ядерний центр у Сарові) в Сарові, це обчислення оптичні. Потрібно - ні більше, ні менше - замінити електричні струми променями лазерів.
Логіка обчислень залишиться колишньою, що дозволить використовувати в фотонних обчислювальних машинах всі винаходи, всі архітектурні рішення, які зараз використовують для машин електронних. Завдання, які зручно вирішувати на ФВМ (фотонні обчислювальні машини) і ЕОМ - одні й ті ж, тільки на ФВМ звичні квадратні коріння можна обчислювати набагато швидше.
Детальний опис фотонного процесора опубліковано в журналі «Фотоніка» . В кінці минулого року Степаненко представив свій проект на Національному суперкомп'ютерному Форумі в Переславлі-Заліському, на якому щорічно обговорюють найсучасніші вітчизняні розробки і самі передові ідеї, часом межують з фантастикою. Втім, фантастикою проект Степаненко вже не назвеш: в кінці минулого року його винахід був запатентований. Колеги знайшли розробку настільки цікавою, що попросили Степаненко провести на Форумі дводенну презентацію.
Як же працює ФВМ? Насправді, він не цілком працює на світлі - в ньому є електричні блоки, які готує програму для світловий частини. Високорівнева мова програмування перекладається в машинний код - набір простих інструкцій. Потім ці інструкції перетворюються в лазерні імпульси і відправляються в фотонну частина пристрою, де і відбуваються самі обчислення. Фотони біжать по волноводам (вони можуть бути з такого ж оптоволокна, що доставляє інтернет нам в квартири) і потрапляють, нарешті, в фотонний процесор.
Тут лазерні промені взаємодіють один з одним за законами звичайної булевої алгебри, тобто тут виконуються знайомі всім логічні операції «І», «АБО», «НЕ» і т. Д., Але тільки самі логічні вентилі тут не електричні, а оптичні. Кожен промінь, який підійшов до оптичного вентиля, відповідає одному біту інформації. Усередині вентиля промені, які прийшли по різних каналах, зустрічаються і вступають в інтерференцію. Якщо інтерференція конструктивна, то на виході з вентиля виходить світловий імпульс - логічна «1», якщо ж вона деструктивна, світлові хвилі пригнічують один одного, і темрява трактується як «0».
Після того, як лазерні промені послідовно провзаємодіяти в різних оптичних вентилях, обчислювальний процес закінчується. Промені залишають процесор і по оптоволокну «летять» назад в електронну частину комп'ютера. Тут оптична інформація знову перетвориться в електричну і стає доступна користувачеві.
Ідея фотонного процесора не нова, але сама схема його втілення - нова. За словами Степаненка, головне - щоб перетворення між світлом і електрикою виконувалися якомога рідше, тому що вони вимагають багато часу і енергії. Створити фотонний процесор намагаються вже щонайменше 30 років, і такі спроби дуже часто зазнавали краху саме через те, що інженери створювали електронно-оптичні «гібриди», в яких «світло-електричних» перетворень за один цикл роботи було занадто багато. В результаті новий пристрій ніяк не могло обійти за характеристиками електронні аналоги.
Інша важлива причина невдач полягає в тому, що за основу логічних вентилів в минулому часто брали активні логічні елементи. На відміну від пасивних, в яких стану «0» і «1» виходять за рахунок оптичних ефектів на кшталт інтерференції, в активних елементах саме середовище змінює свої властивості і або пропускає світло, або ні. Але щоб змінити властивості середовища, потрібні знову час з енергією - зайві витрати того і іншого знову-таки робили ФВМ неконкурентоспроможними.
Пікова продуктивність фотонного процесора Степаненко для найважчої операції множення, яку доводиться виконувати комп'ютерів, може скласти до 50 петафлопсів (флопс - одиниця виміру продуктивності комп'ютерів, що показує, скільки операцій з плаваючою комою виконує обчислювальна система за одну секунду). Потужність такого процесора на піку складе всього 100 Вт.
Для порівняння: сучасні електронні процесори тієї ж потужності виконують обчислень порядку всього лише 5 терафлопс (тобто в десять тисяч разів менше). З іншого боку, самому «крутому» суперкомп'ютера в світі, щоб продемонструвати абсолютний рекорд в 93 петафлопса, необхідно аж 15 000 000 ват потужності. При цьому суперкомп'ютери містять десятки тисяч мультиядерних електронних процесорів і займають величезні приміщення, а фотонного процесора достатньо всього одного, і простору він собою займе всього 1000 см3 (або 1 літр).
Нарешті, продуктивність ФВМ залежить від довжини світлової хвилі. Наприклад, 50 петафлопсів ми отримаємо з лазерної хвилею в 1530 нм. Однак якби довжина хвилі була в 10 разів менше - а випромінювання такого порядку використовують, наприклад, у медичній рентгенографії - продуктивність зросла б відразу в 100раз і склала б 5 ексафлопсов. (Ексафлопс - квінтильйон обчислень в секунду; до цієї позначки суперкомп'ютери поки тільки неспішно підбираються.)
Відразу виникає питання, наскільки в принципі можна зменшити довжину хвилі. У разі лазера на 10 нм обчислення доведеться проводити хіба що в вакуумі: матеріалів, за якими могло б передаватися випромінювання з такою довжиною хвилі, в природі не відомо. Випромінювання з довжиною хвилі 0,1 нм виникає лише під час вибуху наднових. Здається, що використання таких променів в комп'ютерах - це точно щось з області фантастики, але, як вірно зауважує Степаненко, не будемо забувати, що 100 років тому ніхто не думав і про мобільні телефони.
Втім, надмірно фантазувати поки і не потрібно. По-перше, якщо створити квантовий процесор потужністю такого ж порядку, що і сучасні суперкомп'ютери, його продуктивність «перестрибне» далеко за ексафлопси. По-друге, промені з різними довжинами хвиль не взаємодіють, тобто якщо використовувати кілька лазерів, то в одному фотонному процесорі можна буде паралельно виконувати декілька обчислювальних процесів, і вони не будуть один одному заважати.
У минулому Степаненко багато працював з мультіпроцесорними системами, налагоджуючи в них алгоритми обміну, і навіть написав про них монографію. Накопичений досвід допоміг продумати і нові маршрути передачі даних, які дозволяють обробляти інформацію «на льоту», роблячи непотрібною традиційну оперативну пам'ять.
Звичайно, поки це лише проект, і щоб побудувати квантовий комп'ютер, потрібно подолати серйозні технічні труднощі. Важливо, однак, що нічого фізично забороненого тут немає.
Чи є альтернатива квантових обчислень?Як же працює ФВМ?