Di mana pun saya melihat, tutorial / dokumen dll PETSc mengatakan bahwa itu berguna untuk aljabar linier dan biasanya menentukan bahwa sistem jarang akan mendapat manfaat. Bagaimana dengan matriks padat? Saya khawatir tentang menyelesaikan untuk padat .
Saya telah menulis kode saya sendiri untuk CG dan QMR di Fortran. Konstruk dasarnya adalah merobek kode pseudo dan menambahkan rutin BLAS sedapat mungkin ( ddot
, dnrm
dan dgemv
) dengan sedikit penyetelan sendiri. Bagaimana ini dibandingkan dengan PETSc?
Saya tahu jawaban terbaik bagi saya untuk mencobanya sendiri tetapi karena alasan waktu dan lainnya, itu tidak mungkin.
Bantuan apa pun sangat kami hargai.
sumber
Karena Anda menyebutkan bahwa Anda menggunakan sistem memori bersama, saya akan merekomendasikan libFLAME dan / atau PLASMA , tetapi saya tidak berpikir bahwa keduanya akan secara signifikan lebih cepat daripada vendor thread BLAS untuk operasi level 1 dan level 2 Anda.
Jed merekomendasikan Elemental , yang kebetulan saya kembangkan, tetapi saya akan kembali menekankan bahwa operasi level 1 dan level 2 bukan fokus utama pustaka aljabar linier padat paralel. Sejujurnya saya tidak pernah membandingkan salah satu rutinitas itu.
sumber