Intel Accelerate Your Code



Σχετικά έγγραφα
Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

Ενδεικτικά Θέματα Στατιστικής ΙΙ

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

Άσκηση 1 - Μοπυοποίηση Κειμένου

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

Οργάνωση και Δομή Παρουσιάσεων

ΜΑΘΗΜΑΤΙΚΑ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΦΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ Β ΛΥΚΔΙΟΥ ΤΔΣΤ(1) ΣΤΑ ΓΙΑΝΥΣΜΑΤΑ

ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/2014

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο:

ΔΝΓΔΙΚΣΙΚΔ ΛΤΔΙ ΣΑ ΜΑΘΗΜΑΣΙΚΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ 2017

3 ΑΠΙΔ ΑΘΖΔΗ ΘΟΚΟΙΟΓΗΑ ΠΟΤ ΑΛΣΗΚΔΣΩΠΗΕΟΛΣΑΗ ΚΔ ΦΤΗΘΖ ΘΑΗ ΚΑΘΖΚΑΣΗΘΑ ΙΤΘΔΗΟΤ

Κόληξα πιαθέ ζαιάζζεο κε δηαζηάζεηο 40Υ40 εθ. Καξθηά 3 θηιά πεξίπνπ κε κήθνο ηξηπιάζην από ην πάρνο ηνπ μύινπ θπξί κεγάιν θαη ππνκνλή

Constructors and Destructors in C++

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

x x x x tan(2 x) x 2 2x x 1

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

Βιομησανικόρ ζσεδιαζμόρ πποϊόνηων από ανακςκλωμένερ ζςζκεςαζίερ

Ηλεκηπονικά Απσεία και Διεπαθέρ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γευηέρα 11 Ηουνίου 2018 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

Μηα ζπλάξηεζε κε πεδίν νξηζκνύ ην Α, ζα ιέκε όηη παξνπζηάδεη ηοπικό μέγιζηο ζην, αλ ππάξρεη δ>0, ηέηνην ώζηε:

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

Γ ΣΑΞΖ ΔΝΗΑΗΟΤ ΛΤΚΔΗΟΤ ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΘΔΣΗΚΩΝ ΚΑΗ ΟΗΚΟΝΟΜΗΚΩΝ ΠΟΤΓΩΝ ΤΝΑΡΣΖΔΗ ΟΡΗΑ ΤΝΔΥΔΗΑ (έως Θ.Bolzano) ΘΔΜΑ Α

x x 15 7 x 22. ΘΔΜΑ Α 3x 2 9x 4 3 3x 18x x 5 y 9x 4 Α1. i. . Η ιύζε είλαη y y x 3y y x 3 2x 6y y x x y 6 x 2y 1 y 6

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

4) Να γξάςεηε δηαδηθαζία (πξόγξακκα) ζηε Logo κε όλνκα θύθινο πνπ ζα ζρεδηάδεη έλα θύθιν. Λύζε Γηα θύθινο ζηθ επαλάιαβε 360 [κπ 1 δε 1] ηέινο

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code)

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

Εγκατάσταση του πακέτου XAMPP. Β Τεχνική Σχολή Λεμεςοφ Σχολική χρονιά Άριςτοσ Παςιάσ

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

ΘΔΜΑ 1 ο Μονάδες 5,10,10

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Έκδοζη /10/2014. Νέα λειηοσργικόηηηα - Βεληιώζεις

Τάπηα με ππάζo, bacon και θέηα by Madame Ginger

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

Έλεγτος Ορθογραθίας - Γραμμαηικής. Ορθογραθικός και Γραμμαηικός Έλεγτος

ΔΠΙΣΡΟΠΗ ΓΙΑΓΩΝΙΜΩΝ 74 ος ΠΑΝΔΛΛΗΝΙΟ ΜΑΘΗΣΙΚΟ ΓΙΑΓΩΝΙΜΟ ΣΑ ΜΑΘΗΜΑΣΙΚΑ Ο ΘΑΛΗ 19 Οκηωβρίοσ Δνδεικηικές λύζεις

γηα ηνλ Άξε Κσλζηαληηλίδε

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Εισαγωγή στη Φωτογραυία. Χριζηάκης Σαζεΐδης - EFIAP

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

