¿Horas.core u horas.GFLOPS? Un estudio de la asignación de tiempo de cálculo de IPAC

En Enero de 2017 se otorgaron los proyectos Iniciativa de Proyectos Acelerados de Cálculo (IPAC) en dos tipos, los Proyectos de Avances Decisivos con Supercómputo (PADS) de un millón de horas.core y los Proyectos de Cálculo (PDC) de entre trescientas y quinientas mil horas.core.

Abajo incluimos todos los proyectos otorgados, la cantidad de horas asignadas y el supercomputador donde correrán.

#proyecto

Horas.core

Cluster

29

1000000

TUPAC

38

1000000

TUPAC

19

1000000

TUPAC

20

500000

Mendieta

8

420000

Pirayú

12

449000

ISAAC

25

500000

INQUIMAE-FCEN-UBA

1

500000

Odin

35

350000

Piluso

16

332000

Fierro

Hay una pregunta muy sencilla que intentaremos contestar. ¿Es lo mismo la hora/core en TUPAC, Mendieta, Pirayú o cualquiera de los clusters asociados al SNCAD?

Para contestar esto utilizaremos solo una parte de un modelo muy básico que es el roofline model propuesto por Williams, Waterman y Patterson en 2009: miraremos la performance pico teórica de cada núcleo puesto en juego. A manera de ejemplo TUPAC está constituido por pastillas AMD Opteron 6276 que dan 147.2 GFLOPS de potencia pico de cálculo para números de doble precisión, mientras que Mendieta, eroga 224 GFLOPS en cada una de sus pastillas Intel Xeon E5-2680v2.

La siguiente tabla muestra el detalle de cada uno de los procesadores y la potencia de cálculo por core de cada uno.

Cluster

Pastilla

Año

GFLOPS

Cores

GFLOPS/core

SpeedUp/TUPAC

TUPAC

Opteron 6276

Q4'11

147.2

16

9.2

1.00

Mendieta

Xeon E5-2680v2

Q3'13

224

10

22.4

2.43

Pirayú

Xeon E5-2650v3

Q3'14

320

10

32

3.48

ISAAC

Xeon E5420

Q4'07

40

4

10

1.09

INQUIMAE?

CCAR-Odin

Opteron 6320

Q4'12

179.2

16

11.2

1.22

Piluso

Opteron 6282SE

Q4'11

166.4

16

10.4

1.13

Fierro

Xeon E5-2670v2

Q3'13

200

10

20

2.17

De esta tabla se deduce que bajo este modelo simplificado un proyecto de 500.000 horas.core de Mendieta equivale a 1.215.000 horas en TUPAC y que un proyecto de 420.000 horas.core en Pirayú equivale a 1.461.600 horas.core de TUPAC. Luego los dos proyectos chicos de PDC corriendo en Mendieta y en Pirayú equivalen en cantidad de trabajo a casi los tres proyectos grandes en TUPAC.

La pregunta es básica ¿porque hay tanta distorsión? Hay varias respuestas posibles.

La primera es que la performance secuencial pura por core está creciendo lenta pero progresivamente. En el caso de Intel, a un ritmo de entre 5% y 15% de mejora por generación que sale cada año.

Segunda, cada núcleo incorpora paralelismo a nivel de datos (SIMD) cada vez más ancho e instrucciones especiales como FMAD que realizan dos operaciones de punto flotante en cada ciclo de reloj.

Finalmente, y la que creemos más de peso, los procesadores Opteron que parecen ser poco eficientes. En realidad están mal contados los núcleos. Todos los procesadores de la lista tienen arquitectura Bulldozer, la cual incorpora 16 núcleos, pero 8 unidades de punto flotante en su esquema FlexFP, es decir que para cálculos numéricamente intensivos, cada pastilla Bulldozer hay que contarla como de 8 unidades.

Si cambiamos la tabla y ponermos los núcleos reales de Opteron obtenemos lo siguiente:

Cluster

Pastilla

Año

GFLOPS

Cores

GFLOPS/core

SpeedUp/TUPAC

TUPAC

Opteron 6276

Q4'11

147.2

8

18.4

1.00

Mendieta2

Xeon E5-2680v2

Q3'13

224

10

22.4

1.22

Pirayú

Xeon E5-2650v3

Q3'14

