¿Cuántas tarjetas gráficas Titan X se necesitan para simular toda la Tierra en tiempo real a nivel molecular?

¡Esta es una pregunta divertida e interesante!

EDITAR: mi respuesta inicial fue incorrecta debido a que olvidé el número de Avogadro …

Mi respuesta se basará en una serie de aproximaciones y conjeturas salvajes. Mi primera suposición será: ¡no hay recursividad! Se supondrá que el grupo Titan X estará hecho de materiales tomados de otro planeta que no sea la Tierra y que se ubicará en este planeta. Lo siento si eso deja fuera parte de la diversión.

Vamos a empezar. Excepto si se indica lo contrario, los valores numéricos son de Wikipedia.

Primero, calculemos el número de átomos que componen la Tierra.

La masa total de la Tierra es [math] m \ simeq 6 \ times 10 ^ {24} \ mathrm {kg} [/ math].
Bien, ahora, para pasar de una masa a varios átomos, necesitamos una masa molar. ¿Cómo estimas la masa molar de la Tierra?

De wikipedia:

Se compone principalmente de hierro (32.1%), oxígeno (30.1%), silicio (15.1%), magnesio (13.9%), azufre (2.9%), níquel (1.8%), calcio (1.5%) y aluminio ( 1,4%)

Hacemos un promedio ponderado simple:

M (Fe) = 56 g / mol; M (O) = 16 g / mol; M (Si) = 28 g / mol; M (Mg) = 24 g / mol; M (S) = 32 g / mol; M (Ni) = 59 g / mol; M (Ca) = 40 g / mol; M (Al) = 27 g / mol.

Dejamos de lado el 1.4% restante. La masa molar promedio de la Tierra es así:

[Matemáticas] M = 0.321M (Fe) + 0.301M (O) + 0.151M (Si) + 0.139M (Mg) + 0.029M (S) + 0.018M (Ni) + 0.015M (Ca) + 0.014M ( Al) \ simeq 33 \ mathrm {g / mol} [/ math].

La masa molar promedio de la Tierra es de alrededor de 33 g / mol y la masa total es [matemática] 6 \ veces 10 ^ {24} \ matemática {kg} [/ matemática]. Esto da aproximadamente [matemáticas] 1.8 \ veces 10 ^ {26} [/ matemáticas] moles de átomos en la Tierra. Uno termina con [matemáticas] 10 ^ {50} [/ matemáticas] átomos. Esto es ENORME.

Para darle un ejemplo, las simulaciones de dinámica molecular de todos los átomos de vanguardia alcanzan minuciosamente 1 millón ([matemáticas] 10 ^ 6 [/ matemáticas]) átomos.

En segundo lugar, la simulación adecuada .

Aquí surgen muchos problemas. Voy a dejar a un lado algunos de ellos. Asumiremos que tenemos un modelo rápido y preciso de las interacciones interatómicas, que se escala como [math] O (NlnN) [/ math] para las partículas [math] N [/ math] – digamos algún tipo de PME sobrecargado.

@Ewald resumen

El algoritmo es así, para cada paso de tiempo:

  1. Tomo la configuración actual del sistema (es decir, todos los átomos de la Tierra)
  2. Calculo las interacciones interatómicas usando el modelo mencionado
  3. Actualizo las posiciones atómicas usando las fuerzas calculadas en el paso 2)

Esto es básicamente dinámica molecular . También voy a suponer que uno usa 2 pasos de tiempo de femtosegundos, es decir, 2 femtosegundos separan dos configuraciones sucesivas generadas por la simulación. Este es el valor habitual para las simulaciones de biomoléculas. No significa que un paso del algoritmo requiera 2 fs para ejecutarse . Me refiero al “tiempo interno de simulación”, no al tiempo físico real que sienten las personas que ejecutan la simulación.

Otro problema: ¿cuál es el tamaño del disco duro que necesito para almacenar UNA configuración del sistema?

