Hay bastantes paquetes de álgebra lineal y solucionadores de ODE / PDE que requieren una gran experiencia para desarrollarse en un entorno de alto rendimiento. Es decir, si tengo acceso a algunas computadoras conectadas en red o a una GPU, puedo aprovechar eso en mi código numérico para ejecutarlo más rápido, pero es realmente difícil de hacer. Métodos simples como varias descomposiciones o incluso multiplicación de matrices pueden ser los temas de tesis doctorales completas.
Más específicamente, es un paquete llamado PETSc, que le permite escribir un solucionador de alto rendimiento ODE o PDE (es decir, una ecuación diferencial ordinaria y parcial) en muy poco tiempo, suponiendo que ya sepa cómo escribir código numérico pero no Conocer la programación paralela. Hay un paquete derivado llamado SLEPc, que principalmente realiza valores propios y otras descomposiciones similares en forma de memoria distribuida. Ambas tienen extensiones de Python, lo que significa que ahora me he ocupado de la sobrecarga del desarrollador de escribir algo en C / C ++ oscuro y loco, así como de la sobrecarga del desarrollador para aprender a escribir código paralelo, que casi seguramente no será tan fácil. bueno como alguien que ha estado trabajando en ello durante años y años. Además, no es más lento que usar la versión C directa.
O simplemente podría pensar en los paquetes de álgebra lineal optimizados que solo funcionan en máquinas individuales. LAPACK y BLAS se usan universalmente, y con ATLAS se pueden ajustar específicamente para aprovechar la arquitectura de su procesador, el tamaño de la caché y otras cosas. Y la maldita cosa es más vieja que yo. Hay una gran ventaja en tener estas bibliotecas. Tanto software se basa en álgebra lineal numérica que es absurdo. Casi toda la informática científica lo hace. Gráficos también. No puedo pensar en más ejemplos, pero están allí (siéntase libre de agregar algunos).
- Criptografía: ¿Cómo explicaría el encadenamiento de hash para evitar la técnica de colisiones de hash?
- ¿Es correcto que 'todos los lenguajes de computadora converjan a LISP'? ¿Por qué?
- ¿Se puede programar una computadora para probar problemas matemáticos complejos no resueltos?
- ¿Existe un vínculo entre el procesamiento de señales y la teoría de grafos?
- ¿Por qué la teoría de la medida es más común en economía que en informática?