Nuestras simulaciones de dinámica de plasma a menudo producen demasiada información. Durante las simulaciones registramos varias propiedades físicas en una cuadrícula (x, y, z, t) que es tan grande como (8192x1024x1024x1500), para al menos 10 propiedades. Esta información se procesa después de completar la simulación. Con ella
- hacer películas de propiedades,
- realizar un análisis de Fourier,
- calcular propiedades promedio
Este simple vertido de la mayor cantidad de información posible funcionó bien cuando estudiamos sistemas más pequeños. Esto nos dio la flexibilidad para interactuar con los resultados y decidir más adelante qué queríamos hacer con ellos. También nos permitió asignar nuestros recursos computacionales (tiempo de CPU) para simplemente ejecutar las simulaciones.
Hemos comenzado el proceso de hacer el análisis de Fourier sobre la marcha y filtrar solo para un rango selecto de escalas de longitud. Por razones numéricas, a veces necesitamos resolver escalas de longitud que son más pequeñas de lo que realmente nos interesa, por lo que en esos casos, este filtro es de gran ayuda. También estamos explorando varias bibliotecas IO paralelos, por ejemplo paralelo I / O opciones, en particular, HDF5 paralelo .
¿Qué estrategias están disponibles para maximizar la eficiencia del procesamiento de datos?
¿Hay algún beneficio en realizar todos los análisis (sin incluir el procesamiento posterior, por ejemplo, películas y tramas) sobre la marcha?
Me puedo imaginar este tema surgiendo en otras áreas de investigación. Por ejemplo, es posible que tenga una simulación de dinámica molecular que necesita evolucionar durante mucho tiempo, pero está interesado en el breve momento en que sucede algo interesante. O en CFD, el desarrollo inicial puede ser lento, pero una vez que se establece la turbulencia, es posible que necesite una resolución de tiempo más alta para monitorear la dinámica.
¿Hay ejemplos disponibles gratuitamente de sofisticada recopilación de resultados de simulaciones?