Hagamos la misma suposición que para el grupo de GPU: el disco duro está construido con materiales no terrenales y se encuentra en el mismo planeta que el grupo. Supongamos también que 1 bit es suficiente para describir el estado de cada átomo (esta es una subestimación salvaje, pero de todos modos). Entonces, necesito un disco duro capaz de almacenar [matemáticas] 10 ^ {50} [/ matemáticas] bits. Mhm Tengo un ~ 200 g, 1 para disco duro en mi escritorio.

[matemáticas] 10 ^ {50} [/ matemáticas] bits es [matemática] 1.25 \ veces 10 ^ {37} \ matemática {Para} [/ matemática]. Esto proporciona un disco duro de aproximadamente [matemáticas] 2.5 \ veces 10 ^ {36} [/ matemáticas] kg. Ay.
Ya ves por qué insistí en que nuestro grupo se ubicara en otro planeta. En realidad, es como un millón de veces la masa del Sol, por lo que deberías encontrar un buen rincón en la Vía Láctea para configurar tu supercomputadora.

Luego viene la parte realmente complicada, estimando la cantidad de Titan X necesaria para ejecutar la simulación en tiempo real.

@http: //www.pcworld.com/article/2…

Este artículo ofrece una potencia de cálculo de 7 Tera-flops para una sola GPU Titan X.

Usando aproximaciones muy sucias, digamos que una iteración del algoritmo MD toma operaciones de coma flotante [matemáticas] NlnN [/ matemáticas] (debido a la escala de nuestro modelo hipotético para calcular las fuerzas). [math] N [/ math] es el número de átomos, dando aproximadamente [math] 10 ^ {52} [/ math] operaciones requeridas para un solo paso de tiempo. Esto es probablemente subestimado. Significa que lleva [matemática] 10 ^ {52} / 7 \ veces 10 ^ {12} [/ matemática] segundos, por lo que aproximadamente [matemática] 10 ^ {39} [/ matemática] segundos, para que un solo Titan X funcione solo un paso de tiempo de la simulación (que representa, recuerde, 2 fs). Esto es aproximadamente [matemáticas] 4 \ veces 10 ^ {21} [/ matemáticas] veces la edad del Universo.

Bien, a pesar de ser una GPU bastante impresionante, el Titan X es un poco lento cuando se trata de nuestro problema. Por supuesto, las cosas mejorarán una vez que agreguemos muchas GPU para obtener un clúster.

Asumiré una escala perfecta del clúster: se supone que el rendimiento mejorará linealmente a medida que se agreguen más GPU. Esto ni siquiera es remotamente cierto en la vida real, sino lo que sea.

Por lo tanto, queremos que la simulación se realice en tiempo real, es decir, queremos un paso de 2 fs de “tiempo de simulación interno” para tomar 2 fs reales en tiempo real. Probablemente hay un montón de límites teóricos que te dicen por qué esto es totalmente imposible, pero procedamos.

¿Cuántos Titan X se necesitan para lograr este objetivo?

Bueno, un Titán X realiza un paso de tiempo en [matemáticas] 10 ^ {39} [/ matemáticas] segundos. Queremos hacerlo en [matemáticas] 2 \ veces 10 ^ {- 15} [/ matemáticas] segundos. El factor de aceleración requerido es, por lo tanto, [matemática] 0.5 \ veces10 ^ {54} [/ matemática], que es el número requerido de GPU que suponen una escala lineal.

Mi respuesta es, por lo tanto, [matemáticas] 5 \ veces 10 ^ {53} [/ matemáticas] Titan X como mínimo.

Ahora tengo un 760 GTX en mi computadora. No es tan brillante como un Titan X, pero diría que deben ser más o menos similares en tamaño y peso. Mi GPU pesa alrededor de 500 g, digamos. Lo que significa que necesita [matemática] 2.5 \ veces 10 ^ {53} \ mathrm {kg} [/ math] de materiales para construir el clúster (sin tener en cuenta el problema de almacenamiento, que ya mencioné).