320

10

32

1.74

ISAAC

Xeon E5420

Q4'07

40

4

10

0.54

INQUIMAE?

CCAR-Odin

Opteron 6320

Q4'12

179.2

8

22.4

1.22

Piluso

Opteron 6282SE

Q4'11

166.4

8

20.8

1.13

Fierro

Xeon E5-2670v2

Q3'13

200

10

20

1.09

La tabla corregida muestra diferencias entre la performance por núcleo, mucho menos pronunciada que la tabla anterior. De todas formas Pirayú es casi el doble de rápida por core que TUPAC, mostrando los casi tres años de evolución en la mejora de performance ILP (instruction level parallelism) y DLP (data level parallelism o SIMD).

Este modelo está por demás simplificado y se podría argumentar que resulta poco ajustado a workloads que son eminentemente dominadas por el ancho de banda de memoria y por lo que se debería hacer un análisis similar pero para esta otra parte del roofline model.

Lo importante es puntualizar que aunque la iniciativa IPAC es muy importante para que todos los clusters de Argentina integrados al SNCAD se utilicen para proyectos grandes que cambien la forma de hacer ciencia para los grupos en cuestión, también es importante tener en cuenta los aspectos técnicos del supercomputador y definir el uso respecto a estos parámetros.

Dr. Nicolás Wolovick
Miembro del CCAD-UNC
Líder del Grupo de GPGPU Computing

PME 2015 otorgó $37 millones para equipamiento de HPC

De acuerdo a las ultimas novedades en materia de financiamiento, Argentina podría finalmente dejar se der el único país del G20 que no posee una supercomputadora clasificada en la lista TOP500. Mediante la Resolución 641-16 correspondiente a la adjudicación de Proyectos de Modernización de Equipamientos presentados en 2015 se otorgaron beneficios a la computación de alto desempeño (HPC) por un total de $ 37.202.000. Este monto corresponde a los proyectos 2015-036 presentado por el Dr. Mario Storti del CIMEC con un importe adjudicado de $ 16.910.000 y 2015-129 presentado por la Dra. Ana Maria Llois de la CNEA con un importe adjudicado de $ 20.292.000. Teniendo en cuenta los últimos valores de mercado y la cotización de la divisa norteamericana, en la actualidad se podría comprar con este dinero el equivalente a 682 TFLOPS de potencia de cálculo efectiva. Si consideramos que el cluster mas importante del país no llega a 50 TFLOPS de potencia teórica podemos apreciar la magnitud de la noticia. Sin embargo, si consideramos el retraso relativo en la materia con respecto a países similares podemos afirmar que se trata solamente de un pequeño paso en la dirección correcta que alcanzará a cubrir una porción de las necesidades actuales.

¡Felicitaciones a los colegas del CIMEC y de la CNEA por este logro!

Entrevista a Carlos Ruestes, super-usuario de Mendieta

En Enero de este año el SNCAD comunicó los proyectos aprobados en la convocatoria IPAC donde el CCAD-UNC se comprometió a entregar 500000 horas/core para un Proyecto de Cálculo (PAD). El proyecto asignado fue el presentado por el Dr. Carlos Ruestes de UNCuyo-CONICET. Vamos a conocer su experiencia dentro del CCAD-UNC hasta el momento.

Hola Carlos. Contanos donde trabajás, que hace tu grupo.
Actualmente soy investigador asistente de CONICET y trabajo en la Facultad de Ciencias Exactas y Naturales de la Universidad Nacional de Cuyo, recientemente designada como unidad ejecutora de doble dependencia CONICET-UNCUYO. En el grupo realizamos estudios relacionados a ciencia de materiales, principalmente propiedades mecánicas de metales nanocristalinos, también estudiamos grafeno y otros materiales no metálicos.

¿Qué herramientas computacionales usa? ¿Porqué necesitan del HPC?
La herramienta que usamos es LAMMPS, acrónimo para Large-scale Atomic/Molecular Massively Parallel Simulator. Para una adecuada comparación entre estudios experimentales y resultados computacionales es preciso achicar las brechas de escala dimensional y temporal que existen entre experimentos y simulaciones atomísticas. Así resulta fundamental trabajar con sistemas simulados con una cantidad de átomos del orden de 10⁷ y aplicando solicitaciones dinámicas en tiempos realistas. El problema de la escala dimensional puede ser atacado mediante paralelización, empleando múltiples procesadores simultáneamente, cada uno de ellos resolviendo un subdominio de la muestra original. La cuestión de la escala temporal es más problemática, pero computacionalmente hablando digamos que está linealmente relacionada con la velocidad de los procesadores. Es evidente que la computación en paralelo y de alta performance es el recurso indispensable para tratar con este tipo de problemas.

