
Defensa Tesis Licenciatura Eduardo Perez Leale
18 marzo, 2019 @ 11:00 am - 12:00 pm
Título: Ampliando las capacidades de una aplicación de cómputo QM/MM utilizando GPU
Directores: Esteban Mocskos y Mariano Camilo González Lebrero
Jurados: Uriel Morzan y Pablo Turjanski
Resumen
Hoy en día, la simulación numérica es una disciplina fundamental dentro de una gran cantidad de áreas de la ciencia y la tecnología. El uso de estas técnicas permite validar modelos teóricos así como también brindar información detallada (macro y microscópica)
del proceso simulado, complementando el uso de las técnicas experimentales tradicionales.
Este trabajo se enfoca en modificar el software de estructura electrónica LIO. Este código se basa en la teoría de los funcionales de la densidad (DFT) y permite estimar propiedades de sistemas moleculares de manera muy eficiente mediante el empleo de tarjetas gráficas (GPUs) en las partes más demandantes del cálculo.
En el esquema de DFT la calidad (así cómo el mayor costo) está dada por el cálculo de lo que se llama «energía de intercambio y correlación.
Para esto existen múltiples «recetas» (llamadas funcionales de intercambio y correlación) que pueden ser convenientes para el tratamiento de diferentes sistemas o propiedades.
La versión original de LIO incluía un único funcional lo que limitaba sus capacidades.
Libxc es una biblioteca de funcionales de intercambio y correlación para DFT diseñada para funcionar únicamente en CPU.
El desafío planteado en esta tesis es lograr la utilización de Libxc en LIO sin impacte en su performance.
Como resultado de este trabajo se pudo lograr una ampliación de las capacidades del cómputo de LIO al vincularlo con Libxc con un impacto en la performance de alrededor de 4%.
También se lograron identificar puntos clave en la implementación que permitirían continuar con las tareas de optimización.
Las mejoras permiten que LIO pueda ser utilizada con una amplia gamma de algoritmos que realizan los cálculos de intercambio de energía y correlación lo que consecuentemente permite realizar simulaciones en condiciones más variadas.
Como corolario de este trabajo se pudo estandarizar (aunque no automatizar) un procedimiento que permite realizar una traducción de los funcionales de la biblioteca Libxc para que puedan ser ejecutados en GPU.