Esta es la masa de aproximadamente 250 mil millones de Vías Lácteas. O diez veces la masa estimada del Universo observable.

Entonces, si estamos atrapados en una simulación realizada por un niño alienígena trascendental que juega el equivalente alienígena trascendental de Civilization V, este niño debe tener un presupuesto de juego bastante alto.

Una pregunta divertida! Comencemos con lo que se necesita para almacenar ese problema en la memoria.

Una estimación al final de la envolvente de cuántos átomos hay en toda la tierra. es 1.33 por 10 a la potencia 50. (ver ¿Cuántos átomos hay en el mundo?). El almacenamiento mínimo absoluto necesario es la posición (3D), la velocidad (3D) y el tipo de isótopo para cada átomo (que proporciona la masa y las propiedades químicas). Con el almacenamiento de doble precisión (8 bytes) de cada una de las dimensiones de posición y velocidad, y digamos 2 bytes para almacenar el tipo de isótopo, cada átomo requiere 3 * 8 + 3 * 8 + 2 = 50 bytes de almacenamiento. Entonces, la memoria requerida para toda la tierra es 6.65 por 10 a los 51 bytes de potencia.

La tarjeta gráfica Titan X estándar tiene 12 gigabytes de memoria. Eso es 12,9 mil millones de bytes. Por lo tanto, necesita alrededor de 5,16 veces 10 a las 41 tarjetas gráficas, una orden de compra que seguramente hará que Nvidia esté muy feliz. Pero creo que debemos suponer que todas estas tarjetas gráficas se encuentran en un universo alternativo y no en el Planeta Tierra, ya que aumentarían la masa de la Tierra en un factor enorme y además tendrían que simular su propia operación como parte del trabajo (que aborda algunas preguntas matemáticas interesantes que Alan Turing exploró una vez, pero no entremos en eso aquí). Es posible que necesite la masa de algunas galaxias solo para construir esa cantidad de cartas Titan X.

Eso se encarga de la parte “a nivel molecular” de su solicitud. Pero dijiste “en tiempo real”, y ese es el asesino. No especificó ningún tipo de precisión, por lo que hay un método altamente inexacto que, por ejemplo, toma la posición de cada átomo cada hora más o menos y usa interacciones locales simplistas solo para adivinar dónde estará y qué tan rápido irá en un paso de tiempo tan crudo. Todavía tiene aproximadamente 15 órdenes de magnitud para poder tener en cuenta la estructura electrónica real y la interacción química de cada átomo, y si lo hiciera, descubriría que el sistema es caótico y se desvía rápidamente del verdadero comportamiento. . Muchos científicos computacionales cometen el mismo error de no especificar ningún tipo de requisito de precisión en sus simulaciones, y si no le importa si una respuesta es correcta o no, es posible realizar cálculos muy rápidamente, si capta mi deriva.

Consideremos que la tierra está llena de agua y nada más.
1 g de agua contiene NA * (0.001 / 18) = 3.35 * 10 ^ 19 moléculas
NA – Número de Avogadro

El peso de la tierra es 5.972E + 027 gramos …

Es posible calcular los detalles de una molécula en una imagen de 400x400px. (En otras palabras, podemos tomar una fotografía de la molécula con una resolución de 400x400px)

Significa que tenemos que simular 3.35E + 19 * 5.972E + 027 * 400 × 400 px para calcular la imagen real.
= 2.00062e + 47 * 400 * 400
= 3.200992e + imagen de 52 px
La resolución máxima de Titen X es 5120 × 3200 = 16384000px

Y para este propósito necesitamos 3.200992e + 52/16384000 = 1.9537305e + 45 Nos. De TitanX muestran todos los detalles de la tierra asumida en la pantalla al mismo tiempo.
Ahora este cálculo depende de la suposición, puede considerar la condición real.