La singularidad de SC está cerca - Calendae | Informática, Electrónica, CMS, Ciberseguridad

La singularidad de SC está cerca

Hola otra vez. En el teclado Simón Sánchez y esta vez te voy a hablar sobre La singularidad de SC está cerca

Con solo un fin de semana entre nosotros y la Conferencia de Supercomputación 2006 (SC06) en Florida, la mayoría de mis pensamientos ya están en Tampa. Una cosa que personalmente me intriga este año es la elección del orador principal de la conferencia, Ray Kurzweil. Aunque no es un fanático de las supercomputadoras en el sentido clásico, Kurzweil se ha hecho un nombre como un visionario de la tecnología de la información.

Su último libro, «The Singularity is Near: When Humans Transcend Biology», es un compendio de gran parte de su pensamiento durante las últimas dos décadas. En el libro, Kurzweil describe cómo, en un futuro no muy lejano, desarrollaremos una inteligencia informática que superará con creces la inteligencia humana. En ese punto, la inteligencia biológica y no biológica se fusionarán y la raza humana alcanzará lo que él llama «Singularidad». Kurzweil dice que en este punto el cambio tecnológico procederá tan rápidamente que representará «una ruptura en el tejido de la historia humana».

Varios futuristas han propuesto una visión similar, pero Kurzweil ha dado un giro interesante. Dado que ve la tasa de crecimiento tecnológico como una progresión puramente exponencial en lugar de una progresión lineal, el logro de la Singularidad ocurrirá dentro de este siglo. Él argumenta esto citando un fenómeno natural llamado «la ley de los retornos acelerados», en el cual un proceso evolutivo, como la innovación tecnológica, crea un ciclo de retroalimentación positiva para acelerar continuamente la tasa de cambio.

No está afirmando que tecnologías específicas estén en vías exponenciales. Por ejemplo, la Ley de Moore, que establece que la cantidad de transistores en un chip de silicio se duplicará cada 18 meses, eventualmente se agotará. Kurzweil predice que la Ley de Moore tendrá una muerte digna a más tardar en 2019, a medida que se impongan las limitaciones a la física de los semiconductores. Pero así como los tubos de vacío desaparecieron de las computadoras en la década de 1960, la tendencia más amplia de la evolución de las computadoras continuará más allá de los chips de silicio. El propio Kurzweil apuesta por la computación molecular tridimensional después de 2020.

No todo el mundo comparte la opinión de Kurzweil sobre el futuro. Kibitzers profesionales de la tecnología, como Kevin Kelley y John Horgan, han escrito críticas bien pensadas de las opiniones transhumanistas de Kurzweil. En una entrevista reciente de CSPAN (5 de noviembre), una persona que llamó del Laboratorio Nacional de Oak Ridge (ORNL) lo llamó y lo etiquetó como «loco». ORNLian dijo que la explicación de Kurzweil del crecimiento tecnológico exponencial era «falsa» y lo desafió en algunas afirmaciones específicas. Kurzweil, obviamente no ajeno a este tipo de ataques, defendió con calma sus puntos de vista y procedió a la siguiente llamada.

Kurzweil no es tonto. Es un reconocido

Barbara Horner-Miller, presidenta de SC06, dijo lo siguiente sobre Kurzweil: “El papel del orador principal es hacer que los participantes piensen e interactúen. Así que, idealmente, es alguien interesante, inspirador y un poco controvertido. Tan pronto como salió el nombre de Ray Kurzweil, me di cuenta de que teníamos nuestro propio altavoz … «

—–

Las cerraduras se han ido

Volvamos al presente. Antes de comenzar a construir motores de computación 3-D, primero necesitaremos comprender la programación de múltiples subprocesos. Hubo un artículo interesante en Technology Review la semana pasada llamado «El problema de las computadoras multinúcleo» que habla sobre algunos de los desafíos de la programación de subprocesos múltiples. los

