Calcular el valor de la constante matemática pi (π) con la máxima precisión posible ha sido un desafío para los ordenadores desde su invención. En 1949 el ENIAC, un ordenador diseñado y construido por los ingenieros estadounidenses John Presper Eckert y John William Mauchly que ha pasado a la historia por ser uno de los primeros de propósito general, consiguió llevar a cabo este cálculo con una precisión de 2037 decimales. Invirtió en este proceso 70 horas, y con ello batió un récord histórico.
Desde ese momento se cuentan por decenas los ordenadores que paulatinamente han logrado batir este récord, que quedó fijado en 50 billones de decimales en 2020. La constante matemática pi interviene en muchos cálculos, por lo que es importante conocer su valor con precisión. Sin embargo, no parece necesario alcanzar el volumen de decimales que manejamos hoy en día.
El físico y matemático alemán Jörg Arndt, coautor del libro 'Pi Unleashed', que aborda desde una perspectiva académica los métodos computacionales a los que podemos recurrir para calcular el número pi con más precisión, defiende que bastan unos pocos cientos de decimales para llevar a cabo cualquier cálculo científico. De hecho, según este investigador 39 decimales son suficientes para resolver la mayor parte de los cálculos en astrofísica debido a que esta es la precisión necesaria para calcular la circunferencia del universo observable con una precisión de un átomo.
No existe una razón fundada que justifique el esfuerzo computacional que es necesario hacer para calcular el valor de la constante pi con una precisión de varias decenas de billones de decimales, pero se sigue haciendo por un único motivo: batir el récord. Los laboratorios de investigación y las empresas que se dedican a la tecnología suelen recibir con los brazos abiertos el reconocimiento que lleva implícita la obtención de este récord. Y la última institución que lo ha batido ha sido la Universidad de Ciencias Aplicadas de Grisones, en Suiza.
En la estación de trabajo que ha batido el récord mandan dos chips EPYC de AMD
La precisión con la que los investigadores de esta universidad helvética han calculado el número pi no tiene precedentes. Y es que han obtenido nada menos que 62,8 billones de decimales. Además, los autores de esta hazaña matemática aseguran que han conseguido hacerlo 3,5 veces más rápido que el equipo que consiguió batir este récord el año pasado arrojando un total de 50 billones de decimales.
Esta afirmación nos invita a echar un vistazo al hardware de la máquina que se ha responsabilizado de llevar a cabo el trabajo, aunque es evidente que el mérito recae también en el algoritmo que han utilizado. En cualquier caso, es muy interesante saber que la estación de trabajo que han utilizado estos investigadores incorpora dos procesadores EPYC 7542 de AMD. Cada uno de ellos tiene 32 núcleos y puede procesar simultáneamente 64 hilos de ejecución (threads). Son números atractivos, pero no son espectaculares porque el Ryzen Threadripper 3990X los supera.
En cualquier caso, no debemos olvidar que los procesadores EPYC han sido diseñados para ser utilizados en centros de datos e instalaciones de computación de alto rendimiento, por lo que su vocación es muy diferente a la que tienen los microprocesadores de AMD diseñados para equipos de escritorio.
Más datos interesantes acerca del hardware de esta máquina: tiene 1 TB de memoria principal, así como 38 discos duros mecánicos de 7200 rpm y 16 TB de capacidad cada uno de ellos que han sido utilizados como memoria intermedia en la que el algoritmo iba volcando el contenido de la memoria principal durante los cálculos, y también en los que ha almacenado el resultado final con sus 62,8 billones de decimales (esta última cifra ha ocupada nada menos que cuatro de estos discos mecánicos).
Un último apunte interesante: el sistema operativo utilizado por esta máquina es Linux, una distribución Ubuntu 20.04 que reside en dos unidades SSD cuya capacidad desconocemos. Y el software que han empleado estos investigadores para llevar a cabo los cálculos es y-Cruncher. Esta configuración no está nada mal, pero es muy meritorio que hayan conseguido batir el récord con una máquina sensiblemente más modesta que las empleadas en años anteriores para romperlo.
Imagen de portada | Andrea Piacquadio
Más información | Universidad de Ciencias Aplicadas de Grisones
Ver 22 comentarios
22 comentarios
whisper5
No entiendo el desprecio y la mofa de algunas personas hacia estos logros.
¿También se preguntarán para qué sirve subir al Everest o pisar la Luna?
No solo es un reto calcular pi con muchos decimales. Permite chequear el hardware y el software, analizar algoritmos de cálculo que puedan tener utilidad en otros ámbitos.
Calcular pi se ha utilizado habitualmente para chequear el rendimiento y buen funcionamiento de superordenadores (entre otros métodos). Además, una vez obtenido la primera vez, puedes hacer cambios en el hardware o el software y comprobar si se obtienen mejoras. También se ha utilizado para verificar que una biblioteca de código para cálculos matemáticos funciona correctamente: calcular pi requiere muchísimos cálculos y solo existe una respuesta correcta.
Personalmente, me parece más interesante el reto de encontrar algoritmos para calcular pi cada vez más rápidos que calcular más decimales (ambos cosas están relacionadas).
Como curiosidad, en esta página sobre la biblioteca "decimal" de Python, en la sección "Recipies", se presenta un algoritmo para calcular pi que tan solo tiene once líneas de código y es muy, muy rápido. En cualquier ordenador de los que utilizamos habitualmente (con Python instalado) se pueden calcular los primeros 100,000 decimales de pi en cuestión de segundos:
https://docs.python.org/3/library/decimal.html#recipes
punk84
Es lo que llevo esperando toda la vida.
Usuario desactivado
Y para qué vale esto?
chiefwiggum
Cuando habléis de billones deberíais indicar si son realmente "billones" (1.000.000.000.000) o si son "mil millones" (1.000.000.000) ya que en los países anglosajones (EE.UU., por ejemplo) no tienen el concepto de "mil millones" y usan el "billón". La diferencia es muy grande.
manolomalocalvo1
“La constante matemática pi interviene en muchos cálculos, por lo que es importante conocer su valor con precisión“
Cuando todos los ingenieros usan π=3 😂😂😂
soymicmic
"Esta afirmación nos invita a echar un vistazo al hardware de la máquina que se ha responsabilizado de llevar a cabo el trabajo, aunque es evidente que el mérito recae también en el algoritmo que han utilizado"
Realmente lo más interesante es el algoritmo, la máquina probablemente sea mejor el año que viene por lo que si repites el experimento notarás mejoría.
Lo disruptivo matemáticamente es el algoritmo y comprobar como implementarlo en un lenguaje de programación lo más eficientemente posible.
A muchos les parecerá una tontería inutil, pero no deja de ser una prueba de stress, de precisión y de optimización que se aplica a infintud de campos.
darckrie
Quien ha escrito esto?
"Sin embargo, no debemos olvidar que los procesadores EPYC utilizan la microarquitectura Infinity de AMD, que es muy diferente a la microarquitectura Zen en sus diferentes revisiones que emplean los chips Ryzen y Ryzen Threadripper de esta compañía. Los microprocesadores EPYC, en definitiva, han sido diseñados para ser utilizados en centros de datos e instalaciones de computación de alto rendimiento."
Entiendo que si se redactan artículos sobre la temática la persona que redacte debe tener un mínimo de comprensión sobre lo que habla.
Zen es la microarquitectura a nivel de cores y jerarquía de memorias cache L1, L2 y L3, su respectivas ALUS y como de distribuyen funciones de forma asíncrona para aprovechar lo maximo el procesamiento pero.
Infinity es por decirlo de una manera, el controlador de entrada y salida y quien se encarga de la asignación de tareas por grupos de CCX.
Resumen todos tienen arquitectura Zen para los cores, lo que cambia es el controlador de memorias como la Ram, asignación de tareas en CCX, corrección de errores ECC, chips de seguridad de paswords y demás.