Reading Time: 10 minutes

La evaluación comparativa es esencial cuando los investigadores necesitan comparar solucionadores numéricos, modelos de aprendizaje automático, bibliotecas de álgebra lineal escasa o software de optimización. Un solucionador que funcione bien en una ecuación, matriz, tolerancia o plataforma de hardware puede comportarse de manera muy diferente en otro conjunto de condiciones.

Un punto de referencia útil debe proporcionar definiciones de problemas repetibles, mediciones de precisión consistentes, entornos de computación controlada e informes transparentes. También debe coincidir con el tipo de software que se está evaluando. Un integrador de ODE, un operador neural, un solucionador directo escaso y un optimizador con restricciones de PDE no resuelven el mismo problema y no deben compararse a través del mismo conjunto de pruebas.

El panorama de la computación científica incluye varios recursos importantes de referencia. ScimlBenchmarks se centra en la eficiencia del solucionador de ecuaciones diferenciales. PDEBench proporciona conjuntos de datos y tareas de evaluación para el aprendizaje automático científico. HPCG representa cargas de trabajo escasas e intensivas en memoria en computadoras de alto rendimiento. SuiteSparse suministra matrices de aplicaciones reales. La colección ASU Mittelmann admite comparaciones de software de optimización, incluidos problemas con restricciones de PDE.

Por qué los puntos de referencia del solucionador necesitan categorías claras

La palabra solver puede describir varios tipos diferentes de software. Un integrador de tiempo avanza una ODE o PDE semidiscretizada. Un solucionador lineal escaso calcula la solución de un sistema de matriz. Un operador neural aproxima la asignación entre las entradas y las salidas de PDE. Un solucionador de optimización minimiza un objetivo y satisface las restricciones.

Estas herramientas requieren diferentes criterios de evaluación. Los integradores de tiempo se comparan comúnmente a través de evaluaciones de errores, tiempo de ejecución y funciones. Los solucionadores escasos requieren colecciones de matriz, mediciones de memoria, recuentos de iteraciones y resultados de escalado. Los modelos científicos de ML necesitan métricas de capacitación e inferencia, pruebas de generalización y comparaciones con soluciones de referencia numérica.

Una suite de benchmark solo es útil cuando su clase de problema coincide con el propósito del solucionador.

Principales familias de referencia

Recurso de referencia Clase de problema principal Evaluación típica Mejor uso
ScimlBenchmarks ODES, SDES, DAES, semidiscretizaciones de PDE y modelos relacionados Diagramas de precisión de trabajo, temporización, error y comparaciones de solucionador Comparación de algoritmos de ecuación diferencial
PDEBENCH Conjuntos de datos PDE dependientes del tiempo para ML científica Error de predicción, calidad de despliegue, entrenamiento y rendimiento de inferencia Comparación de los sustitutos de PDE neural y modelos de aprendizaje de operador
HPCG Carga de trabajo lineal escasa estructurada en sistemas HPC Rendimiento y escalabilidad a nivel del sistema Evaluación de cómo el hardware de HPC maneja las operaciones escasas representativas
Colección Matrix SuiteSparse Matrices escasas reales de muchas áreas de aplicación Runtime, memoria, convergencia, robustez y comportamiento de factorización Prueba de algoritmos de matriz escasa y bibliotecas de solucionador
Asu Mittelmann Optimización continua, discreta y restringida por PDE Runtime, instancias resueltas, optimización y robustez Comparación de software de optimización

Clarificar nombres de referencia no verificados

Las notas informales del proyecto y los borradores de investigación generados a veces se refieren a suites llamadas «himas» o «scibase». Estos nombres no deben ser tratados como referentes del solucionador científico establecidos sin una publicación precisa, repositorio o fuente institucional.

Cuando se discute la evaluación de disperso solucionador, es más seguro hacer referencia al recurso real que se utiliza, como HPCG, SuiteSparse o una comparación documentada que involucre a PetSc, Trilinos, Hypre o Superlu.

PetSc, Trilinos, Hypre y Superlu son bibliotecas de solución en lugar de una suite de referencia combinada. Los investigadores pueden compararlos en las mismas matrices o cargas de trabajo de PDE, pero el protocolo de prueba debe definirse por separado.

ScimlBenchmarks

ScimlBenchMarks proporciona comparaciones reproducibles para algoritmos de ecuación diferencial. Su cobertura incluye ODE no rígida y rígida, ecuaciones diferenciales estocásticas, ecuaciones diferencial-algebraicas, problemas de valores de contorno y sistemas PDE seleccionados después de la discretización espacial.

La herramienta de evaluación central es el diagrama de precisión de trabajo. Cada solucionador se ejecuta con varios ajustes de tolerancia o configuraciones numéricas. El error medido se traza contra el costo computacional, como el tiempo de ejecución, el número de evaluaciones del lado derecho u otra métrica de trabajo.