Κεθάλαιο 7. Πξνζθνξά ηνπ θιάδνπ Μ. ΨΥΛΛΑΚΗ

ΣΔΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΔΧΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΔΠΙΚΟΙΝΩΝΙΩΝ ΧΔΙΜΔΡΙΝΟ ΔΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

Image J Plugin particle tracker για παρακολούθηση της κίνησης σωματιδίων

Αντισταθμιστική ανάλυση

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013

Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και. εκτέλεση ππογπάμματορ

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

ΥΡΙΣΟΤΓΔΝΝΙΑΣΙΚΔ ΚΑΣΑΚΔΤΔ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΣΗΜΑΤΩΝ & ΣΥΣΤΗΜΑΤΩΝ. ΜΕΤΑΣΦΗΜΑΤΙΣΜΟΣ Laplace

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

ΓΔΧΜΔΣΡΙΑ ΓΙΑ ΟΛΤΜΠΙΑΓΔ

ΕΞΙΣΩΣΕΙΣ. (iv) (ii) (ii) (ii) 5. Γηα ηηο δηάθνξεο ηηκέο ηνπ ι λα ιπζνύλ νη εμηζώζεηο : x 6 3 9x

ΑΠΛΟΠΟΙΗΗ ΛΟΓΙΚΩΝ ΤΝΑΡΣΗΕΩΝ ΜΕ ΠΙΝΑΚΕ KARNAUGH

Διαςτήματα εμπιςτοςφνησ για την ευθεία παλινδρόμηςησ

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γεσηέρα 10 Ηοσνίοσ 2019 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

Transcript:

