Precursores Analógicos & Digitales
Hamming abrió su historia del hardware con una distinción: computación analógica (regla de cálculo, analizador diferencial) versus computación digital (huesos de Napier, calculadoras de escritorio). Ambas líneas se desarrollaron en paralelo; la línea digital eventualmente dominó.
Napier (1550–1617)
John Napier inventó los logaritmos, que permitieron la regla de cálculo — un dispositivo analógico donde la longitud física representa el valor logarítmico. La adición de longitudes = multiplicación de números. Napier también diseñó 'huesos de Napier': varillas de marfil para asistencia en la multiplicación. Digital, para no confundir con la regla de cálculo.
De Schickert a Babbage
Wilhelm Schickert (1623) diseñó una máquina para las cuatro operaciones aritméticas; se quemó antes de su finalización. Pascal (1623–1662) construyó una máquina sumadora para la evaluación de impuestos. Leibniz agregó multiplicación & división pero las máquinas eran poco confiables.
Charles Babbage (1791–1871) diseñó el motor de diferencias: una máquina para evaluar polinomios en valores espaciados uniformemente mediante adición sucesiva, produciendo tablas imprimidas sin errores. Nunca la completó; un equipo padre-hijo noruego (Scheutz) construyó versiones funcionales. En 1992, un equipo en Inglaterra construyó el motor analítico de Babbage a partir de sus dibujos — funcionó.
El motor analítico de Babbage estuvo cerca de la arquitectura de von Neumann: un almacén (memoria), un molino (unidad aritmética), & ramificación condicional. Lady Lovelace publicó los primeros programas para él.
Computadoras de Relés a ENIAC
La era moderna de la informática comenzó con computadoras de relés a principios de los años 1940. Hamming trazó la evolución de la velocidad:
| Era | Tecnología | Velocidad | |---|---|---| | Pre-1940 | Calculadora manual | 1/20 ops/seg | | ~1940 | Relé (Bell Labs) | 1 op/seg | | 1946 | ENIAC (tubo al vacío) | ~5.000 ops/seg | | 1952 | IBM 701 | ~17.000 ops/seg | | ~1993 | Estación de trabajo moderna | 10⁹ ops/seg |
George Stibitz en Bell Telephone Laboratories construyó computadoras de relés a partir de partes de directores de cañones M9 condenados. Hamming usó uno durante años. Estas máquinas de relés no eran rápidas — aproximadamente una operación por segundo — pero eran confiables & programables.
ENIAC (1945–1946) funcionó al principio mediante cableado de tablero de clavijas, como una gigantesca computadora de tablero de clavijas. Nick Metropolis & Dick Clippenger posteriormente la convirtieron a programación con conmutadores decimales basándose en tablas balísticas. ENIAC consumía aproximadamente 150 kW.
La programación interna se hizo práctica solo cuando existió almacenamiento adecuado. El papel de von Neumann fue el de consultor para Mauchly & Eckert; la programación interna fue discutida entre el equipo antes de la participación de von Neumann, aunque sus reportes ampliamente circulados (pero nunca formalmente publicados) extendieron los conceptos.
Órdenes de Magnitud en Velocidad
La progresión de velocidad desde calculadora manual hasta estación de trabajo de los años 1990 abarca más de diez órdenes de magnitud en aproximadamente 50 años.
Dónde el Hardware No Puede Ir
Hamming presentó tres límites físicos que restringen qué tan rápido pueden ejecutarse en última instancia las computadoras. Estos no eran desafíos de ingeniería que la ingeniosidad superaría — eran leyes de la física.
Límite 1: Tamaño Molecular
Los componentes no pueden reducirse por debajo de dimensiones atómicas. Un transistor con puerta de 10 átomos de ancho: el efecto túnel cuántico domina & el transistor deja de conmutar de manera confiable. Para 1993, Hamming estimó que ir por debajo de ~100.000 átomos de distancia entre dispositivos interconectados (aproximadamente 3 picosegundos de tiempo de viaje de luz) representaba un límite físico real.
Límite 2: Velocidad de la Luz
Las señales se propagan como máximo a c = 3×10⁸ m/seg en el vacío (menos en cable, aproximadamente 2×10⁸ m/seg). Un ciclo de reloj de 1 GHz es 1 nanosegundo; en 1 ns, la luz viaja 30 cm. Un chip que debe enviar una señal a través de 15 cm & recibir una respuesta dentro de un ciclo de reloj está operando cerca del límite de la velocidad de la luz.
A medida que las velocidades de reloj aumentan, las dimensiones del chip deben reducirse para mantener el tiempo de viaje de ida y vuelta de la señal por debajo de un período de reloj.
Límite 3: Disipación de Calor
Más componentes por unidad de área + conmutación más rápida = más potencia por unidad de área = más calor. El calor debe disiparse o los componentes se funden. Para 1993, los voltajes de funcionamiento se reducían hacia 2-3V para reducir la potencia de conmutación. Las capas de diamante como conductores de calor estaban bajo investigación. La computación reversible (sin pérdidas termodinámicamente) existía solo en teoría.
Estos tres límites colectivamente explican por qué las ganancias de velocidad de procesador único se acercaban a la saturación para los años 1990 & por qué el interés en arquitecturas paralelas crecía.
Aplicando el Límite de Velocidad de la Luz
Una CPU ejecuta a 3 GHz. Un ciclo de reloj = 1/3 ns ≈ 0.333 ns. Velocidad de señal en cobre: ~2/3 c ≈ 2×10⁸ m/seg.
Los Expertos Que Estaban Espectacularmente Equivocados
Hamming señaló uno de los fallos de predicción más celebrados en la historia de la tecnología: expertos a finales de los años 1940 estimaron que el mundo necesitaría como máximo tres a cinco computadoras. Tom Watson de IBM supuestamente dijo dos.
Para 1993, había millones de computadoras en operación.
Por Qué Fallaron los Expertos
Los expertos extrapolaron de casos de uso actuales: cálculo científico en laboratorios nacionales. No anticiparon la idea de producto equivalente: las computadoras no harían lo que los humanos ya hacían, más rápido. Las computadoras permitirían categorías completamente nuevas de trabajo que no tenían existencia previa.
El patrón de fallo: los expertos en una tecnología madura son los más confiados sobre sus límites & los más probables de estar equivocados sobre sus aplicaciones futuras. Su experiencia les da modelos precisos del presente; no les da modelos de lo que se hará posible.
Arquitecturas Paralelas
La velocidad de procesador único se acercaba a la saturación para los años 1990. La respuesta de la industria: múltiples unidades aritméticas, canalizaciones, jerarquías de caché, & máquinas masivamente paralelas. Para 1993 no había una única arquitectura paralela dominante — muchos diseños competidores con diferentes compensaciones & modelos de programación diferentes. Hamming señaló esta fragmentación como un problema: sin un estándar, el esfuerzo de programación se divide entre sistemas incompatibles.
Por Qué los Expertos Predicen Mal
Hamming trató la predicción de 3-5 computadoras no como una curiosidad sino como una lección sobre los límites del conocimiento experto. Los expertos modelan el presente bien; fallan en aplicaciones que aún no existen.
Datos de Los Álamos & la Ecuación de Crecimiento
Hamming citó un gráfico compilado por el Laboratorio Nacional de Los Álamos (LANL) rastreando la velocidad de la computadora más rápida en el mercado en cada punto en el tiempo. Los datos se ajustaban a una ecuación exponencial: la velocidad aproximadamente se duplicaba cada 18 meses — posteriormente popularizada como Ley de Moore para recuento de transistores.
La ecuación LANL: velocidad(t) = velocidad₀ × 10^(bt), donde b ≈ 0.09 por año (duplicándose aproximadamente cada 3.3 años en operaciones por segundo, distinto de duplicación de recuento de transistores).
Hamming usó esto para hacer un punto sobre extrapolación: la exponencial no puede continuar indefinidamente. Los tres límites físicos establecen un límite. ¿Cuándo golpea la exponencial el límite? Esa transición marca el fin de la era de procesador único.
Para 1993 la industria ya se estaba acercando a ese límite, impulsando interés en arquitecturas paralelas, trucos de canalización, & jerarquías de caché — todos pasos pequeños hacia paralelismo en lugar de ejecución de un solo hilo más rápida.