Un solucionador que aparece más cerca de la región inferior izquierda del diagrama generalmente proporciona un error más bajo a menor costo. Ningún punto es suficiente porque las clasificaciones de solucionador pueden cambiar a medida que cambia la precisión solicitada.

Lo que revelan los diagramas de precisión de trabajo

Suponga que el Solver A es más rápido en tolerancias sueltas, pero se vuelve ineficiente cuando se requiere una alta precisión. El solucionador B puede tener un mayor costo de configuración, pero escalar mejor a medida que la tolerancia se vuelve más estricta. Una sola comparación en tiempo de ejecución ocultaría esta distinción.

El análisis de precisión de trabajo hace visible la compensación de precisión versus costo. Es particularmente útil para los integradores de tiempo adaptativos porque sus recuentos de pasos y las evaluaciones de funciones dependen de la tolerancia solicitada.

Comparaciones entre idiomas

Las colecciones de benchmark de SCIML pueden incluir algoritmos a los que se accede a través de diferentes ecosistemas de software. Las pruebas entre idiomas requieren cuidado porque la sobrecarga de contenedor, la compilación, la asignación de memoria, los valores predeterminados del solucionador y las definiciones de control de errores pueden afectar el resultado.

Una comparación justa debe utilizar ecuaciones equivalentes, condiciones iniciales, tolerancias, tiempos de salida, información jacobiana y criterios de parada.

Pdebench para el aprendizaje automático científico

pdebench está diseñado para la investigación de aprendizaje automático que involucra sistemas físicos basados en PDE. Proporciona código, conjuntos de datos, modelos de referencia y herramientas de evaluación para comparar sustitutos aprendidos en varias familias de ecuaciones.

Los conjuntos de datos asociados incluyen problemas como advección, ecuación de hamburguesas, sistemas de reacción de difusión, sorción de difusión, ecuaciones compresibles de Navier-Stokes, flujo de Darcy y ecuaciones de aguas poco profundas.

Los investigadores pueden usar los datos suministrados para evaluar los operadores neurales de Fourier, las redes convolucionales, los modelos autorregresivos y otros enfoques científicos de ML sin generar de forma independiente cada conjunto de datos de simulación.

¿Qué medidas de PDEBENCH

La evaluación de un modelo PDE aprendido requiere más que un solo error al cuadrado medio. Las medidas útiles pueden incluir:

  • Errores en pasos de tiempo individuales
  • Estabilidad de despliegue en horizonte largo
  • Violaciones de la ley de conservación
  • Rendimiento en valores de parámetros no vistos
  • Errores cerca de límites o gradientes agudos
  • Costo de formación e inferencia
  • consumo de memoria

El simulador numérico utilizado para producir un conjunto de datos de entrenamiento y el modelo aprendido que se aproxima a su salida realiza diferentes tareas. Por lo tanto, se debe informar por separado el costo de capacitación, el costo de generación de datos y el costo de inferencia.

Recursos de datos relacionados con SCIML

Los datos de referencia para la investigación científica de ML basada en PDE también están disponibles a través de la colección SciML Benchmark de la Universidad de Stuttgart en Darus.

Se pueden encontrar resultados de referencia adicionales y comparaciones experimentales en benchmarks.sciml.ai. Los investigadores deben registrar la versión exacta del conjunto de datos, la confirmación del repositorio y el entorno de software utilizado en cada experimento.

HPCG para la evaluación del sistema HPC

El Benchmark de gradientes conjugados de alto rendimiento se creó como un complemento de Linpack de alto rendimiento. HPL enfatiza el álgebra lineal densa, mientras que HPCG utiliza patrones computacionales y de acceso a la memoria que están más cerca de muchas aplicaciones científicas escasas.

HPCG construye un sistema escaso asociado con un problema de modelo tridimensional y aplica operaciones como la multiplicación de matriz-vector escasa, actualizaciones vectoriales, productos de puntos e iteraciones de gradiente conjugado precondicionadas multigrid.

El punto de referencia expone los límites relacionados con el ancho de banda de la memoria, la comunicación, la sincronización y el movimiento de datos. Estos factores a menudo dominan las grandes simulaciones escasas incluso cuando una máquina tiene un rendimiento teórico de punto flotante muy alto.

Lo que HPCG no mide

HPCG no debe tratarse como una clasificación completa de todos los solucionadores lineales escasos. Utiliza un algoritmo de referencia específico y una estructura de problemas. Una biblioteca diseñada para matrices asimétricas, factorización directa escasa, sistemas indefinidos o preacondicionamiento específico de la aplicación puede no estar representado de manera justa con un resultado de HPCG.

