عنوان مقاله :
پياده سازي روش گراديان مزدوج با كارايي بالا به كمك زبان آزاد محاسباتي روي پردازنده هاي گرافيكي
عنوان به زبان ديگر :
High Performance Implementation of Conjugate Gradient Method Using OpenCL on Graphics Processing Units
پديد آورندگان :
مسيبي، فرشيد دانشگاه اصفهان - دانشكده فني و مهندسي - گروه مهندسي عمران
كليدواژه :
زبان آزاد محاسباتي , پردازنده هاي گرافيكي , روش گراديان مزدوج , حل دستگاه هاي معادلات خطي
چكيده فارسي :
بيشتر روشهاي عددي حل معادلات ديفرانسيل پارهاي مجهولات مورد نياز خود را ازطريق حل يك دستگاه معادلات خطي بهدست ميآورند. اين بخش از روند حل در اين روشها قسمت قابل توجهي از زمان حل را به خود اختصاص ميدهد. از اين رو حل سريعتر دستگاههاي معادلات خطي همواره مورد توجه محققان بوده و تحقيقات بسياري در اين زمينه انجام شده و يا در حال انجام است. در اين تحقيق با كمك يك هسته محاسباتي قابل تنظيم پيادهسازي شده توسط زبان آزاد محاسباتي، دستگاههاي معادلات خطي با استفاده از پردازندههاي گرافيكي حل ميشود. براي حل اين دستگاهها از روش گراديان مزدوج استفاده شده است. پارامترهاي هستههاي محاسباتي به نحوي تنظيم ميشوند كه حل دستگاه به سريعترين شكل ممكن انجام يابد. براي كارايي هر چه بيشتر در اين روش، دو شكل از روش گراديان مزدوج كه بيشترين همخواني را با مدل اجرا در زبان آزاد محاسباتي دارد، پيادهسازي شده و عملكرد آنها با كتابخانه توابع وينا سي ال روي پردازنده و پردازنده گرافيكي مقايسه ميشود. در هر دو شكل روش هستههاي محاسباتي تا حد امكان با يكديگر تركيب شده تا از زمان اضافي صرف شده براي فراخواني هستهها كاسته شود. نتايج نشان ميدهد روش پيشنهادي روي تمام سيستمها و مسائل مورد بررسي بسيار بهتر از كتابخانه توابع وينا سي ال عمل مينمايد.
چكيده لاتين :
Most solution methods for Partial Differential Equations (PDEs) find their unknowns through solving a linear
system of equations. This step consumes a considerable part of total solution time, and hence accelerating the solution of linear
systems of equations has been the subject of many researches. In this research we solve linear systems of equations on Graphics Processing Units (GPUs) using a tunable Sparse Matrix-Vector multiplication (SpMV) implemented in Open Computing
Language (OpenCL). We use the Conjugate Gradient (CG) method to this end. Kernel parameters are set such that the linear
system of equation is solved in the fastest way possible. For a better performance, two variants of CG which most comply the
execution model in OpenCL are implemented and their performances are compared with ViennaCL library on CPU and GPU. In
both variants, the kernels are fused to reduce the kernel launch overhead. The results show that the proposed method consistently
outperforms the ViennaCL library on a wide range of test systems and problems.
عنوان نشريه :
روشهاي عددي در مهندسي
عنوان نشريه :
روشهاي عددي در مهندسي