3 repositorios
Utilities for accelerating numerical computations through sparsity detection, matrix coloring, and hardware offloading.
Distinct from Nonlinear Optimization Solvers: Distinct from Nonlinear Optimization Solvers: focuses on general performance acceleration techniques for solvers rather than specific nonlinear optimization algorithms.
Explore 3 awesome GitHub repositories matching scientific & mathematical computing · Performance Accelerators. Refine with filters or upvote what's useful.
Ceres Solver es una biblioteca de C++ para optimización numérica, especializada en problemas de mínimos cuadrados no lineales y optimización sin restricciones. Sirve como un framework para diferenciación automática y ajuste de curvas robusto, proporcionando herramientas para resolver modelos matemáticos a gran escala. La biblioteca se distingue por sus capacidades de ajuste de haces (bundle adjustment), que explotan estructuras de matrices dispersas para refinar puntos de escena 3D y parámetros de cámara. Utiliza diferenciación automática de números duales para calcular derivadas de funciones de costo, eliminando la necesidad de derivación manual de Jacobianos. El proyecto cubre una amplia gama de capacidades de optimización, incluyendo restricciones de variedades para espacios no euclidianos, funciones de pérdida robustas para mitigar valores atípicos y resolución de sistemas lineales tanto densos como dispersos. También proporciona utilidades para la conversión de representación de rotación, interpolación de datos tabulados y estimación de covarianza de parámetros. Las configuraciones de compilación están disponibles para objetivos Android e iOS para soportar la optimización de hardware móvil.
Optimizes memory and computation when the structural patterns of data change during the optimization process.
DifferentialEquations.jl es una biblioteca numérica integral diseñada para resolver ecuaciones diferenciales ordinarias, estocásticas, de retardo y algebraicas. Funciona como una suite de resolución de alto rendimiento que integra machine learning científico, programación probabilística y diferenciación automatizada en un framework unificado. Al aprovechar el despacho múltiple y la integración simbólico-numérica, la biblioteca proporciona un entorno flexible para el modelado matemático complejo y la simulación. El proyecto se distingue por su capacidad para cerrar la brecha entre el análisis numérico tradicional y las técnicas modernas de machine learning. Admite el entrenamiento de ecuaciones diferenciales universales, permitiendo a los usuarios incrustar redes neuronales directamente en simuladores científicos para aprender dinámicas desconocidas mientras mantienen restricciones físicas. Además, la biblioteca ofrece herramientas avanzadas de análisis de sensibilidad y estimación de parámetros, incluyendo métodos adjuntos e inferencia bayesiana, que permiten una calibración eficiente del modelo y el descubrimiento automatizado de ecuaciones gobernantes a partir de datos. La plataforma ofrece amplias capacidades para la computación de alto rendimiento, incluyendo paralelismo agnóstico al hardware que despacha simulaciones a través de CPUs, GPUs y clusters distribuidos. Incorpora una cuantificación rigurosa de la incertidumbre a través de aritmética de intervalos y propagación de Monte Carlo, asegurando una estimación de errores confiable en experimentos numéricos. Además, el sistema cuenta con rutinas de optimización sofisticadas, como la detección de dispersión basada en grafos y el cálculo de productos sin matrices, para acelerar el rendimiento en sistemas a gran escala.
Accelerates complex computations through automated sparsity detection, matrix coloring, and hardware offloading.
Symbolics.jl is a foundational framework for symbolic mathematics, automated differentiation, and scientific compilation within the Julia programming language. It provides a comprehensive system for algebraic manipulation, expression simplification, and the construction of mathematical models, enabling users to represent complex physical and chemical systems as symbolic equations. The library distinguishes itself through a source-to-source compilation engine that translates high-level symbolic representations directly into optimized, parallelized, and hardware-specific numerical code. By util
Provides automated sparsity detection for Jacobians and Hessians to skip zero-value computations during numerical execution.