Cuando aparecieron los IPAC ustedes pidieron un proyecto de 500000 horas/core. Contame de que se trata el proyecto, que software van a utilizar y como estimaron el tiempo de cálculo.
El proyecto trata sobre el estudio de los mecanismos de deformación en metales cuando son sujetos a procesos de mecanizado nano-escala.
Los procesos de rayado y corte nanométrico son dos técnicas prometedoras y que han atraído gran interés de la comunidad científica internacional por su potencial impacto para la fabricación de estructuras y dispositivos a nano-escala. Estas técnicas son las que han permitido, entre otras cosas, fabricar transistores de tipo IPG (in-plane-gate) y SET (single-electron transistors) mediante el nanomecanizado de hetero-estructuras de arseniuro de galio / arseniuro de galio-aluminio (GaAs/AlGaAs) utilizando un microscopio de fuerza atómica. El concepto de la tecnología de rayado y corte nanométrico tiene consecuencias de largo alcance, ya que permitiría mejorar sensiblemente procesos productivos asociados a la fabricación de dispositivos micro y nanoelectromecánicos, entre otras aplicaciones.
La técnica de estudio es dinámica molecular y el software es LAMMPS, cuyo rendimiento en HPC es muy bueno y el tiempo de cálculo lo estimamos por experiencia previa con Mendieta y con un clúster estadounidense de similares características.

El SNCAD les asignó a CCAD-UNC como unidad para ejecución de tu proyecto. Contame como fue el proceso de pedido de cuenta y de establecimiento del entorno de trabajo.
El proceso fue sencillo y completé una solicitud de cuenta en el sitio del CCAD-UNC. El establecimiento del entorno de trabajo fue una cuestión de minutos y los inconvenientes que surgieron (mínimos y esperables) fueron de muy rápida solución gracias al soporte de Antonio Russo.

Veo que al día de hoy tenés 7326 horas/core utilizadas en Mendieta. Me gustaría que nos des tu impresión de como ha sido hasta ahora el trabajo en Mendieta y que esperas para futuro ya que queda un largo camino para completar esa cantidad de horas.
Aún no he podido hacer mucho uso del equipo, por cuestiones ajenas al CCAD. El tiempo de la solicitud me permitió incrementar notablemente el tamaño de la simulación que puedo realizar y eso trajo aparejado algunos inconvenientes. De hecho casi el total de las horas utilizadas hasta ahora fue destinada a pruebas para la modificación de la estrategia en una etapa particular de la simulación. Recién logramos superar el inconveniente durante la primera semana de Marzo, así que esperamos hacer un uso más intensivo del equipo en las próximas semanas.
El equipo funciona muy bien, y la tasa de transferencia de datos en tarde/noche es buena.

¿Como ves los proyectos IPAC y la situación del HPC en la Argentina?
Los proyectos IPAC me parecen una iniciativa importante, por la forma en la que el llamado fue planteado, favoreciendo proyectos que aborden un problema científico y/o tecnológico desafiante, dando prioridad a los proyectos que planteen problemas de transferencia de tecnología o con posibles aplicaciones.

En cuanto a la situación del HPC en Argentina, es poco lo que puedo agregar luego de los diagnósticos realizados para la propuesta CFAS. Lo que puedo decir es que es claro que no existen países que tengan un desarrollo tecnológico razonable sin recursos HPC de envergadura. Si esto no se asume, será otro "tren tecnológico" perdido para la Argentina.

Muchas gracias por tu tiempo.
¡Gracias a ustedes!

La iniciativa CFAS hace sus primeros pasos en cooperación internacional