Intel Accelerate Your Code Semester Project at Parallel & Distributed systems Dimitrios S. Tsiktsiris University of Western Macedonia Department of Informatics & Telecommunications Engineering Kozani, Greece tsiktsiris@sch.gr Kimon P. Mantzaris University of Western Macedonia Department of Informatics & Telecommunications Engineering Kozani, Greece st0525@icte.uowm.gr I. ΕΙΑΓΩΓΗ θνπόο ηνπ θώδηθα είλαη λα βξίζθεη patterns δειαδή pixels κε ζπγθεθξηκέλε ζεηξά αλάκεζα ζε 2 ή θαη πεξηζζόηεξεο θσηνγξαθίεο. Θα κπνξνύζε λα ρξεζηκνπνηεζεί ώζηε λα αλαγλσξίδεη πξόζσπα, θηίξηα ή νηηδήπνηε άιιν αθόκα θαη ζε κεγάιεο αλάιπζεο θσηνγξαθίεο (όπσο πρ ελόο δνξπθόξνπ). ηελ εξγαζία απηή θαινύκαζηε λα παξαιιεινπνηήζνπκε ηνλ θώδηθα ρξεζηκνπνηώληαο ηηο ηερλνινγίεο OpenMP θαη OpenMPI. Οη κεηξήζεηο έγηλαλ ζε VM ηνπ GRNET ζε δηπύξηλν επεμεξγαζηή QEMU ρξνληζκέλν ζηα 2,1 GHz. Γηα ηελ εθηέιεζε ηνπ πξνγξάκκαηνο ρξεζηκνπνηήζακε ubuntu 12.04 θαη ηελ εληνιή time ώζηε λα κεηξήζνπκε ηνλ ρξόλν εθηέιεζεο. II. ΑΝΑΛΤΗ ΚΩΔΙΚΑ Ο πεγηαίνο θώδηθαο ηνπ πξνγξάκκαηνο απνηειείηαη απν ην θύξην αξρέην main.cpp ζην νπνίν γίλνληαη νη πεξηζζόηεξνη ππνινγηζκνί θαη ε ζύγθξηζε ησλ pixels θαη ην αξρείν BitmapImporter.cpp ην νπνίν είλαη ππεύζπλν γηα ηελ θόξησζε ησλ εηθόλσλ bitmap ζηε κλήκε ώζηε λα είλαη δπλαηή ε επεμεξγαζία ηνπο αξγόηεξα. Εκείο ζα αζρνιεζνύκε θπξίσο κε ην main.cpp θαη εηδηθόηεξα κε ην ζεκείν ηνπ θώδηθα πνπ μεθηλάεη ε ζύγθξηζε ησλ εηθόλσλ. Σν ζεκείν απηό βξίζθεηαη ζηελ ζεηξά 156 από ην master branch ηνπ project (ην branch πνπ πεξηέρεη ηνλ ζεηξηαθό θώδηθα). Απν εθεί μεθηλάεη κηα ζεηξά απν for loops νη νπνίεο θαηαλαιώλνπλ ηνλ κεγαιύηεξν ρξόλν θαηα ηελ εθηέιεζε ηνπ πξνγξάκκαηνο. Σν ζεκείν απηό ινηπνλ απνηειεί θξίζηκν ζεκείν (hotspot) θαη ζα επηθεληξσζνύκε εδώ γηα λα παξαιιεινπνηήζνπκε ηνλ θώδηθά καο. IV. ΠΑΡΑΛΛΗΛΟΠΟΙΗΗ ΜΕ OPENMPI Η παξαιιεινπνίεζε κε ην OpenMPI είλαη πην πνιύπινθε. Αξρηθά ζα πξέπεη λα δεκηνπξγήζνπκε κηα δνκή ζην MPI ε νπνία ζα πεξηέρεη: 1. Σν pattern id ηεο εηθόλαο ε νπνία βξέζεθε ζηελ θπξίσο εηθόλα. Είλαη ηα 3 πξώηα γξάκκαηα από ην όλνκα αξρείνπ ηεο εηθόλαο. 2. Σελ ζπληεηαγκέλε x ε νπνία είλαη ην πιάηνο ηνπ ζεκείνπ ζην νπνίν βξέζεθε pattern ζηελ θπξίσο εηθόλα. 3. Σελ ζπληεηαγκέλε y ε νπνία είλαη ην ύςνο ηνπ ζεκείνπ ζην νπνίν βξέζεθε pattern ζηελ θπξίσο εηθόλα. Όιεο νη κεηαβιεηέο ηεο δνκήο καο είλαη ηύπνπ INT (αθέξαηνο). Έηζη ινηπόλ δεκηνπξγήζακε ηνλ ηύπν κεηαβιεηήο θαη ηνλ θάλακε θαηαρώξεζε ζην MPI (branch openmpi, αξρείν main.cpp, ζεηξά 148). Απηό ην θάλακε γηαηί αξγόηεξα ζα πξέπεη λα ζηέιλνπκε ηελ δνκή κεηαμύ ησλ ranks κε ηηο εληνιέο MPI_Send & MPI_Recv. ηε ζπλέρεηα ηξνπνπνηήζακε έηζη ηα for loops ώζηε αλάινγα κε ηελ πνζόηεηα ησλ ranks γηλεηαη έλαο θαηαθεξκαηηζκόο ηεο εηθόλαο ζε κηθξόηεξα θνκκάηηα ζηα νπνία εηδηθεύεηαη ην θάζε rank. Γηα παξάδεηγκα κηα θσηνγξαθία κε αλάιπζε 10.000x10.000 κε 4 ranks ηόηε ην 1 ν ζα ειέγμεη ηα pixels πνπ αληηζηνηρνύλ ζηελ πεξηνρή [0-2.500]x10.000, ην 2 ν ζα ειέγμεη ηα pixels πνπ αληηζηνηρνύλ ζηελ πεξηνρή [2.500-5.000] x10.000 θ.η.ι. III. ΠΑΡΑΛΛΗΛΟΠΟΙΗΗ ΜΕ OPENMP Η παξαιιεινπνίεζε κε OpenMP έγηλε ζην branch openmp, παξαιιεινπνηώληαο ην δεύηεξν for loop. Η παξαιιεινπνίεζε έγηλε κε ηελ εληνιή #pragma omp parallel for ρσξίο λα ρξεηάδνληαη private ε shared κεηαβιεηέο θαη καο νδεγεί ζε κηα κείσζε ~34 δεπηεξνιέπησλ, δειαδή έρνπκε 36% speedup ζηνλ ρξόλν εθηέιεζεο. Σα απνηειέζκαηα από ηελ εθηέιεζε είλαη ίδηα κε ηα απνηειέζκαηα ηνπ ζεηξηαθνύ θώδηθα.

