Abstract-Under de senaste åren, användningen av grafikchips har erkänts som ett livskraftigt sätt att accelerera vetenskapliga och tekniska applikationer, ännu mer så sedan införandet av Fermi arkitektur av NVIDIA, med funktioner som är viktiga för numeriska datorer, såsom snabb dubbel precision aritmetisk och minne skyddas med felkorrigeringskoder. Eftersom den är den avgörande komponenten i numeriska programvarupaket, såsom LAPACK och Scalapack, är den allmänna täta matrismultiplikationsrutinen en av de viktigare arbetsbelastningarna som ska implementeras på dessa enheter. I detta dokument presenteras en metodik för att producera matrismultiplikationskärnor avstämda för en specifik arkitektur, genom en kanonisk process av heuristisk autotuning, baserad på generering av flera kodvarianter och välja de snabbaste genom benchmarking. Det viktigaste bidraget av detta arbete är i metoden för att generera sökytan; särskilt, beskära den till en hanterbar storlek. Prestandanummer matchar eller överskrider andra tillgängliga implementationer.
Referensreferensreferensen presenterar en metod för att producera MMM-kärnor som endast är avstämda för en specifik arkitektur, genom en kanonisk process av heuristisk autotuering, baserad på generering av flera kodvarianter och välja de snabbaste genom benchmarking.
Autotuning GEMM Kernels for the Fermi GPU
{'venue': 'IEEE Transactions on Parallel and Distributed Systems', 'journal': 'IEEE Transactions on Parallel and Distributed Systems', 'mag_field_of_study': ['Computer Science']}