darkmacheken / CPD

Parallel and Distributed Computing Project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CPD - 2018/2019

Parallel and Distributed Computing Project - Particles Simulator

Introduction

The project is a sequential and two parallel implementations of a simulator of particles moving in free 2D space. It uses parallel programming on both UMA and multicomputer systems, using OpenMP and MPI, respectively.

Requirements

You must have installed the following tools:

  • gcc (A version that supports #pragma directive with OpenMP pack)

How to Compile

The compilation of the implementations can be made using the Makefile in /src.

To compile, you just need to issue the following command:

    make [implementation]

Where <implementation> := serial | omp | mpi representing Sequential, OpenMP and MPI respectively. If not present, all implementations will be compiled.

To clean the object files and the binaries, just run:

    make clean

Run the Tests

There are a set of 4 tests that were provided in the statement of the project.

To run all tests:

    make testall [program=implementation]

To run a specific test:

    make test [test=testfile] [program=implementation]

How to use the profiler

In order to profile the parallel versions of the project you need to install ompP, read the manual. Don't forget to change the file Makefile.defs. The makefile expects the existence of the command kinst-ompp.

The Makefile integrates the use of the profiler. So, in order to get this feature, you need first to compile the code with the followiing command:

    make [implementation] ompp=true

Then, you just need to run the test you want to profile with the command:

    make rompp [test=testfile] [program=implementation]

Notes

  • By default program=serial and test=test01

About

Parallel and Distributed Computing Project

License:Apache License 2.0


Languages

Language:C 93.1%Language:Makefile 6.9%