Preguntas etiquetadas con performance

Preguntas sobre la velocidad de ejecución y el uso de memoria de algoritmos, estructuras de datos, lenguajes y bibliotecas.



4
¿Qué hace que Fortran sea rápido?
Fortran tiene un lugar especial en la programación numérica. Ciertamente, puede hacer un software bueno y rápido en otros idiomas, pero Fortran sigue funcionando muy bien a pesar de su antigüedad. Además, es más fácil hacer programas rápidos en Fortran. He hecho programas rápidos en C ++, pero debes tener …

4
¿Cómo resuelve el operador de barra invertida de MATLAB
Estaba comparando algunos de mis códigos con los códigos MATLAB "de inventario". Estoy sorprendido por los resultados. Ejecuté un código de muestra (matriz dispersa) n = 5000; a = diag(rand(n,1)); b = rand(n,1); disp('For a\b'); tic;a\b;toc; disp('For LU'); tic;LULU;toc; disp('For Conj Grad'); tic;conjgrad(a,b,1e-8);toc; disp('Inv(A)*B'); tic;inv(a)*b;toc; Resultados: For a\b Elapsed time …



4
¿Cuándo debería usar plantillas de expresión C ++ en ciencia computacional y cuándo * no * debería usarlas?
Supongamos que estoy trabajando en un código científico en C ++. En una discusión reciente con un colega, se argumentó que las plantillas de expresión podrían ser algo realmente malo, lo que podría hacer que el software sea compilable solo en ciertas versiones de gcc. Supuestamente, este problema ha afectado …

1
¿Cuál es el enfoque preferido y eficiente para interpolar datos multidimensionales?
¿Cuál es el enfoque preferido y eficiente para interpolar datos multidimensionales? Cosas que me preocupan: rendimiento y memoria para la construcción, evaluación individual / por lotes manejo de dimensiones de 1 a 6 lineal o de orden superior capacidad de obtener gradientes (si no lineales) cuadrícula regular vs dispersa utilizando …



3
¿Se pueden resolver los sistemas lineales simétricos diagonales más fijos en tiempo cuadrático después de la precomputación?
¿Existe un método O(n3+n2k)O(n3+n2k)O(n^3+n^2 k) para resolver kkk sistemas lineales de la forma (Di+A)xi=bi(Di+A)xi=bi(D_i + A) x_i = b_i donde AAA es una matriz SPD fija y DiDiD_i son matrices diagonales positivas? Por ejemplo, si cada DiDiD_i es escalar, es suficiente para calcular la SVD de AAA . Sin embargo, …


6
¿En qué medida la programación genérica y la metaprogramación usando plantillas C ++ son útiles en la ciencia computacional?
El lenguaje C ++ proporciona programación genérica y metaprogramación a través de plantillas. Estas técnicas han encontrado su camino en muchos paquetes de computación científica a gran escala (por ejemplo, MPQC , LAMMPS , CGAL , Trilinos ). Pero, ¿qué han contribuido realmente a la informática científica en un valor …



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.