HPCG es más útil para comparar sistemas informáticos o implementaciones de su carga de trabajo prescrita. La evaluación más amplia del solucionador requiere múltiples matrices y clases de problemas.

Colección Matrix SuiteSparse

El SuiteEsparse Matrix Collection contiene matrices escasas recopiladas de aplicaciones reales. La colección se conocía anteriormente como la Colección Matrix Escasa de la Universidad de Florida.

Sus matrices representan problemas de dinámica de fluidos computacional, análisis estructural, simulación de circuitos, optimización, electromagnética, análisis de gráficos y muchos otros campos.

Esta diversidad hace que SuiteSparse sea útil para probar:

  • Factorización directa escasa
  • Métodos iterativos de Krylov
  • preacondicionadores
  • Reordenamiento de matriz
  • Partición de gráficos
  • núcleos escasos de GPU
  • Formatos de memoria y almacenamiento

Por qué importan las matrices reales

Una matriz sintética puede reproducir un tamaño o nivel de escasez seleccionado al mismo tiempo que se pierden las propiedades estructurales que dificultan un sistema real. El relleno durante la factorización, el dominio diagonal, la simetría, el acondicionamiento, la estructura de bloques y la conectividad del gráfico pueden influir en el comportamiento del solucionador.

Un buen estudio de SuiteSparse no debe seleccionar solo matrices que favorezcan un solo método. El conjunto de prueba debe representar la aplicación de destino e incluir reglas claras de inclusión y exclusión.

Bibliotecas de solucionador y datos de referencia

PETSC, Trilinos, Hypre y SuperLU se usan comúnmente en la informática científica, pero proporcionan diferentes capacidades.

  • PETSC suministra vectores distribuidos, matrices, métodos Krylov, solucionadores no lineales, integradores de tiempo e interfaces a paquetes externos.
  • Trilinos contiene paquetes para álgebra escasa, métodos iterativos, preacondicionamiento, solucionadores directos, sistemas no lineales y flujos de trabajo multifísicos.
  • Hypre Se enfoca en solucionadores iterativos escalables y preacondicionadores multirred para grandes sistemas paralelos.
  • Superlu Proporciona una factorización de LU escasa para entornos secuenciales, multiprocesos y distribuidos.

Una comparación creíble debe utilizar formatos de matriz equivalentes, tolerancias de parada, configuraciones de preacondicionador, precisión, asignación de hardware y definiciones de convergencia.

Benchmarks de ASU Mittelmann

el sitio de referencia ASU de Hans Mittelmann recopila problemas de prueba y comparaciones de rendimiento para el software de optimización.

El sitio más amplio cubre varias categorías de optimización. Su colección de optimización restringida por PDE incluye problemas de control elíptico y parabólico totalmente discretizados representados como modelos AMPL.

Estos problemas se pueden enviar a solucionadores de optimización no lineales que admiten AMPL. Son útiles para estudiar cómo los optimizadores manejan grandes sistemas en los que las variables de decisión y las restricciones surgen de una PDE discretizada.

Qué medidas de optimización con restricciones de PDE

Un punto de referencia de optimización con restricciones de PDE puede evaluar más que la velocidad de la solución de PDE. También puede probar:

  • Reducción de la función objetivo
  • Satisfacción de restricción
  • Optimidad de primer orden
  • Robustez a las conjeturas iniciales
  • Manejo de derivados y arpillera
  • Uso de la memoria
  • Escalar como discretización se refina

Estas pruebas no son sustitutos de los puntos de referencia ordinarios de PDE o del solucionador lineal escaso. Evalúan el flujo de trabajo de optimización completo.

Cómo elegir el punto de referencia correcto

Objetivo de evaluación Recursos recomendados Métricas principales
Comparar algoritmos de ODE o de integración de tiempo ScimlBenchmarks Error, tiempo de ejecución, evaluaciones de funciones y precisión de trabajo
Compare los modelos de PDE sustitutos aprendidos PDEBENCH Error de predicción, estabilidad de despliegue, entrenamiento y costo de inferencia
Comparar sistemas HPC en cargas de trabajo escasas HPCG Rendimiento de rendimiento, escalado, memoria y comunicación
Comparar algoritmos de solucionador escasos SuiteEspacio Tiempo de ejecución, memoria, iteraciones, robustez y residuos
Compare los optimizadores con restricciones de PDE Asu Mittelmann Tiempo de ejecución, problemas resueltos, viabilidad y optimización

Diseño de una comparación de solucionador justo

Cada solucionador debería recibir el mismo problema matemático. Esto incluye el mismo dominio, malla, coeficientes, condiciones iniciales, condiciones de contorno, tiempo final y salida solicitada.