El lunes 6 de marzo de 2017 se puso en práctica el acuerdo firmado en 2015 entre el CCAD-UNC y EDF(*), la empresa nacional de energía eléctrica de Francia.
Gracias a dicho acuerdo y al financiamiento otorgado por el Ministerio de Modernización de la Nación a través del programa Bec.Ar los investigadores del CIMEC Mario Storti y Luciano Garelli están realizando una estadía en los laboratorios de Investigación y Desarrollo que la empresa gala posee en la Isla de Chatou, ubicada en el suburbio oeste de París.
La estadía tendrá una duración de 3 meses y se desarrollará en 2 etapas.

La primera etapa de un mes de duración tiene como objetivo desarrollar las habilidades de los investigadores en el uso avanzado de Code Saturne, un programa de propósito general para la resolución de problemas de Dinámica de Fluidos Computacional (CFD) desarrollado por el departamento de investigación de EDF desde 1997, y disponible bajo licencia GPL (Open Source) a partir de marzo de 2007.

La segunda etapa de dos meses de duración prevé una capacitación intensiva para comprender la arquitectura del software y alcanzar un grado de aprendizaje del código a nivel de desarrollador. Se podrán incorporar de este modo nuevas funcionalidades y adaptar el software a los problemas planteados por los industriales de nuestro país.

Además, esta estadía es el fruto de gestiones internacionales para coordinar los objetivos y las prioridades de las instituciones que participan, y la misma constituye un gran primer paso para afianzar los vínculos estratégicos entre el sistema público de investigación de Argentina y un industrial europeo de primera linea.
Es también un primer paso en la construcción del Centro Federal Argentino de Supercomputo (CFAS) que se viene promoviendo cada vez con mas fuerza desde el interior del país.

Aprovechamos la ocasión para agradecerle a nuestro colega Antonio Russo por la labor desarrollada, como así también a los doctores Martin Ferrand e Yvan Fournier de EDF que posibilitaron este intercambio. Les deseamos también una excelente estadía en la ciudad luz a Mario y a Luciano, dignos embajadores del sistema científico nacional.
 
(*) Electricité de France (EDF) es el mayor productor europeo de electricidad. En la actualidad, el grupo compite en los principales mercados internacionales presentándose como una empresa integrada activa en todos los segmentos del negocio como la generación, la transmisión, la distribución y la comercialización de energías. El Grupo EDF cuenta con más de 158.000 empleados y una facturación anual de 75.594 millones de euros. En términos de infraestructura, transporte y distribución de energía, EDF y sus filiales operan 1.285.000 km de líneas aéreas y subterráneas de baja y media tensión y alrededor de 100.000 km de redes de alta y muy alta tensión. EDF posee más de 38.000.000 de clientes en todo el mundo de los cuales 28.000.000 se encuentran en Francia.
EDF cuenta con su propio departamento de Investigación y Desarrollo que en la actualidad emplea 2125 investigadores a tiempo completo y aproximadamente 500 becarios. Posee ademas varias supercomputadoras de tipo "Beowulf" clasificadas en la lista TOP500 [1, 2], capaces de representar numéricamente con gran precisión, fenómenos y sistemas que constituyen las actividades principales de la empresa.

El nodo #23

Mendieta tiene un nuevo nodo. En realidad es un fatnode, ya que incorpora el cúadruple de memoria que el resto de los nodos. El nodo #23 además tiene procesadores casi idénticos a los 8 nodos originales de Mendieta, por lo que la integración al cluster resulta directa.

Los datos duros del nodo #23: servidor Dell R720, 2 pastillas Xeon E5-2670 (8 + 8 núcleos), 256 GiB de RAM, Infiniband QDR, 332.8 GFLOPS de potencia de cálculo pico.

Este nodo es parte de una donación que Arris realizó a FaMAF-UNC, a través de los oficios del Lic. Edgardo Hames y del Ing. Federico Aguirre, ex-integrantes de esa firma que en febrero del 2016 cerró sus oficinas en Córdoba.
FaMAF prestó al CCAD-UNC este servidor que tiene excelentes prestaciones de cálculo y que ya se encuentra produciendo en Mendieta.

Mejora de desempeño de OpenMPI, contribución del CCAD-UNC

