I ett tidigare PPoPP-papper visade vi hur FLAME-metodiken, kombinerat med SuperMatrix runtime-systemet, ger en enkel men kraftfull lösning för programmering av tät linjär algebraverksamhet på multikärnplattformar. I detta dokument ger vi ytterligare bevis för att detta tillvägagångssätt löser programmerbarhetsproblemet för denna domän genom att rikta in sig på en mer komplex arkitektur, bestående av en multicoreprocessor och flera hårdvaruacceleratorer (GPU, Cell B.E., etc.).), var och en med sitt eget lokala minne, vilket resulterar i en plattform som mer påminner om ett heterogent distribuerat minnessystem. I synnerhet visar vi att FLAME-programmeringsmodellen tar hänsyn till denna nya situation utan ansträngning, så att inga betydande förändringar behöver göras i kodbasen. All komplexitet är dold i SuperMatrix körtid schemaläggning mekanism, som innehåller programimplementeringar av standard cache / minnessammanhållning tekniker i datorarkitektur för att förbättra prestanda. Vår experimentella utvärdering på en Intel Xeon 8-kärnig värd kopplad till en NVIDIA Tesla S870 plattform med fyra GPU:er ger toppprestanda runt 550 och 450 (single-precision) GFLOPS för matris-matrisen produkt respektive Cholesky factorization, som vi anser vara de bästa prestanda nummer som publiceras på denna nya arkitektur för sådan verksamhet.
FLAME REF är en high-level notation för att uttrycka algoritmer för täta linjära algebra operationer på multi-CPUs/multi-GPUs.
Solving dense linear systems on platforms with multiple hardware accelerators
{'venue': "PPoPP '09", 'journal': None, 'mag_field_of_study': ['Computer Science']}