Cuando los algoritmos usan diferentes representaciones internas, la comparación debe centrarse en una medida de precisión externa común. Un resultado rápido no es útil si no cumple con el error de destino.

El informe de referencia debe registrar:

  • Versiones de resolución y dependencia
  • Configuración del compilador y de optimización
  • Información de CPU, GPU, Memoria y Red
  • Recuentos de hilos y procesos
  • Precisión y tipo de datos
  • Tolerancias y condiciones de parada
  • Preacondicionadores y reordenes matriciales
  • Tratamiento de calentamiento y compilación
  • Número de ejecuciones repetidas
  • Definiciones de error y falla

Usar múltiples niveles de precisión

Un punto de referencia realizado en una tolerancia puede producir un ganador engañoso. Algunos métodos tienen una sobrecarga baja y funcionan bien cuando los requisitos de precisión están sueltos. Otros se vuelven más competitivos con tolerancias más estrictas.

Para los integradores de tiempo, se deben probar varias combinaciones de tolerancia relativa y absoluta. Para los solucionadores lineales iterativos, los investigadores deben informar definiciones residuales y examinar si la reducción algebraica residual corresponde a un error de solución real.

Los diagramas de precisión de trabajo, los perfiles de rendimiento y los gráficos de convergencia brindan más información que una sola tabla de tiempo.

Medir los costos de configuración y de resolución repetida

El costo del solucionador a menudo contiene varios componentes:

  • Conjunto de matriz
  • Construcción de preacondicionador
  • Factorización simbólica
  • Factorización numérica
  • Tiempo de resolución individual
  • transferencia de información
  • Salida y posprocesamiento

Un método directo puede tener un alto costo de factorización inicial pero resolver rápidamente lados derechos adicionales. Un método iterativo puede tener un costo de configuración más bajo, pero requiere muchas iteraciones para cada solución.

Los informes de referencia deben separar la configuración de una sola vez del rendimiento de resolución repetida.

Errores de evaluación comparativa comunes

Un error frecuente es comparar los resultados generados en diferentes mallas o con diferentes objetivos de error. Un cálculo más rápido sobre un problema más grueso no demuestra que un solucionador sea más eficiente.

Otros errores comunes incluyen:

  • Reporting Runtime sin error de informe
  • Seleccionar solo matrices favorables
  • Uso de diferentes condiciones de parada
  • Ignorar ejecuciones fallidas o no convergentes
  • Combinación de compilación con ejecución para un solo idioma
  • Comparación de ejecuciones de CPU y GPU sin documentar los costos de transferencia de datos
  • Uso de HPCG para evaluar un modelo de PDE neural no relacionado
  • Uso de pdebench como sustituto de la evaluación comparativa de matriz dispersa
  • Reportando solo la ejecución más rápida en lugar de mediciones repetidas
  • No publicar scripts y configuraciones

Un flujo de trabajo de referencia práctico

  1. Definir el problema científico y el caso de uso objetivo.
  2. Seleccione un recurso de referencia que coincida con la clase Solver.
  3. Elija instancias representativas antes de ejecutar los solucionadores.
  4. Defina los criterios de error, convergencia y falla común.
  5. Registrar entornos de software y hardware.
  6. Pruebe varias tolerancias, tamaños de matriz o resoluciones de malla.
  7. Costos separados de configuración, solución y transferencia de datos.
  8. Repita las ejecuciones y reporte la variación estadística.
  9. Inspeccione la precisión, la robustez, la memoria y la escalabilidad juntos.
  10. Publique scripts, archivos de configuración y resultados sin procesar.

Guías relacionadas

Conclusión

Los puntos de referencia de los solucionadores científicos sirven para diferentes propósitos. ScimlBenchMarks compara los algoritmos de ecuación diferencial a través de errores y trabajos computacionales. PDEBench proporciona conjuntos de datos y tareas científicas estandarizadas de ML. HPCG mide cómo funcionan los sistemas HPC en una carga de trabajo escasa representativa. SuiteSparse admite pruebas amplias de algoritmos de matriz escasa utilizando datos de aplicación reales. ASU Mittelmann proporciona problemas de prueba de optimización establecidos, incluidos modelos restringidos en PDE.

Estos recursos no deben ser tratados como intercambiables. El punto de referencia correcto depende de si el objetivo es un integrador de tiempo, un sustituto aprendido, un solucionador lineal escaso, una plataforma de hardware o un paquete de optimización.

Un punto de referencia creíble informa la precisión, el tiempo de ejecución, la memoria, los errores, la configuración del solucionador y los detalles del hardware. Utiliza instancias de problemas idénticos y prueba más de una tolerancia o resolución. El objetivo no es simplemente identificar la carrera más rápida, sino determinar qué método ofrece la precisión y la fiabilidad requeridas para la carga de trabajo científica prevista.