Почему не используются реверсивные ворота?

25

Я читал книгу «Сингулярность близка», написанную Курцвейлом, и он упомянул обратимые ворота, например, ворота Фредкина . Преимущество использования таких элементов состоит в том, что мы можем избавиться от тепловых потерь, связанных с вычислениями, когда биты просто исчезают в тепле, и вычисления не потребуют какой-либо энергии. Эти предположения заставляют эти ворота звучать как чудесное решение. Таким образом, вопрос в том, какие технические препятствия все еще мешают их широкому использованию.

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

Мехди
источник
5
Обратите внимание, что квантовые вычисления в значительной степени связаны с обратимыми воротами (это часть того, что означает «унитарный»).
Дэвид Ричерби,
1
@DavidRicherby Не все квантовые вычисления обратимы; в конце концов происходит декогеренция.
Алиса
Обратите внимание, что любой практический компьютер, использующий обратимые ворота, все еще будет генерировать тепло, потому что вам нужно выполнить исправление ошибок, чтобы компьютер работал на правильном пути. Коррекция ошибок по своей природе требует необратимых операций (или непрерывной подачи нулевых битов; та же разница).
Крейг Гидни

Ответы:

18

Я ни в коем случае не эксперт по этой теме, но просто из случайного чтения Википедии:

он основан на движении сферических бильярдных шаров в среде без трения, выполненной из буферов, от которых шары отскакивают идеально

... это звучит очень реалистично.

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

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

Теоретический предел, на который претендует Reversible Computing, заключается в том, что стирание 1 бита информации генерирует по крайней мере энергии в тепле. Для компьютера, работающего со скоростью с транзисторами, каждый составляющий биты исчезают со скоростью , что соответствует выработки тепла. Это составляет лишь небольшую часть ( ) от энергопотребления компьютера.60kTln210 9 560C109 165GHz 1 / 10 тысяч16mW1/10000

Наши современные компьютеры не ограничены тепловыделением, связанным с исчезновением битов. Они ограничены присущей им неэффективностью перемещения электронов по крошечным следам меди.

Том ван дер Занден
источник
5
-1. Некоторые люди сделали обратимые ворота и построили из них целый процессор. Есть фотография этого процессора с обратимой логикой на cise.ufl.edu/research/revcomp .
Дэвид Кэри
2
@DavidCary, но они не (или ничтожно малы) более эффективны, чем компьютеры, сделанные из необратимых ворот.
user253751
3
@immibis Заметно не соответствует действительности; они не подчиняются тем же законам, что и компьютеры, изготовленные из необратимых ворот, и, следовательно, существенно более эффективны.
Алиса
3
@DavidCary Пожалуйста, покажите мне некоторые данные о том, насколько эффективен процессор, с которым вы связаны. Все, что я вижу, это изображение процессора со словом «адиабатический» на нем, но нет информации о том, насколько он более эффективен, чем традиционные компьютеры.
Том ван дер Занден
1
@TomvanderZanden Измерение эффективности немного бесполезно, если вы не укажете, какого рода эффективность. Микросхемы RISC более эффективны, чем CISC, с точки зрения размера микросхемы, но не с точки зрения того, сколько инструкций требуется для определения любого данного алгоритма. Любая обратимая схема сразу более эффективна, чем традиционная схема, потому что она не подчиняется принципу Ландауэра ; это уже огромная победа.
Алиса
15

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

Я знаю, что исследовательская группа Тома Найта в MIT изготовила небольшой адиабатический процессор в конце 1990-х годов. Разработанное ими семейство практической логики называется разделенной логикой восстановления заряда и может быть реализовано с использованием стандартных (CMOS) технологий изготовления. Я полагаю, что работа была продолжена Майклом П. Фрэнком из Университета штата Флорида. Примером работы в группе Тома Найта является следующая магистерская работа (которая имеет довольно приличный раздел о смежных работах в начале 1990-х годов.) Вьери, CJ: Маятник: обратимая компьютерная архитектура , магистерская работа, кафедра MIT EECS, 1995.

Обратимые контуры должны быть адиабатическими (между цепью и ее средой не должно быть теплообмена), что означает, что они должны быть всегда в равновесии. Для любого процесса, которому необходимо что-то изменить, вы можете только приблизиться к равновесию, сделав это изменение как можно медленнее.

