Find Jobs
Hire Freelancers

code with open MP included in c language

$10-30 USD

Geschlossen
Veröffentlicht vor mehr als 8 Jahren

$10-30 USD

Bezahlt bei Lieferung
Parallelize the program using OpenMP. To do this compile with gcc -fopenmp mm.c -lgomp -o mm When compiling and running you must NOT use gollum itself but one of the nodes node1 to node8. Present the results as a table of run time and spedup (wrt OpenMP on 1 thread). Speedup is defined as T1/Tp where T1 is the time on 1 thread and Tp is the time on p threads. Comment on the results. The preferred way to time the codes is to use omp_set_num_threads(number) to set the threads and omp_get_wtime() to time the relevant part e.g. omp_set_num_threads(s); start = omp_get_wtime(); #pragma omp parallel ... PUT PARALLEL CODE HERE end = omp_get_wtime(); printf("time=:%.16g number of threads: %d\n",end - start, s); Implement and check the time to do a matrix-matrix product of a 1500x900 matrix A with a 900x1200 matrix B of doubles using 1,2,3,4,5,6, 7 and 8 threads on a gollum node. Define Aij = (i+1)*(j+1) and Bij = 1/((double) (i+1)* (double)(j+1)). The result matrix C=A*B should be Cij= 900*(double)(i+1)/(double) (j+1) . You should check that the result is correct in each case by comparing A*B with a matrix C with these values. Modify the code to run similar tests using static with default chuck size, dynamic with chunk size 1 and guided scheduling with chunk size 10. You may turn in either one program that does all 3 types of scheduling or three seperate programs. List the various run times and speedup in seperate tables for each type of scheduling and comment on the speedup of each scheduling type and draw conclusions as to which is preferable (and in what circumstances). Note that to implement this program you will need to increase the default stack size for both the original thread and the OMP threads. If you do not you will get a segmentation error. To do this you need to execute shell commands similar to: ulimit -s unlimited export OMP_STACKSIZE=16M Note: when timing the output remember not to print anything while timing.
Projekt-ID: 8708689

Über das Projekt

4 Vorschläge
Remote Projekt
Aktiv vor 8 Jahren

Möchten Sie etwas Geld verdienen?

Vorteile einer Ausschreibung auf Freelancer

Legen Sie Ihr Budget und Ihren Zeitrahmen fest
Für Ihre Arbeit bezahlt werden
Skizzieren Sie Ihren Vorschlag
Sie können sich kostenlos anmelden und auf Aufträge bieten
4 Freelancer bieten im Durchschnitt $34 USD für diesen Auftrag
Avatar des Nutzers
Have been working with Linux Kernel Programming since more than 2 years. Have deep insights of C/C++ programming. Have experience of developing device drivers for USB 3 devices on Xilinx Zynq Embedded Platform I can complete your project within your given deadline.
$30 USD in 2 Tagen
5,0 (7 Bewertungen)
2,9
2,9
Avatar des Nutzers
A proposal has not yet been provided
$24 USD in 1 Tag
5,0 (3 Bewertungen)
2,5
2,5
Avatar des Nutzers
Hi I have PhD in physics. I did this project again and I can prepare it also for you. I can explain you all the details and can provide plots also
$55 USD in 1 Tag
4,7 (3 Bewertungen)
1,9
1,9
Avatar des Nutzers
A proposal has not yet been provided
$25 USD in 1 Tag
0,0 (0 Bewertungen)
0,0
0,0

Über den Kunden

Flagge von UNITED STATES
Kent, United States
5,0
7
Mitglied seit Okt. 12, 2015

Kundenüberprüfung

Danke! Wir haben Ihnen per E-Mail einen Link geschickt, über den Sie Ihr kostenloses Guthaben anfordern können.
Beim Senden Ihrer E-Mail ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.
Registrierte Benutzer Veröffentlichte Jobs
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Vorschau wird geladen
Erlaubnis zur Geolokalisierung erteilt.
Ihre Anmeldesitzung ist abgelaufen und Sie wurden abgemeldet. Bitte melden Sie sich erneut an.