Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Question: We want you to write a multi-thread program in C to perform a simple matrix operation. The requirement is very simple; your program should

Question: We want you to write a multi-thread program in C to perform a simple matrix operation. The requirement is very simple; your program should read a square matrix of integers from a text file (here is an example file), place it in an appropriate data structure, and calculate the sum of all the numbers contained in the matrix. However, the calculation must be done in parallel by 4 different worker threads. You can think of your matrix as evenly divided into 4 sections (northwest, northeast, southwest, southeast). You can also assume that the number of rows and, since it's a square matrix, the number of columns is an integer power of 2. To get the final result in your program, each of the worker threads results should be combined (added together). Meanwhile, the main thread should calculate the same sum and compare its own result with the total result from the threads. Finally, it should produce a simple output that indicates whether the result is correct. You should implement an appropriate synchronization mechanism where necessary. On the other hand, you should not unnecessarily restrict the running of your threads with unnecessary synchronizations. The possible parallelism in the hardware you will use to run your program should be utilized as much as possible. What kind of parallelism did you use in your program to achieve the result? And at what points did you need to synchronize your threads, including the main thread?

Example of input file for a 4x4 matrix:

image text in transcribed

56 99 23 21 43 126 841 67 876 0 9 100 999 86 22

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

Data Access Patterns Database Interactions In Object Oriented Applications

Authors: Clifton Nock

1st Edition

0321555627, 978-0321555625

More Books

Students also viewed these Databases questions