Если я правильно помню мою термодинамику, вы можете сделать энергию обратимого вычисления сколь угодно малой, но минимальное действие (время-энергия) должно быть небольшой константой.

Блуждающая логика
источник
2
Вы не помните термодинамику правильно; Принцип Ландауэра не обязательно должен поддерживаться обратимым контуром (поскольку он не стирает биты), и поэтому необходимая энергия теоретически может быть равна нулю (и тепло не будет выделяться). Обратимые цепи также не должны быть адиабатическими; были изготовлены практические реверсивные вентили, которые не медленнее, чем нереверсивные микросхемы (принимая во внимание, что реверсивные микросхемы обычно больше и, следовательно, имеют увеличение скорости задержки света).
Алиса
«Увеличение задержки света»: Вы имеете в виду обратимые оптические чипы? Большинство чипов являются электронными.
Zylstra
6

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

Закон Мура стал чем-то вроде самоисполняющегося пророчества; Как видно из графика выпуска Tick Tock , производители микросхем считают выполнение закона Мура сложной задачей. Из-за необходимости выполнять закон Мура, мы стали все более искусными в уменьшении размера чипов, продвигая литографию (и часто используя читы, такие как мультипаттерны).

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

Убийца лучшего - это не технологические проблемы; это успех достаточно хорошо .