Γηα παξάδεηγκα ζηελ παξαπάλσ εηθόλα αλ ππνζέζνπκε όηη ηξέρνπκε ην πξόγξακκα κε 3 ranks ηόηε: To rank 1 ζα ειέγμεη ηα pixels πνπ αληηζηνηρνύλ ζηελ πξάζηλε πεξηνρή Σν rank 2 ζα ειέγμεη ηα pixels πνπ αληηζηνηρνύλ ζηελ γαιάδηα Σν rank 3 ζα ειέμεη ηα pixels πνπ αληηζηνηρνύλ ζηελ θόθθηλε πεξηνρή Εαλ βξεζεί απνηέιεζκα (δειαδή έρνπκε match) ηόηε ην θάζε rank ζηέιλεη ηα δεδνκέλα πνπ βξήθε ζην master rank ην νπνίν θαη ηα εθηππώλεη (branch openmpi, αξρείν main.cpp, ζεηξά 202). Σν πξόβιεκα εδώ είλαη όηη ηα απνηειέζκαηα δελ εκθαλίδνληαη ζε αιθαβεηηθή ζεηξά (δειαδή δελ γίλνληαη sort απν ην κεγαιύηεξν ζην κηθξόηεξν) όπσο γίλεηαη ζην ζεηξηαθό θαη ζην openmp δηόηη πιένλ δελ βξίζθνληαη ζε δπλακηθή ιίζηα. Παξ όια απηά ηα απνηειέζκαηα επαιεζεύνπλ όηη ε παξαιιεινπνίεζε έγηλε ζσζηά θαη πιένλ έρνπκε έλα speedup 73% πνπ ηζνδπλακεί κε κηα κείσζε 92 δεπηεξνιέπησλ ζηνλ ρξόλν εθηέιεζεο. V. COMPILE & ΕΚΣΕΛΕΗ Γηα λα θάλνπκε compile ρξεζηκνπνηνύκε ηελ εληνιή make all. Γηα λα γίλεη εθηέιεζε ηνπ πξνγξάκκαηνο κπαίλνπκε ζην θάθειν test_case_1 νπνπ βξίζθνληαη νη εηθόλεο, θαη ηξέρνπκε ην πξόγξακκα κε πξώηε παξάκεηξν ην scale ησλ εηθόλσλ, δεύηεξε ηα threads πνπ ζα ρξεζηκνπνηήζνπκε, ηξίηε παξάκεηξν ην όλνκα αξρείνπ ηεο θύξηαο εηθόλαο, ηέηαξηε ην όλνκα αξρείνπ ηεο πξώηεο εηθόλαο κε ην pattern θ.η.ι. Ελδεηθηηθή εληνιή γηα εθηέιεζε ππάξρεη θαη ζην αξρείν program_call_example. VI. ΕΠΙΛΟΓΟ Γηα ηελ αλάπηπμε ηνπ θώδηθα ρξεζηκνπνηήζακε ην ζύζηεκα εθδόζεσλ ινγηζκηθνύ GIT θαη ην www.github.com Σν repository κε ηνλ θώδηθα βξίζθεηαη ζηελ δηεύζπλζε https://github.com/tsiktsiris/ayc_final/ Δελ ρξεζηκνπνηήζακε θακία βνήζεηα παξα κόλν θαπνηεο πιεξνθνξίεο απν ηελ επίζεκε ηζηνζειίδα ηνπ OpenMPI www.open-mpi.org

Screenshots εηξηαθόο ρξόλνο εθηέιεζεο θαη απνηειέζκαηα

Υξόλνο εθηέιεζεο ηνπ παξαιιεινπνηεκέλνπ ζε OpenMP πξνγξάκκαηνο θαη απνηειέζκαηα

Δευτερόλεπτα Υξόλνο εθηέιεζεο ηνπ παξαιιεινπνηεκέλνπ ζε OpenMPΙ πξνγξάκκαηνο θαη απνηειέζκαηα 150 time (s) 100 50 0 Σεριακό OpenMP OpenMPI time (s) 126 92 34