Inicio Ejemplos Capturas de pantalla Manual de usuario Logotipo de Bluesky YouTube
OghmaNano Simule células solares orgánicas/de perovskita, OFETs y OLEDs DESCARGAR

Editor de hardware

Cinta de hardware de OghmaNano mostrando el botón del editor de hardware
Apertura del editor de hardware.

Todos los programas informáticos, incluido OghmaNano, se ejecutan en hardware físico de computación. Hay muchas combinaciones de hardware que puede haber en cualquier ordenador; algunos ordenadores tienen un gran número de núcleos de CPU, mientras que otros solo tienen uno. Asimismo, los ordenadores vienen con distintas cantidades de memoria, espacio en disco duro y GPU. Para ayudar al usuario a sacar el máximo partido de OghmaNano, existe un editor de hardware donde el usuario puede configurar cómo se comporta OghmaNano en cualquier ordenador dado. Se puede acceder a este a través de la ventana de la pestaña de simulación (??).

Si hace clic en esto, aparecerá la ventana del editor de hardware (??).

La ventana de hardware está compuesta por varias pestañas que permiten al usuario editar la configuración y también realizar benchmarks de su dispositivo.

Pestaña de configuración de CPU/GPU

Ventana del editor de hardware de OghmaNano
La ventana del editor de hardware

Esta pestaña se utiliza para configurar cómo OghmaNano interactúa con la GPU y la CPU; se describe en la tabla siguiente. Como se describe detalladamente en otras partes de este manual, hay dos partes en OghmaNano: está oghma_core.exe, que es el backend computacional, y está oghma_gui.exe, que es la interfaz gráfica de usuario; aquí puede ajustarse con precisión cómo se comportan ambas partes del modelo.

Caché de Newton

Ventana del editor de caché de Newton de OghmaNano
El editor de caché de Newton

Al ejecutar simulaciones con un número significativo de EDO, como dispositivos 1D con muchos estados de trampa y un gran número de puntos espaciales, o al ejecutar simulaciones OFET 2D, cada paso de voltaje puede tardar bastante en calcularse. Esto se debe a que el solucionador debe resolver cada paso de voltaje usando el método de Newton hasta que converja. Para cada paso del solucionador debe construirse el Jacobiano, invertirse la matriz, multiplicarse por los residuos y calcularse las actualizaciones de todas las variables del solucionador. Esto puede consumir una cantidad significativa de tiempo por paso (2000 ms). Un enfoque para evitar este procedimiento es almacenar respuestas calculadas previamente en disco y luego, cuando el usuario pide al solucionador que calcule un problema ya calculado, la respuesta puede recuperarse en lugar de recalcularse. Esto es muy útil en el diseño de OLED, donde se intenta optimizar la estructura óptica del dispositivo pero se deja sin cambios la estructura eléctrica. Se pueden ejecutar nuevas simulaciones ópticas con soluciones eléctricas ya precalculadas. Las opciones de configuración se muestran en la tabla siguiente.

Hay una sobrecarga asociada al uso de la caché de Newton, así que solo la recomendaría cuando resolver el problema eléctrico sea realmente muy lento. Técnicamente, la caché de Newton funciona tomando la suma MD5 de los niveles de Fermi y de los potenciales para generar un hash del problema eléctrico. Esto se compara después con lo que existe en disco. Si se encuentra una respuesta precalculada, los niveles de Fermi/potenciales se actualizan a los valores encontrados en disco. La caché se almacena en la caché local de oghma_local; cada solución previamente resuelta se almacena como un nuevo archivo binario. Cada ejecución de simulación genera un archivo índice donde se almacenan todas las sumas MD5 de esa simulación. Una vez que la caché se llena, OghmaNano elimina resultados de simulación por lotes basándose en los archivos índice.

Benchmark de hardware

Ventana de resultados del benchmark de hardware de OghmaNano
Ejecutando un benchmark de hardware

En la parte superior izquierda de la ventana de hardware (??) hay un botón llamado Hardware benchmark. Si se hace clic en él, entonces OghmaNano realizará un benchmark de su hardware; el resultado de dicho benchmark puede verse en (??). Esto ejecuta benchmarks de la capacidad de sus CPU para calcular sin,exp y asignar/desasignar memoria en bloques. Muestra cuánto tiempo tardó en realizar unos pocos miles de operaciones, así como un valor R (también conocido como Roderick). Este se define como R=Tiempo empleado en realizar el cálculo en su PC/Tiempo empleado en realizar el cálculo en mi PC. Por tanto, valores menores significan que su PC es más rápido que el mío. Mi PC es un Intel(R) Core(TM) i7-4900MQ CPU @ 2.80GHz en un Lenovo ThinkPad de 2017. Por lo tanto, la mayoría de los ordenadores modernos deberían ser más rápidos. Si tiene un buen rendimiento de CPU pero sus simulaciones se ejecutan más despacio que mis vídeos de YouTube, esto se debe invariablemente a una mala velocidad de E/S, causada por antivirus, almacenar las simulaciones en OneDrive, usar unidades de red, usar almacenamiento USB lento, etc.