Алиса
источник
1
Надеюсь, однажды достаточно хорошо, уже не будет достаточно хорошо.
Мехди
@ Mehdi Не мы все желаем. Но я не был бы так уверен; энергия в настоящее время дешева, и есть пути для продолжения текущего цикла в течение по крайней мере еще 5 лет (возможно, 10, если мы найдем способ заставить работать определенные технологии . После этого, некоторые новые технологии должны будут занять место литографии, но это не означает, что это должно быть нетрадиционно. Трехмерная литография может обеспечить более плотные микросхемы, построенные на одной и той же высоте, но в разных направлениях. Это может принести нам прибыль до 2050 года.
Алиса,
3

Полезные вычислительные устройства требуют обратной связи, что позволяет одному элементу схемы выполнять по существу неограниченное количество последовательных вычислений. Используемые цепи обратной связи должны содержать секции, чье общее количество входов (считая как те, которые возвращаются с выходов, так и нет) превышает количество выходов, которые возвращаются на вход (единственный способ, которым количество входов не будет ' Превышение числа выходов с обратной связью было бы, если бы цепи не реагировали каким-либо образом на внешние раздражители). Поскольку совершенно обратимо-логические функции не могут иметь больше входов, чем выходов, невозможно построить из них какую-либо структуру обратной связи, необходимую для многократного выполнения любых нетривиальных вычислительных задач., Обратите внимание, что с технологией CMOS, используемой в современных компьютерах, обратная связь необходима для обеспечения того, чтобы результаты, представленные вычислениями в разных частях схемы, были доступны одновременно другим частям, поскольку если бы они не были относительной синхронизацией, с которой поступают сигналы, составляют «информацию», которая не может быть полностью передана вниз по течению; другие технологии могут позволить множеству вентилей распространять сигналы с одинаковой скоростью, сохраняя при этом обратимость, но я не знаю практической технологии для этого.

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

Если разрешено иметь выходы, которые игнорируются, если при надлежащих входных условиях они никогда не будут повышаться, тогда может быть возможно разработать систему, которая теоретически получит выгоду от обратимой логики. Например, если у кого-то был алгоритм, который работал на 256-слововом блоке оперативной памяти, а другой хотел использовать «процессор с обратимой логикой», который выполнял 1 000 000 операций в секунду, и каждая операция обновляла либо регистр, счетчик программ, либо один Слово RAM, можно использовать «обратимый процессор», который бы:

  • выполнил кучу инструкций и, на каждой, отправил все, что было перезаписано в буфер LIFO
  • после выполнения нескольких инструкций скопируйте ОЗУ в изначально пустой буфер пересылки
  • используя значения в LIFO, запустите все вычисления в обратном порядке
  • перезаписать содержимое основного ОЗУ буфером пересылки, который будет удален в процессе.

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

Однако для того, чтобы эта способность перешла в какую-либо экономию энергии, необходимо иметь LIFO, который будет накапливать энергию при вводе информации и с пользой возвращать эту энергию при считывании. Кроме того, LIFO должен быть достаточно большим, чтобы хранить данные о состоянии для достаточного количества шагов, чтобы любая энергия, затрачиваемая на его использование, была меньше, чем количество энергии, которое оно экономно использовало. Учитывая, что количество энергии, потерянной при хранении и извлечении N байтов из любого практического FIFO, вряд ли будет равно O (1), неясно, что увеличение N значительно уменьшит потребление энергии.

Supercat
источник
1
@LoganMayfield: Я думаю, что вы игнорируете требование, чтобы требуемая длина ленты была пропорциональна количеству шагов, которые должны быть выполнены обратимо. Если я добавлю картридж в Atari 2600 и включу его на некоторое время, он будет работать около 100 миллиардов циклов в день. Поскольку система (включая все картриджи, кроме самых крупных) будет иметь менее 100 000 транзисторов, это более миллиона циклов в день на транзистор. Если кто-то хотел спроектировать эквивалентную машину, которая могла бы работать в течение дня полностью обратимо, даже с возможностью сделать обратимый LIFO с одним транзистором на бит ...
суперкат
1
... необходимо увеличить количество транзисторов более чем в миллион раз. Если нужно всего лишь выполнить несколько тысяч циклов за один раз, захватить результаты, перемотать циклы, а затем заменить предыдущее исходное состояние захваченными результатами, которые могут быть практически работоспособными, но будут чудовищно сложными. Что бы ни напоминало сегодняшнюю технологию, любое сокращение «теоретически неизбежных» потерь, которое можно было бы получить с помощью обратимых вычислений, было бы подавлено увеличением мощности, потерянной по причинам, которых можно было избежать только в теории.
суперкат
1
Я был обеспокоен только тем утверждением, в котором ваш первоначальный ответ звучал так: «Обратимые технологии не могут вычислять те же вещи, что и необратимые технологии». Я не хотел подразумевать, что это практично.
Логан Мэйфилд
1
@LoganMayfield: Первоначальный вопрос был «почему эти вещи не используются». Я бы предположил, что почти все практические вычислительные устройства используют обратную связь таким образом, что фиксированное количество оборудования сможет выполнять неограниченное количество вычислений, если дать неограниченное время. Это то, чего не может сделать обратимая логика . Это главное качественное различие между обратимыми и необратимыми вычислениями. Может случиться так, что даже компьютер, который может выполнить только ограниченное количество операций перед «перемоткой», все еще может быть полезен, так что ...
суперкат
1
... Я отредактировал пост, чтобы сказать, что потребуется, чтобы использовать такую ​​вещь для выполнения какой-либо значимой работы. Тем не менее, я думаю, что фундаментальная практическая проблема проистекает из того, что я первоначально сказал: компьютеры получают большую часть своей выгоды за свою способность многократно использовать элементы схемы для выполнения различных вычислений, а также неспособность обратимая логика для управления, которая поставит его в серьезное неудобство прямо за воротами.
суперкат
2

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

Другой основной момент заключается в том, что каждый раз, когда рассеяние энергии на микросхеме уменьшается, это, по сути, переводит систему затворов в «более обратимое состояние», а рассеяние микросхем с более низкой энергией уже давно является высоким приоритетом в мобильных вычислениях (что представляет собой своего рода изменение отраслевой парадигмы). В течение десятилетий прирост производительности чипов (по аналогии с законом Мура) был вызван тем, что он был несколько «ослаблен» или даже «неаккуратен» из-за рассеяния энергии, но это достигло точки снижения отдачи несколько лет назад. Intel, ведущий мировой производитель микросхем, пытается внедрить чипы с более низким энергопотреблением, чтобы конкурировать с Arm, который имеет преимущество, никогда не создавая ничего, кроме.

Возможно, недавно были проведены прорывные исследования с использованием сверхпроводящих технологий (июнь 2014 г.), и есть другие активные исследовательские проекты в этой области.

См., Например, Двусторонние логические элементы с использованием адиабатических сверхпроводящих устройств / Такеучи, Яманаси, Йошикава, Природа:

Обратимые вычисления были изучены с тех пор, как Рольф Ландауэр выдвинул аргумент, который стал известен как принцип Ландауэра. Этот принцип гласит, что минимальное рассеяние энергии для логических операций в обратимых вычислениях отсутствует, поскольку оно не сопровождается снижением информационной энтропии. Однако до сих пор не было продемонстрировано практических обратимых логических элементов. Одна из проблем заключается в том, что обратимые логические элементы должны быть построены с использованием чрезвычайно энергоэффективных логических устройств. Другая трудность заключается в том, что обратимые логические элементы должны быть как логически, так и физически обратимыми. Здесь мы предлагаем первые практические обратимые логические вентили с использованием адиабатических сверхпроводящих устройств и экспериментально демонстрируем логическую и физическую обратимость вентиля. Дополнительно оценим рассеяние энергии затвора, и обсудить минимальное рассеяние энергии, необходимое для обратимых логических операций. Ожидается, что результаты этого исследования позволят обратимым вычислениям перейти от теоретического этапа к практическому использованию.

ВЗН
источник
1

Ворота Фредкина реалистичны и многие были реализованы. Есть целые платы FPGA, строго использующие реверсивные логические вентили, которые реализованы с использованием Fredkin и Toffoli gate в качестве их LU.

Есть несколько проблем, влияющих на их широкое использование в компьютерной архитектуре. У ворот Фредкина есть несколько «рекламируемых» преимуществ, которые не обязательно работают так, как ожидается в реальных цепях. Экономия энергии реверсивных логических вентилей обусловлена ​​главным образом тем, что они не требуют создания энтропии при выполнении операции. Как заявил Том ван дер Занден, это главная причина, по которой обратимая логика может быть гораздо более эффективной. Почему это не так в реальных цепях:

  1. В настоящее время транзисторная технология - это больше, что ограничивает скорость компьютера и энергопотребление, и, к сожалению, требуется больше транзисторов, чтобы сделать затвор Фредкина в отличие от традиционных затворов nand или nor. Это означает, что ворота Фредкина тратят больше энергии из-за утечки транзистора и требуют больше места на кремнии (что означает более дорогой). Одного этого достаточно, чтобы оправдать использование nand / or over fredkin gates
  2. Поскольку основной формой потери мощности является транзистор, а не создание энтропии из-за фактических вычислений, вам все равно нужно провести линии питания и заземления для входа Фредкина, чтобы компенсировать эту потерю мощности. Эти большие шины представляют собой веерные шины, которые также занимают много места на кремнии. Поскольку в затворе Фредкина больше транзисторов, это приводит к большему разветвлению и, таким образом, к потере пространства на кремнии.
  3. Хотя у нас есть обратимые ворота Фредкина, они построены из необратимых устройств (транзисторов). Это означает, что некоторые из приростов энергии не реализуются с помощью современной технологии затвора (за пределами квантовых цепей).
  4. Размер и скорость связаны с кремнием, чем ближе друг к другу, тем быстрее вы можете их сделать. Поскольку ворота Фредкина используют больше транзисторов и имеют больше соединений для питания и т. Д., Они имеют тенденцию быть значительно медленнее.
  5. Преимущества энергопотребления и скорости реализуются только тогда, когда биты успешно используются повторно. Большинство наших алгоритмов ужасно неконсервативны. Вы можете убедиться в этом, исследуя реализацию полного сумматора или сдвигового регистра, используя ворота Фредкина. Поскольку обратимая логика не допускает логического разветвления и разветвления, это приводит к большому количеству битовых вычислений, которые не в конечном итоге используются для выполнения полезной операции. Нечто такое, как сложение двух 8-битных чисел, даст 9-битную или полезную информацию (8-битный результат, 1 бит переноса), но потребует входную шину с множеством 1 и 0 констант и создаст много битов вывода ненужных данных. Поскольку у вас более широкая шина, это приводит к еще большему распространению цепи на кремнии.
  6. Кроме того, ненужные биты должны быть сброшены процессором, что в любом случае приведет к потере энергии, поскольку они никогда не используются.

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

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

Райан
источник