Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Matrix Multiplication in C language: This project is designed to show the performance improvement and overhead of multi-threading with OpenMP APIs for the matrix multiplication

Matrix Multiplication in C language:

This project is designed to show the performance improvement and overhead of multi-threading with OpenMP APIs for the matrix multiplication application. There are multiple ways to calculate matrix multiplication [1]. Only straightforward calculation algorithms are required for memory reference locality purposes. More advanced algorithm such as Strassens algorithm is not required.

You need to:

1) use at least two direct methods (refer to [2] for more details) to implement matrix multiplication (mmul) in C language;

2) calculate the execution time of matrix multiplication for certain number of for-loops;

3) use OpenMP with multi-threading to speed up each method of matrix multiplication;

4) change the number of threads, matrix size and number of for-loops, to show the overhead of multi-threading;

[1] https://en.wikipedia.org/wiki/Matrix_multiplication_algorithm

[2] https://en.wikipedia.org/wiki/Locality_of_reference#Matrix_multiplication

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Handbook Of Relational Database Design

Authors: Candace C. Fleming, Barbara Von Halle

1st Edition

0201114348, 978-0201114348

More Books

Students also viewed these Databases questions