Create and run mmult_simd.c . This is a rewrite of mmult.c to add SIMD optimisations (refer to ppt for the algorithm to use) and try to run with and without -O3 on Wolfgand cluster.

Words: 357
Pages: 2
Subject: Uncategorized

I’m working on a c++ question and need an explanation and answer to help me learn.

DEMONSTRATE AND EVALUATE THE SPEED IMPROVEMENT DUE TO PARALLELIZATION OF THE MATRIX MULTIPLY ALGORITHM.
Goal of this assignment
Distributed parallel computing
SIMD using vectorized data
Symmetric Multiprocessing using OpenMP
Distributed Memory using Message Passing Interface (MPI)

Coding Tasks:
Create and run mmult_simd.c . This is a rewrite of mmult.c to add SIMD optimisations (refer to ppt for the algorithm to use) and try to run with and without -O3 on Wolfgand cluster.
Read input matrix from two files as described in MPI and OpenMP Approaches to consider .docx Download MPI and OpenMP Approaches to consider .docx in section: main program. This will be used for demo and grading.
Matrix multiplication in C on Wolfgand cluster with OpenMP.
Matrix multiplication in C on Wolfgand cluster with MPI (Distributed Memory)
Update graph to include SIMD, OpenMP and MPI versions. (You can removed unoptimized algorithm as it expected will be “off the chart” and make the chart difficult to read)
Extra credit: Matrix multiplication in C on Wolfgand cluster with both OpenMP and MPI.
Extra credit: Automate the production of graph with Gnuplot or other tools. If you want to use python libraries, such as Matplotlib, you need to first create a python virtual environment on the cluster machine.
RESSOURCES
SSH
https://drive.google.com/file/d/1WUUssWLapENkCswG7kg6io44xua35JNy/view?usp=sharingLinks to an external site.
Wolfgand cluster
Access to Wolfgand cluster: Access to Wolfgang Cluster
The command mpiexec -f ~/hosts -n 4 ./mmult_mpi_omp a.txt b.txt can be used to execute your program where mmult_mpi_omp is it’s name.
How to create a repo on Wolfgand cluster:
SSH into cis-linux2.temple.edu (Will ask for password)
SSH then into osprey.cis.temple.edu (Will ask for password)
Then SSH in chinook (WILL NOT ASK FOR PASSWORD IF IT DOES CONTACT TA)
If you already have not cloned
git clone http://yourGitHubRepo
Helpful Git commands
adds all new files to git.
shows current branch and the updates
to commit your edits in local branch
to create new branch
> to push new branch to remote repository
Helpful MPI Commands
Every file currently in directory needs to be compiled in a specific way so that it can be run in parallel. In order to compile them a makeFile already exists for simplicity therefore just type command
make
And it will compile the files for you which then you can run using
mpiexec -f ~/hosts -n 4 ./
Example:
mpiexec -f ~/hosts -n 4 ./mmult_mpi_omp a.txt b.txt
If you would like to remove all compiled files type command
make clean

Let Us write for you! We offer custom paper writing services Order Now.

REVIEWS


Criminology Order #: 564575

“ This is exactly what I needed . Thank you so much.”

Joanna David.


Communications and Media Order #: 564566
"Great job, completed quicker than expected. Thank you very much!"

Peggy Smith.

Art Order #: 563708
Thanks a million to the great team.

Harrison James.


"Very efficient definitely recommend this site for help getting your assignments to help"

Hannah Seven