Peter Cushing, Top Secret, Lens EyeEl licenciado Carlos Bederián, quién ademas de ser docente de la FAMAF y profesional principal del CONICET es uno de los integrantes históricos del CCAD-UNC, introdujo una mejora de desempeño en una de las implementaciones más usadas a nivel mundial de Message Passing Interface (MPI). Dicha mejora tendrá un impacto considerable en el rendimiento de todas las aplicaciones que utilizan la biblioteca OpenMPI, reduciendo de este modo los tiempos de cálculo y de consumo eléctrico de la mayoría de clusters HPC del planeta, incluyendo los equipos publicados en la lista TOP500.

Durante el Periodo de uso exclusivo de Mendieta verano 2017 se ejecutaron diversos programas de manera intensiva en grandes porciones de nuestro cluster. Una de las tareas de nuestros técnicos es el monitoreo regular de la ejecución de las aplicaciones a fin de maximizar el uso de la infraestructura computacional.

Durante la ejecución de Quantum ESPRESSO, el Lic. Bederián usando perf, notó que una parte importante del tiempo de ejecución se la llevaba la función opal_progress que está relacionada con los llamados a la función MPI_Wtime, dentro de la implementación OpenMPI. Como no debería haber sobrecarga alguna en una función que solo mide el tiempo, Carlos empezó a investigar por qué tomaba tanto tiempo en arquitecturas modernas como la que usamos en Mendieta (Ivy Bridge).

Su aporte fue explorar todo el stack trace y dar con el responsable de esta demora innecesaria. La modificación fué reemplazar una instrucción en assembler dentro de opal_sys_timer_get_cycles, además de cambiar la lógica para evitar en lo posible usar la operación de división de enteros que resulta cara.

La discusión del pull-request se puede ver en Improve x86-64 timer performance #2926 que finalmente fué aceptado ayer en el head por Nathan Hjelm y formará parte de openmpi-2.0.3.

En tests preliminares se logró una mejora decente en los tiempos de ejecución de QUANTUM Espresso y de NPB.

Para tener una idea de lo que significa este aporte, basta con revisar la licencia de la biblioteca y ver las organizaciones que contribuyen o han contribuido en el código. Se trata de Centros de HPC reconocidos internacionalmente o empresas multinacionales con recursos económicos y/o materiales que son órdenes de magnitud más grandes que los nuestros.

Es importante también señalar que el trabajo del CCAD-UNC respeta los standards de calidad de los grandes centros de cálculo de los países desarrollados a pesar del déficit en equipamiento que caracteriza nuestro país desde el surgimiento de la computación de alto desempeño hasta la fecha.

Escuela de Computación de Alto Rendimiento (ECAR2017)

>>ATENCIÓN: fue replanificada del 18 al 29 de septiembre.<


Entre el 6 y el 17 de marzo de 2017 se realizará en CABA (Pabellón 1, Ciudad Universitaria, UBA) la ECAR2017: Escuela de Computación de Alto Desempeño.
La ECAR2017 está organizada en tres tracks simultáneos orientados a

  • programadores,
  • usuarios y
  • administradores.

Los cursos serán dictados por expertos nacionales e internacionales en las temáticas relacionadas con la Computación de Alto Desempeño.

Techniques and methodology for parallel programming
Módulo 1: HPC Technology and GPU Technology (Markus Rampp & Klaus Reuter, Max Planck Computing and Data Facility, Germany) – in English
Módulo 2: Distributed memory programming using MPI (Sergio Nesmachnow, UdelaR, Uruguay) – in Spanish
Módulo 3: Programming with shared memory using OpenMP y CILK (A. Soba y E. Mocskos, CSC, Argentina) – in Spanish
Módule 4: Programming with parallel objects (Esteban Meneses, National High Technology Center, Costa Rica) – in Spanish

HPC Applications
Módulo 1: Instability analysis using eigenvalues in large scale dynamical systems (Leo González, UPM, Spain) – in Spanish
Módule 2: Visualization (Klaus Reuter & Markus Rampp, Max Planck Computing and Data Facility, Germany) – in English
Módulo 3: Salome Suite (Mario Storti, CIMEC, Argentina) – in Spanish –
Módulo 4: Introduction to computational mechanics in multiphysics problems from Engineering (Mariano Vázquez, BSC, Spain) – in Spanish

