/ Sú postupy BLAS úrovne 1 pre moderné kompilátory Fortran stále dôležité? - Fortran, blas

Sú postupy BLAS Level 1 stále dôležité pre moderné kompilátory Fortran? - Fortran, blas

Väčšina z nich BLAS Level 1 API môžu byť triviálne napísané priamo pomocou Fortran 9x + vektorizovaných priradení a vnútorných procedúr.

Za predpokladu, že používate moderný kompilátor optimalizácie, napr Intel Fortran, a korektné možnosti optimalizácie pre kompilátor špecifické pre danú cieľovú oblasť Intel MKL alebo iné rýchle implementácie BLAS?

Ak existujú, čo je typická veľkosť vektora, keď sa tieto výhody zobrazujú?

odpovede:

9 pre odpoveď č. 1

Záleží. Skúsili sme to predtým s kompilátorom Intel a dostali sa do prekvapivých výsledkov, DOT_PRODUCT z Fortran vs. implementácia BLAS poskytla rôzne trendy založené na veľkosti problému. Vzhľadom na to, že počet prvkov v poli sa zväčšil, BLAS sa stal lepším ako vnútorný. Ale pri malých veľkostiach problémov bolo podstatné rýchlejšie.

V skutočnosti sme pre naše prípady použitia určili, čoktorá je potrebná na to, aby bola jedna lepšia než druhá a skutočne použila v prípade, že sa rozhodnú, kto volá. Nemôžem tieto výsledky zdieľať, ale povzbudzujem vás, aby ste to vyskúšali sami. Z užívania systému BLAS je ešte stále výhodné.