Onde quer que eu tenha visto, os tutoriais / documentos do PETSc etc. dizem que é útil para álgebra linear e geralmente especifica que sistemas esparsos serão beneficiados. E matrizes densas? Estou preocupado sobre como resolver para densa .A
Eu escrevi meu próprio código para CG e QMR no Fortran. A construção básica é separar o pseudo-código e adicionar rotinas BLAS sempre que possível ( ddot
, dnrm
e dgemv
) com um pouco de autoajuste. Como isso se compara ao PETSc?
Eu sei que a melhor resposta seria tentar eu mesmo, mas por motivos de tempo e outros, isso não é possível.
Qualquer ajuda é muito apreciada.
fonte
Como você mencionou que está em um sistema de memória compartilhada, eu recomendaria libFLAME e / ou PLASMA , mas não acho que seja significativamente mais rápido do que o BLAS encadeado pelo fornecedor para as operações de nível 1 e 2.
Jed recomendou o Elemental , que desenvolvo, mas ressaltarei novamente que as operações de nível 1 e 2 não são o foco principal das bibliotecas paralelas de álgebra linear densa. Sinceramente, nunca comparei nenhuma dessas rotinas.
fonte