Apakah kompilasi PETSc dengan perpustakaan BLAS / LAPACK eksternal secara signifikan mempengaruhi kinerja pada matriks jarang, atau apakah hanya menggunakan perpustakaan tersebut untuk matematika matriks padat?
10
Apakah kompilasi PETSc dengan perpustakaan BLAS / LAPACK eksternal secara signifikan mempengaruhi kinerja pada matriks jarang, atau apakah hanya menggunakan perpustakaan tersebut untuk matematika matriks padat?
Jawaban:
PETSc menggunakan BLAS untuk beberapa vektor primitif, tetapi ini umumnya dibatasi oleh bandwidth memori dan tidak ada banyak perbedaan dalam "optimasi", sehingga cenderung tidak membuat banyak perbedaan kinerja.
Ini juga menggunakan Lapack untuk beberapa analisis seperti Lanczos atau Arnoldi perkiraan nilai eigen dan nilai singular, tetapi ini umumnya tidak sensitif terhadap kinerja.
Operasi "level 3" yang padat umumnya hanya muncul dalam konteks yang peka terhadap kinerja ketika menggunakan solver langsung yang jarang dari perpustakaan pihak ketiga (mis. MUMPS, SuperLU, UMFPACK), di mana pengisian pada akhirnya mengarah ke masalah padat yang cukup besar untuk mendapat manfaat dari menelepon BLAS.
Jika Anda mengandalkan pemecah langsung yang jarang ini yang diterapkan pada masalah besar, maka ada baiknya membangun dengan implementasi BLAS yang disetel, jika tidak maka akan membuat perbedaan yang sangat kecil.
sumber