Estaba leyendo el libro "La singularidad está cerca", escrito por Kurzweil, y mencionó las puertas reversibles como, por ejemplo, la puerta de Fredkin . La ventaja de usar tales compuertas es que podríamos deshacernos del desperdicio térmico relacionado con la computación donde los bits simplemente desaparecen en calor, y la computación no necesitará ningún aporte de energía. Esos supuestos hacen que estas puertas suenen como una solución milagrosa. Entonces, la pregunta es qué obstáculos técnicos siguen impidiendo su uso a gran escala.
También creo que es una lástima que nunca haya oído hablar de esas puertas en mi licenciatura en ingeniería eléctrica y estudios de maestría en una de las mejores universidades alemanas ...
computer-architecture
Mehdi
fuente
fuente
Respuestas:
De ninguna manera soy un experto en este tema, pero solo de leer casualmente Wikipedia:
... esto suena muy realista.
Nadie ha descubierto realmente cómo hacer tales puertas todavía, son meramente de interés teórico. Eso podría explicar por qué nunca has oído hablar de ellos, ya que la ingeniería generalmente trata con la práctica.
La premisa de la computación reversible es que cuando desaparece un poco, se genera cierta cantidad de calor. Al usar puertas reversibles, nunca aparecen ni desaparecen bits, por lo que supuestamente el cálculo podría ser mucho más eficiente con puertas reversibles.
El límite teórico que afirma Reversible Computing es que borrar 1 bit de información genera al menos energía en calor. Para una computadora que funciona a un tostado con transistores cada uno haciendo que los bits desaparezcan a una velocidad de , que corresponde a de generación de calor. Eso solo representa una pequeña proporción ( ) del uso de energía de una computadora.60k TEn2 60 60∘do 5109 9 165 5G H z 1 / 10,000dieciséism W 1 / 10000
Nuestras computadoras actuales no están limitadas por la generación de calor asociada con la desaparición de bits. Están limitados por la ineficiencia inherente en el movimiento de electrones en pequeñas trazas de cobre.
fuente
El problema con las compuertas reversibles prácticas (compuertas que pueden (y han sido) fabricadas en silicio) es que los ahorros de energía reales son linealmente proporcionales a la lentitud con la que se ejecutan.
Sé que el grupo de investigación de Tom Knight en el MIT fabricó un pequeño procesador adiabático a fines de la década de 1990. La familia lógica práctica que desarrollaron se llama lógica de recuperación de carga de nivel dividido y puede implementarse utilizando técnicas de fabricación estándar (CMOS). Creo que el trabajo ha sido continuado por Michael P Frank en la Florida State University. Un ejemplo del trabajo en el grupo de Tom Knight es la siguiente tesis de maestría (que tiene una sección bastante decente sobre trabajos relacionados a principios de la década de 1990). Vieri, CJ: Pendulum: A Reversible Computer Architecture , Master's Thesis, MIT EECS dept, 1995.
Los circuitos reversibles deben ser adiabáticos (no puede haber intercambios de calor entre el circuito y su entorno), lo que significa que deben estar en equilibrio en todo momento. Para cualquier proceso que necesite cambiar algo, solo puede aproximarse al equilibrio haciendo que el cambio suceda lo más lentamente posible.
Si recuerdo correctamente mi termodinámica, puede hacer que la energía de un cálculo reversible sea arbitrariamente pequeña, pero la acción mínima (energía por tiempo) debe ser una constante pequeña.
fuente
El obstáculo más grande que impide su uso a gran escala es el mismo que para los circuitos asíncronos y prácticamente cualquier otro diseño de circuito no estándar: la ley de Moore.
La ley de Moore se ha convertido en una especie de profecía autocumplida; Como se ve en el Programa de lanzamiento de Tick Tock , los fabricantes de chips ven el cumplimiento de la ley de Moore como un desafío. Debido a la necesidad de cumplir con la ley de Moore, nos hemos vuelto más y más hábiles para disminuir el tamaño de los chips al avanzar la litografía (y a menudo usando trampas, como el multipatterning).
¿Qué tiene que ver todo esto con las puertas reversibles? A medida que las fundiciones compiten por lanzar transistores de tamaños más nuevos y más pequeños, las compañías que desean imprimir nuevos chips ven un camino fácil hacia el aumento de la velocidad simplemente agregando más caché y reelaborando sus diseños convencionales para usar mejor ese caché.
El asesino de lo mejor no son los problemas tecnológicos; Es el éxito de lo suficientemente bueno .
fuente
Los dispositivos informáticos útiles requieren retroalimentación, lo que hace posible que un elemento del circuito realice un número esencialmente ilimitado de cálculos secuenciales. Los circuitos de retroalimentación utilizables deben contener secciones cuya cantidad total de entradas (contando tanto las que se retroalimentan de las salidas como las que no) excede la cantidad de salidas que se retroalimentan a la entrada (la única forma en que la cantidad de entradas no t excedería el número de salidas realimentadas si los circuitos no respondieran de ninguna manera a los estímulos externos). Dado que las funciones lógicas perfectamente reversibles no pueden tener más entradas que salidas, no es posible construir a partir de ellas ninguna de las estructuras de retroalimentación necesarias para realizar tareas informáticas no triviales repetidamente. Tenga en cuenta que con la tecnología CMOS utilizada en las computadoras actuales, se requiere retroalimentación para garantizar que los resultados informados por los cálculos en diferentes partes de un circuito estén disponibles simultáneamente para otras partes, ya que si no fueran el tiempo relativo con el que llegarían las señales constituir "información" que no podría transmitirse perfectamente aguas abajo; otras tecnologías podrían permitir que muchas puertas propaguen señales exactamente a la misma velocidad mientras retienen la reversibilidad, pero no conozco ninguna tecnología práctica para eso.
Tenga en cuenta que desde una perspectiva CS, es trivial hacer que un proceso informático sea reversible si uno tiene un medio de almacenamiento inicialmente vacío cuyo tamaño es esencialmente proporcional al número de pasos multiplicado por la cantidad de estado que podría cambiar en cada paso. Este reclamo no contradice el reclamo del párrafo anterior, ya que el almacenamiento proporcional al número de pasos requerirá circuitería proporcional al número de pasos, lo que implicará circuitería proporcional a la cantidad que se requeriría si se eliminaran todos los comentarios.
Si a uno se le permite tener salidas que se ignoran si, dadas las condiciones de entrada adecuadas, nunca subirán, entonces podría ser posible diseñar un sistema que, en teoría, se beneficiaría de la lógica reversible. Por ejemplo, si uno tuviera un algoritmo que funcionara en un fragmento de RAM de 256 palabras y quisiera usar una "CPU de lógica reversible" que realizara 1,000,000 de operaciones por segundo y cada operación actualizara un registro, el contador del programa o uno palabra de RAM, uno podría usar una "CPU reversible" que:
La receta anterior podría repetirse cualquier número de veces para ejecutar el algoritmo durante un número arbitrario de pasos; solo el último paso de la receta no sería reversible. La cantidad de energía gastada por paso algorítmico en operaciones no reversibles sería inversamente proporcional al tamaño del LIFO y, por lo tanto, podría reducirse arbitrariamente si se construyera para construir un LIFO lo suficientemente grande.
Sin embargo, para que esa capacidad se traduzca en cualquier tipo de ahorro de energía, sería necesario contar con un LIFO que almacenara la energía cuando se ingresara la información y la devolvería útilmente cuando se leyera. Además, el LIFO tendría que ser lo suficientemente grande como para contener los datos del estado durante pasos suficientes para que el costo de energía de usarlo fuera menor que la cantidad de energía que ahorró útilmente. Dado que la cantidad de energía perdida en el almacenamiento y la recuperación de N bytes de cualquier FIFO práctico es poco probable que sea O (1), no está claro que el aumento de N reduzca significativamente el consumo de energía.
fuente
La informática reversible aplicada práctica es un área activa de investigación y es probable que se vuelva más prominente en el futuro. Se puede ver que la mayor parte de la computación cuántica intenta crear compuertas qubit reversibles y es muy difícil experimentalmente hacer coincidir las propiedades teóricas del formalismo QM, pero se está logrando un progreso constante.
Otro punto básico es que cada vez que se reduce la disipación de energía en un chip, esencialmente se está moviendo el sistema de compuerta a "más reversible", y la disipación de chip de baja energía ha sido una alta prioridad durante mucho tiempo en la informática móvil (que representa una especie de cambio de paradigma en toda la industria). Durante décadas, el rendimiento del chip (similar a la ley de Moore) se produjo estando algo "relajado" o incluso "descuidado" con la disipación de energía, pero eso alcanzó un punto de rendimientos decrecientes hace unos años. Intel, el principal fabricante mundial de chips, está tratando de convertirse en chips de menor potencia para competir con Arm, que tiene una ventaja después de nunca construir nada más.
Hay algunas investigaciones recientes posiblemente innovadoras que utilizan tecnología superconductora (junio de 2014), y hay otros proyectos de investigación activos en esta área.
Ver, por ejemplo , Puerta lógica reversible utilizando dispositivos superconductores adiabáticos / Takeuchi, Yamanashi, Yoshikawa, Nature:
fuente
Las puertas de Fredkin son realistas y muchas han sido implementadas. Hay placas FPGA completas que usan estrictamente puertas lógicas reversibles que se implementan usando las puertas Fredkin y Toffoli como LU.
Existen varios problemas que afectan su uso generalizado en la arquitectura de computadoras. Hay varias ventajas "anunciadas" para las puertas fredkin que no necesariamente funcionan como se espera en los circuitos reales. El ahorro de energía de las puertas lógicas reversibles se debe principalmente al hecho de que no requieren que se cree entropía cuando se realiza una operación. Como dijo Tom van der Zanden, esta es la razón principal por la que la lógica reversible puede ser mucho más eficiente. Por qué este no es el caso en circuitos reales:
Resumen: las puertas de Fredkin producen muchos cálculos de desperdicio al implementar algoritmos reales. cálculo de residuos = energía desperdiciada. Debido a esto, el tamaño del bus aumenta, lo que extiende las cosas y las ralentiza. Además, la implementación física de las puertas fredkin es la mayor preocupación para la tecnología actual. La implementación actual extiende más las cosas al requerir más potencia y líneas de tierra para compensar las pérdidas en el circuito (que es una preocupación mucho mayor por la pérdida de energía) y utiliza mucho más espacio en el silicio (que es una preocupación mucho mayor por la velocidad )
Me doy cuenta de que este es un hilo viejo, pero muchas de las respuestas se centran en el hecho de que los transistores son ineficientes. Mi objetivo es mostrar que nuestros algoritmos también son ineficientes y no manejan bien la informática reversible. Soy un ingeniero informático que disfruta investigando computación cuántica y reversible
fuente