|
Concurrent Matrix Multiplication on Multi-Core ProcessorsKeywords: Multi-Core , Concurrent Programming , Parallel Programming , Matrix Multiplication. Abstract: With the advent of multi-cores every processor has built-in parallel computational power andthat can only be fully utilized only if the program in execution is written accordingly. This studyis a part of an on-going research for designing of a new parallel programming model for multicorearchitectures. In this paper we have presented a simple, highly efficient and scalableimplementation of a common matrix multiplication algorithm using a newly developed parallelprogramming model SPC3 PM for general purpose multi-core processors. From our study it isfound that matrix multiplication done concurrently on multi-cores using SPC3 PM requiresmuch less execution time than that required using the present standard parallel programmingenvironments like OpenMP. Our approach also shows scalability, better and uniform speedupand better utilization of available cores than that the algorithm written using standard OpenMPor similar parallel programming tools. We have tested our approach for up to 24 cores withdifferent matrices size varying from 100 x 100 to 10000 x 10000 elements. And for all thesetests our proposed approach has shown much improved performance and scalability.
|