HPC Operations
Módulo 1: SLURM (Gilberto Diaz, Universidad Industrial de Santander, Colombia) – in Spanish –
Módulo 2: Parallel Filesystems (Christian Guggenberger, Max Planck Computing and Data Facility, Germany) – in English
Módulo 3: Supporting HPC operations through collaboration, version control tools and continuous integration (Florian Kaiser, Max Planck Computing and Data Facility, Germany) – in English –
Módulo 4: Networking for HPC (Albino Aveleda, Universidade Federal do Rio de Janeiro, Brasil) – in English (or Portuguese)

Además, se espera la confirmación de expertos que darán charlas técnicas abiertas a la comunidad tanto desde la industria como de la Academia.

El Sistema Nacional de Cómputo de Alto Desempeño (SNCAD) ha otorgado financiamiento para la asistencia a este evento: los administradores de clusters de aquellos centros asociados al SNCAD podrán anotarse y pedir asistencia económica de viaje y estadía para el evento completo orientado al track "HPC Operations" en http://ecar2017.hpclatam.org/about/#registry.


Se espera contar con fuentes adicionales de financiamiento para asistentes de toda latinoamerica. La inscripción general se abrirá en Febrero.

El CCAD en la iniciativa OpenPOWER

En el marco de la cooperación académica con Fundación OpenPOWER, Carlos Bederián y Nicolás Wolovick del CCAD pudieron conocer la iniciativa de manera cercana cuando visitaron SC16 y el IBM T. J. Watson Research Center en noviembre de 2016.

Ganesan Narayanasamy, líder del OpenPOWER Academic Discussion Group, incluye una reseña de la visita de Bederián y Wolovick a algunos miembros de la OpenPOWER Foundation.

Ganesan Narayanasamy muestra el premio que recibió de HPC Wired, junto a Bederián, Wolovick, además están Constanza Caorsi de IBM Argentina y Augusto Vega de IBM T. J. Watson Research Center.

Asignación de uso exclusivo Mendieta, verano 2017

En el periodo de uso exclusivo de Mendieta, verano 2017, hubo 9 pedidos que fueron evaluados por el directorio del CCAD. La asignación de uso quedó de la siguiente manera.

  • Cecilia Elena Pozzi Piacenza, Matías Ragessi: los investigadores del CETA (Centro de Estudios y Tecnologías del Agua) LH (Laboratorio de Hidráulica) de la FCEFyN, van a seguir trabajando en el modelado numérico de la Presa Los Molinos (Jujuy). Utilizando OpenFOAM se validará datos experimentales, contrastando campos de velocidad media, zonas de recirculación y separación del flujo, caudales volumétricos de flujo, entre otros.
  • Federico Stasyszyn: desde el IATE, este investigador trabajará en resimulaciones de regiones subdensas del universo. Para el estudio se utilizará GIZMO que ya fue previamente corrido en este cluster.
  • Patricia Paredes: desde el INFIQC la Dra. Paredes continuará con diseño computacional de materiales bidimensionales utilizando QuantumEspresso.
  • Virginia Miguel: desde el IIBYT se hará caracterización bioinformática de la modulación del receptor gabaa y de su entorno molecular por productos naturales bioactivos. Las simulaciones se harán utilizando GROMACS con soporte para GPU.
  • Cinthia Ragone: la investigadora del IATE realizará resimulación de cúmulos de galaxias a través del software Gadget-3.

En vísperas de Navidad, Pirayú entró en producción

El Cluster Pirayú de CIMEC-CONICET en Santa Fe empezó a producir el miércoles pasado.

Con 600 núcleos Haswell en 50 pastillas Intel Xeon E5-2650v3, 5 Tesla K40 de arquitectura Kepler y 1 Xeon Phi 7120P de arquitectura Knights Corner, eroga una potencia pico teórica de 22.08 TFLOPS en CPU, 7.15 TFLOPS en GPU y 1.20 TFLOPS en la aceleradora, totalizando Rpeak de 30.43 TFLOPS, casi cuadruplicando la potencia de su cluster anterior Seshat.

Este cluster fue financiado por la Agencia Santafesina de Ciencia, Tecnología e Innovación (ASaCTeI), a través de un subsidio para Equipamientos de Alta Complejidad Tecnológica de $4.800.000.

Pirayú que se utilizará en un consorcio de unidades de doble dependencia UNL-CONICET.

Pirayú se agrega a la lista de Clusters Argentinos monitoreados por el CCAD y monitoreados por CIMEC, este último a pedido del SNCAD.