Green escribe: “De hecho, permite que muchas transacciones compartan la misma memoria al mismo tiempo. Cuando se completa una transacción, el sistema verifica que otras transacciones no hayan realizado cambios en la memoria que puedan obstaculizar el resultado de la primera transacción. Si es así, la transacción se vuelve a ejecutar hasta que se realiza correctamente. »

Los modelos de memoria transaccional, como el del MIT mencionado en este artículo, generalmente se basan en una combinación de software y hardware para funcionar. Un modelo basado en software se denomina memoria transaccional de software (STM) y hasta que se desarrolle el soporte de hardware, STM es la única implementación práctica.

La memoria transaccional tiene muchos beneficios. Lo obvio es que el programador se libera de la carga de administrar regiones críticas seguras para subprocesos para mantener la coherencia de sus datos. Esto no solo simplifica el trabajo del programador, sino que también elimina la amenaza de interbloqueos, la pesadilla de la programación de subprocesos múltiples y la causa de muchas noches de insomnio para el ingeniero de software.

Y para aquellos obsesionados con el rendimiento, la memoria transaccional puede aumentar la competencia sobre los enfoques basados ​​en bloques, quizás sustancialmente. Esto se debe a que los subprocesos ya no tienen que esperar el acceso a la memoria compartida. Además, diferentes subprocesos pueden trabajar en diferentes partes de la misma estructura de datos que normalmente estaría controlada por un solo bloque. En este punto, puede estar pensando: ¿No acabamos de cambiar la sobrecarga de sincronización al sistema de memoria? Si y no. El enfoque de la memoria transaccional se basa en el hecho de que el conflicto de datos entre hilos es un evento poco común. La mayoría de las veces, solo un hilo lee o escribe un elemento de datos en particular. Entonces, en lugar de pagar el precio de la sincronización con cada inicio de sesión, un sistema transaccional solo necesita realizar un seguimiento de las solicitudes de memoria y resolver las cosas cuando ocurre una colisión.

Solo digo, pero en realidad la resolución de los accesos a la memoria resulta ser el problema fundamental de la memoria transaccional. Mantener el orden de los accesos a la memoria es difícil. Algunos modelos se relajan un poco con la clasificación de memoria, y mientras que a los diseñadores de hardware les gusta esto, los desarrolladores de software esperan un acceso determinista a la memoria.

Concluiré con un comentario de High-End Crusader, quien ofrece su punto de vista sobre el artículo de Technology Review:

«El breve artículo de Kate Green sobre Krste Asanovic del MIT hace un mejor trabajo al articular los problemas que enfrenta la computadora, al cambiar a un procesador de núcleo homogéneo (y heterogéneo) *, que el panel SC06 del próximo viernes en multinúcleo? Kate pide la reinvención de la programación paralela. Claramente tiene razón. Esta es la pregunta del polycore de $ 64,000.

“La programación es posible solo cuando las abstracciones de programación son de un orden de magnitud menos onerosas que las abstracciones de ejecución, que son manejadas por el sistema en tiempo de ejecución. Diseñar buenas abstracciones de programación requiere un buen olfato para lo que las abstracciones de ejecución son más peligrosas.

“Si lo piensa, las transacciones se abstraen de la sincronización. Obviamente, ¿los microarquitectos estarán obsesionados con si los núcleos tienen que realizar transacciones con memoria compartida en la matriz o memoria compartida fuera de la matriz o ambas? Esto es lo suyo.

“Pero la verdadera pregunta proviene del hecho de que la computación paralela es ahora, y siempre ha sido, difícil de vender. Quizás el reemplazo total de la sincronización de transacciones induzca a Joe Programmer a abordar la nave de la computación paralela. Lo necesitamos. Tenemos que ofrecerle una cerveza (o un whisky de malta) que baje sin problemas. El futuro de la tecnología de la información depende de esto «.

* En este contexto, «multinúcleo» significa 2X, 4X, … «polycore» significa 128X, 256X, …

—–

Como siempre, los comentarios de Calendae son bienvenidos y alentados. Escríbeme, Michael Feldman, un [email protected].

Deberías compartir en tus redes sociales para que tus colegas opinen

??? ? ? ???

Comparte