Title: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: nlogn on October 25, 2015, 15:12:57 pm Topic που αφορά την 1η εργασία του μαθήματος. Stay on topic!
Η εργασία έχει ανέβει στο Περιεχόμενα/Ασκήσεις στο eTHMMY. deadline Πέμπτη 12 Νοεμβρίου 2015 Δείτε αναλυτικά εδώ http://alexander.ee.auth.gr:8083/eTHMMY/archive%5C173%5CdownloadFile%5C6192%5Cbitonic-pthreads.pdf και εδώ ο κώδικας http://alexander.ee.auth.gr:8083/eTHMMY/archive%5C173%5CdownloadFile%5C6192%5Cbitonic.c Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: christineL on October 26, 2015, 20:01:16 pm Έχει ασχοληθεί κανείς με την εργασία; Έχω μία απορία: Στην περίπτωση των pthreads στην recursive sort , πώς ελέγχετε αν ο αριθμός των threads έχει ξεπεράσει το 256; Ή για να το θέσω καλύτερα, τι κάνουμε στην περίπτωση αυτή; Επιστρέφουμε μήνυμα και τερματίζουμε;
Γενικά από ότι κατάλαβα, pthreads και recursive αλγόριθμοι δεν τα πάνε καλά γιατί δημιουργούν υπερβολικά μεγάλο αριθμό threads. Γι αυτό στα extra αναφέρει την χρήση της qsort σε συνδυασμό μe threads στην περίπτωση που ξεπεράσουμε τον μέγιστο αριθμό; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dealan on October 26, 2015, 20:48:02 pm Σωστά κατάλαβες.
Στην συγκεκριμένη περίπτωση, για να αποφύγεις να έχεις πάνω από 256 threads μπορείς απλά να χωρίσεις τον πίνακα σε 8 κομμάτια,να κάνεις μια αναδρομή κανονικά, και από δεύτερη αναδρομή και μετά να χρησιμοποιείς τον σειριακό κώδικα. (Σε πιο πολύπλοκες περιπτώσεις φαντάζομαι μπορείς να μετράς με κώδικα τον αριθμό των threads φαντάζομαι αλλά δεν παίζει να βολεύει.) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on October 27, 2015, 00:55:05 am (Σε πιο πολύπλοκες περιπτώσεις φαντάζομαι μπορείς να μετράς με κώδικα τον αριθμό των threads φαντάζομαι αλλά δεν παίζει να βολεύει.) Βασικά δουλεύει, μπορείς να βλέπεις real-time πόσα threads είναι active και να αναθέτεις ένα thread μόνο αν τα active threads είναι κάτω από ένα όριο που θα διαλέξεις εσύ. Στην ουσία είναι σαν να έχεις ένα pool με τα ελεύθερα threads και να αναθέτεις δουλειά σε κάποιο από αυτά, εφόσον το pool δεν είναι άδειο. Αλλιώς εκτελείς σειριακά. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: nlogn on October 29, 2015, 14:07:53 pm Ξέρει κανείς αν ο Πιστιάνης έχει απαιτήσεις από άποψη αποδοτικότητας του αλγορίθμου σε αυτή την εργασία?
Δηλαδή εγώ έχω φτιάξει έναν αλγόριθμο με pthreads, αλλά τρέχει αργά (ελάχιστος χρόνος παράλληλης υλοποίησης = 60 % σειριακής υλοποίησης ) θα βαθμολογηθεί ως κακή εργασία? Θα πρέπει οπωσδήποτε να τον διορθώσω? Επίσης που στο καλό είναι αυτό το diades?? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dimitris1989 on October 29, 2015, 14:16:45 pm Γενικά είναι πολυ ελαστικός στην βαθμολόγηση, ειδικά αν τρέχει το πρόγραμμα.
Σε μια περσινή εργασία η οποία έβγαζε λάθος αποτέλεσμα (έτρεχε χωρίς σφάλματα όμως) μου έβαλε 9 Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on October 29, 2015, 16:30:59 pm Επίσης που στο καλό είναι αυτό το diades?? Αν διαβάσεις τα topics των προηγούμενων ετών θα δεις ότι είχαν ανέβει οδηγίες στο ethmmy οπότε υπομονή..δε φαίνεται να είναι κάτι το ιδιαίτερο από τη στιγμή που έχεις ήδη γράψει κώδικα που τρέχει στο δικό σου pc. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: rspappas on October 29, 2015, 17:31:45 pm η πρωτη εργασια μπορει να γινει καλλιστα σε προσωπικο υπολογιστη. και μαλλον θα ειναι και πιο ανωδυνο γενικα.
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: thomasdf on October 30, 2015, 20:06:34 pm http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm (http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm)
Παιδιά οι διαφάνειες που προτείνονται στα ελληνικά για ευκολία. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: SportBillyPap on October 30, 2015, 23:18:19 pm http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm (http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm) Υπαρχουν και στα downloads :PΠαιδιά οι διαφάνειες που προτείνονται στα ελληνικά για ευκολία. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on October 30, 2015, 23:33:28 pm Ξέρει κανείς αν ο Πιστιάνης έχει απαιτήσεις από άποψη αποδοτικότητας του αλγορίθμου σε αυτή την εργασία? Δηλαδή εγώ έχω φτιάξει έναν αλγόριθμο με pthreads, αλλά τρέχει αργά (ελάχιστος χρόνος παράλληλης υλοποίησης = 60 % σειριακής υλοποίησης ) θα βαθμολογηθεί ως κακή εργασία? Θα πρέπει οπωσδήποτε να τον διορθώσω? Επίσης που στο καλό είναι αυτό το diades?? Υπάρχουν κάποιες απαιτήσεις, αλλά και να μην τηρείς το πολύ να πάρεις 9.5 αντί για 10. Πιο πολύ ο Πιτσιάνης κοιτάει το πώς προσεγγίζες/περιγράφεις το πρόβλημα και πώς παίρνεις τα αποτελέσματα και όχι τόσο το να φτάσεις την απόδοση στο μέγιστο. Προφανώς υπάρχουν και κάποια όρια, όπως το να μην κάνεις παράλληλο κώδικα ο οποίος να είναι χειρότερος απο το σειριακό κτλπ Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: thomasdf on October 30, 2015, 23:40:53 pm http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm (http://pdplab.it.uom.gr/teaching/llnl-gr/POSIX%20Threads%20Programming.htm) Υπαρχουν και στα downloads :PΠαιδιά οι διαφάνειες που προτείνονται στα ελληνικά για ευκολία. Δεν το είχα προσέξει! :P Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: jthois on October 31, 2015, 11:05:22 am Γενικά είναι πολυ ελαστικός στην βαθμολόγηση, ειδικά αν τρέχει το πρόγραμμα. Εμάς πάντως πέρσι μας χαντακωσε. Οι περισσότεροι είχαμε παράπονα από τη βαθμολογία. Κυρίως, γιατί ήταν πολύ αντιφατικός λέγοντας πως σε αυτό το μάθημα μετράει πιο πολύ η δουλειά που θα κάνετε και όχι το αποτέλεσμα, και είδαμε φουλ δουλεμενες εργασίες που δεν είχαν αποτελέσματα με αξιοπρεπή αναφορά κτλ να μην παίρνουν βαθμό. Όπως επίσης και εργασίες που έτρεχαν με σωστά αποτελέσματα να μην παίρνουν πάνω από 7-8 γιατί όλο και κάτι έβρισκε να κόψει. Σε μια περσινή εργασία η οποία έβγαζε λάθος αποτέλεσμα (έτρεχε χωρίς σφάλματα όμως) μου έβαλε 9 Τεσπα, το μάθημα το παιρνεις για να μάθεις αυτά που δεν θα σου διδάξει κανένας άλλος στη σχολή, οπότε μην ασχολειστε πολύ με το βαθμό Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 01, 2015, 20:50:22 pm Επειδή οι μέρες περνάνε και η εργασία δε προχωράει ...
Έχω το εξής θέμα : Λεω να βάλω μέσα στην recBitonicSort να δημιουργούνται 2 καινούρια θρεντς κάθε φορά.. Έχω κάνει την recBitonicSort pointer, έχω βάλει και όλα τα args σε έναν void ποιντερ.... Απο κει και πέρα στην δημιουργία του θρεντ πρέπει να δηλώσω σε ποια θέση της μεταβλητής threads να γραφτεί η διεύθυνση του θρεντ που δημιουργείται ... Πως όμως θα γίνει αυτό αφού η δήλωση pthread_t threads[NUM_THREADS] έχει γίνει μέσα στην main ? Πρέπει να περάσω κι αυτή τη πληροφορία στην recBitonicSort ? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: et3rn1ty on November 01, 2015, 21:42:57 pm Επειδή οι μέρες περνάνε και η εργασία δε προχωράει ... Έχω το εξής θέμα : Λεω να βάλω μέσα στην recBitonicSort να δημιουργούνται 2 καινούρια θρεντς κάθε φορά.. Έχω κάνει την recBitonicSort pointer, έχω βάλει και όλα τα args σε έναν void ποιντερ.... Απο κει και πέρα στην δημιουργία του θρεντ πρέπει να δηλώσω σε ποια θέση της μεταβλητής threads να γραφτεί η διεύθυνση του θρεντ που δημιουργείται ... Πως όμως θα γίνει αυτό αφού η δήλωση pthread_t threads[NUM_THREADS] έχει γίνει μέσα στην main ? Πρέπει να περάσω κι αυτή τη πληροφορία στην recBitonicSort ? Μπορείς να την έχεις global την μεταβλητή. Γενικά για threads και mutexes βολεύει περισσότερο να είναι global παρά να τα περνάς ως όρισμα Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 01, 2015, 21:54:33 pm Μπορείς να την έχεις global την μεταβλητή. Γενικά για threads και mutexes βολεύει περισσότερο να είναι global παρά να τα περνάς ως όρισμα :D :D <3 Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: WatchDog on November 03, 2015, 13:12:18 pm Για το πρόγραμμα,χρησιμοποιούμε αυτούσιο τον κώδικα του,και κάνουμε μόνο την παραλληλοποίηση,ή παίρνουμε έτοιμες μόνο τις συναρτήσεις (επαναληπτική ή αναδρομική) και τις παραλληλοποιούμε,και το υπόλοιπο πρόγραμμα το στήνουμε μόνοι μας?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 03, 2015, 14:48:31 pm Για το πρόγραμμα,χρησιμοποιούμε αυτούσιο τον κώδικα του,και κάνουμε μόνο την παραλληλοποίηση,ή παίρνουμε έτοιμες μόνο τις συναρτήσεις (επαναληπτική ή αναδρομική) και τις παραλληλοποιούμε,και το υπόλοιπο πρόγραμμα το στήνουμε μόνοι μας? Του είχα στείλει μειλ με την ίδια απορία πριν 2 μέρες. Μου απάντησε να κάνουμε οτι θέλουμε. Προσωπικά απλά έκανα copy - paste τα κομμάτια κώδικα απο το bitonic.c σε ένα άλλο αρχείο και εκεί έστησα και το υπόλοιπο.. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: rspappas on November 03, 2015, 15:55:51 pm παντως εχει νοημα να κρατησεις το προγραμμα ως εχει, να αφησεις ας πουμε απειραχτη την επαναληπτικη εκδοση, και να κανεις εκει κατευθειαν τις αλλαγες στο αναδρομικο
οποτε βλεπεις αμεσα την διαφορα με την παραλληλοποιημενη εκδοση που δουλευεις, στους χρονους εκτελεσης Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 03, 2015, 16:05:02 pm παντως εχει νοημα να κρατησεις το προγραμμα ως εχει, να αφησεις ας πουμε απειραχτη την επαναληπτικη εκδοση, και να κανεις εκει κατευθειαν τις αλλαγες στο αναδρομικο οποτε βλεπεις αμεσα την διαφορα με την παραλληλοποιημενη εκδοση που δουλευεις, στους χρονους εκτελεσης Πρέπει να κρατήσετε όλες τις εκδοχές, οπότε πρέπει να προσθέσετε κανούριες συναρτήσεις και όχι απλά να αλλάξετε αυτές. Ουσιαστικά μπορείτα να τις κάνετε copy-paste στο ίδιο πρόγραμμα και να τις αλλάξετε. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Gaara on November 03, 2015, 16:15:42 pm Από εκφώνηση:
-οποιοδήποτε αριθμό νημάτων που είναι δύναμή του 2, μικρότερη του 256 Άρα μέχρι 8 threads? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 03, 2015, 16:22:58 pm Από εκφώνηση: 128 μου φαινεται εμενα-οποιοδήποτε αριθμό νημάτων που είναι δύναμή του 2, μικρότερη του 256 Άρα μέχρι 8 threads? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Gaara on November 03, 2015, 16:30:02 pm edit: Άκυρο
Σαν input ηθελα να πω 8, αρα 256 threads. Btw έχουμε acc για ssh? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 03, 2015, 16:42:53 pm Θα πρεπει να σας εχει στειλει καπου accounts. Οσο για τα νηματα λεει οτι πρεπει να ειναι δυναμη του 2. Δηλαδη 1,2,4,8...
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 04, 2015, 23:37:16 pm Αδέρφια μου...
Πως μπορώ να κάνω την qsort() να σορτάρει κατα φθίνουσα σειρά ? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 04, 2015, 23:38:57 pm Πάτα man qsort έχει και παράδειγμα
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 04, 2015, 23:39:35 pm Αδέρφια μου... Πως μπορώ να κάνω την qsort() να σορτάρει κατα φθίνουσα σειρά ? Αλλάζεις το πρόσημο του return value της compare-function που χρησιμοποιείς. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: christineL on November 05, 2015, 12:51:12 pm Για τον Διάδη, ξέρει κανείς που πρέπει να μπούμε και τι πρέπει να κάνουμε ακριβώς; Γιατί περνάνε οι μέρες...
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 05, 2015, 12:59:09 pm Για τον Διάδη, ξέρει κανείς που πρέπει να μπούμε και τι πρέπει να κάνουμε ακριβώς; Γιατί περνάνε οι μέρες... Εχει στειλει mail με τις οδηγιες.Αν δεν σου εχουν ερθει,πες και θα σου το στειλουμε.Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: christineL on November 05, 2015, 13:52:19 pm Για τον Διάδη, ξέρει κανείς που πρέπει να μπούμε και τι πρέπει να κάνουμε ακριβώς; Γιατί περνάνε οι μέρες... Εχει στειλει mail με τις οδηγιες.Αν δεν σου εχουν ερθει,πες και θα σου το στειλουμε.Όντως μου είχε έρθει το email και δεν το είχα δει. Ευχαριστώ Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 05, 2015, 16:53:39 pm Παίδες ενώ για q = 24 η παράλληλη υλοποίηση της bitonicSort που έχω κανει ειναι πιο γρήγορη απο την αντίστοιχη σειριακή, παρόλαυτα η απλή qsort() το κάνει σε σχεδόν μισό χρόνο ...
Bitonic_Serial : 41s Bitonic_Parallel : 7.9s qSort : 3.9s Ειναι λογικοί αυτοί οι χρόνοι ? Νιώθω λίγο άβολα να με πατάει ένας σειριακός αλγόριθμος :D Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 05, 2015, 17:02:14 pm Παίδες ενώ για q = 24 η παράλληλη υλοποίηση της bitonicSort που έχω κανει ειναι πιο γρήγορη απο την αντίστοιχη σειριακή, παρόλαυτα η απλή qsort() το κάνει σε σχεδόν μισό χρόνο ... Bitonic_Serial : 41s Bitonic_Parallel : 7.9s qSort : 3.9s Ειναι λογικοί αυτοί οι χρόνοι ? Νιώθω λίγο άβολα να με πατάει ένας σειριακός αλγόριθμος :D Η παράλληλη υλοποίηση Bitonic Sort θα έπρεπε να είναι σίγουρα πιο γρήγορη από την Quick Sort. Η σειριακή υλοποίηση Bitonic Sort θα πρέπει να είναι η πιο αργή απ 'όλα. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: dimi93gr on November 05, 2015, 17:20:29 pm Για q=24, πόσα είναι τα νήματα; 2^24;
Μήπως είναι πολλά; Για 2 ή 4 νήματα τι χρόνους έχεις; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 05, 2015, 18:27:10 pm Για q=24, πόσα είναι τα νήματα; 2^24; Μήπως είναι πολλά; Για 2 ή 4 νήματα τι χρόνους έχεις; To 2^q είναι το μήκος του πίνακα,όχι ο αριθμός των νημάτων.Για 2^24 μήκος πίνακα και 2^4 νήματα, qsort=3.057 Bitonic serial recursive=7.969 Bitonic serial imperative=8.153 Bitonic parallel openmp=4.07 (σε cygwin,δεν έχω κάνει για pthreads ακόμα). Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 05, 2015, 18:34:05 pm Έχω βάλει την recBitonicSort να δημιουργεί ένα νήμα που θα ξεκινάει δουλειά στον "αριστερο" υποπίνακα :
// Thread creation pthread_create(&threads[counter++],NULL,recBitonicSort,(void *) argum); pthread_join(threads[counter - 1],NULL); Και μετά τον "δεξί" υποπίνακα την αφήνω να συνεχίσει σειριακά.... Μήπως φταίει το pthread_join ? Αλλά απο την άλλη χωρίς αυτό απλά επικρατεί χάος, δε τρέχει σωστά (Ο counter απλά ελέγχει τα νήματα και δε δημιουργεί καινούρια όταν counter > 256 ) >:( Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 06, 2015, 01:11:08 am Έχω βάλει την recBitonicSort να δημιουργεί ένα νήμα που θα ξεκινάει δουλειά στον "αριστερο" υποπίνακα : // Thread creation pthread_create(&threads[counter++],NULL,recBitonicSort,(void *) argum); pthread_join(threads[counter - 1],NULL); Και μετά τον "δεξί" υποπίνακα την αφήνω να συνεχίσει σειριακά.... Μήπως φταίει το pthread_join ? Αλλά απο την άλλη χωρίς αυτό απλά επικρατεί χάος, δε τρέχει σωστά (Ο counter απλά ελέγχει τα νήματα και δε δημιουργεί καινούρια όταν counter > 256 ) >:( καμια ιδεα ρε παιδια?? >:( >:( οι χρονοι βελτιωνονται λιγο αν απο καποιο μεγεθος του πινακα κ κατω χρησιμοποιησω qsort αλλα παλι το παραλληλο ειναι πιο αργο απο την qsort Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 06, 2015, 20:10:17 pm Βλέποντας τα περσυνά σχόλια του Πιτσιάνη στις εργασίες αναρωτιέμαι ...
Θέλει να δοκιμάσουμε τους αλγόριθμους και για προβλήματα μεγέθους μεγαλύτερα του 2 ^ 24 ? Επίσης, όταν εννοεί να αναφέρουμε τους ελέγχους ορθότητας που χρησιμοποιήσαμε τι εννοεί ακριβώς ? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 06, 2015, 20:44:35 pm Βλέποντας τα περσυνά σχόλια του Πιτσιάνη στις εργασίες αναρωτιέμαι ... Μεγεθος μεχρι εκει που σου λεει. Για ορθοτητα,πρεπει να του πεις πως καταλαβες οτι το προγραμμα σου εκανε την δουλεια του; Π.χ. χρησιμοποιησε qsort και συγκρινε.Θέλει να δοκιμάσουμε τους αλγόριθμους και για προβλήματα μεγέθους μεγαλύτερα του 2 ^ 24 ? Επίσης, όταν εννοεί να αναφέρουμε τους ελέγχους ορθότητας που χρησιμοποιήσαμε τι εννοεί ακριβώς ? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 06, 2015, 20:50:12 pm Εχει έτοιμη συνάρτηση,την test(),γιατί να θέλει να μπλέξεις και με την qsort στον έλεγχο?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Κηπουρίδης on November 06, 2015, 21:24:46 pm Με τι εντολή κάνουμε compile την cilk στο diades;
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 07, 2015, 00:01:30 am Την διάλεξη για την Cilk την έχει ανεβάσει κάπου ?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Κηπουρίδης on November 07, 2015, 02:34:48 am Με τι εντολή κάνουμε compile την cilk στο diades; Αν κανεις δε βρηκε ακομα πως κανουμε compile με CilkPlus οι οδηγιες ειναι εδω :https://www.cilkplus.org/build-gcc-cilkplus στην ενοτητα Using the GCC compilers with the Cilk™ Plus extensions Απλα πρεπει παντου να αντικαταστησουμε το $HOME με /export/home/markioan και λειτουργει. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Gaara on November 07, 2015, 13:20:05 pm Την διάλεξη για την Cilk την έχει ανεβάσει κάπου ? Εδώ είσα (http://supertech.csail.mit.edu/cilk/lecture-1.pdf) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 07, 2015, 16:49:43 pm Παίδες ενώ για q = 24 η παράλληλη υλοποίηση της bitonicSort που έχω κανει ειναι πιο γρήγορη απο την αντίστοιχη σειριακή, παρόλαυτα η απλή qsort() το κάνει σε σχεδόν μισό χρόνο ... Bitonic_Serial : 41s Bitonic_Parallel : 7.9s qSort : 3.9s Ειναι λογικοί αυτοί οι χρόνοι ? Νιώθω λίγο άβολα να με πατάει ένας σειριακός αλγόριθμος :D Τι φάση, -Ο3 στο σειριακό δεν βάζεις; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 07, 2015, 19:41:03 pm Παίδες ενώ για q = 24 η παράλληλη υλοποίηση της bitonicSort που έχω κανει ειναι πιο γρήγορη απο την αντίστοιχη σειριακή, παρόλαυτα η απλή qsort() το κάνει σε σχεδόν μισό χρόνο ... Bitonic_Serial : 41s Bitonic_Parallel : 7.9s qSort : 3.9s Ειναι λογικοί αυτοί οι χρόνοι ? Νιώθω λίγο άβολα να με πατάει ένας σειριακός αλγόριθμος :D Τι φάση, -Ο3 στο σειριακό δεν βάζεις; Όχι, ο χρόνος στον σειριακό βγαίνει απο την έτοιμη έκδοση που έχει στο ετημμυ... Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Ragnar Lothbrok on November 07, 2015, 20:01:31 pm Εχω βαλει το cygwin και εχω το εξης προβλημα. Ακομα και την υλοποιηση του πιτσιανη, που ειναι αλανθαστη προφανως, δεν την τρεχει. Δεν βγαζει σφαλμα, αλλα δεν μου εμφανιζει τιποτα, ουτε ενα αποτελεσμα καποιας printf. Τιποτα. Any ideas?
(ανεβαζω ακριβως και την εικονα του τερματικου) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 07, 2015, 20:06:52 pm Εκανες μόνο compile,δεν έτρεξες τίποτα.
Δοκίμασε καλύτερα gcc -O4 -pitsianis.c -o silvoban (το -lpthread είναι άχρηστο αφού δεν έχες κώδικα με pthreads) και μετά ./silvoban (α και βάλε ubuntu) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 07, 2015, 20:07:15 pm Εχω βαλει το cygwin και εχω το εξης προβλημα. Ακομα και την υλοποιηση του πιτσιανη, που ειναι αλανθαστη προφανως, δεν την τρεχει. Δεν βγαζει σφαλμα, αλλα δεν μου εμφανιζει τιποτα, ουτε ενα αποτελεσμα καποιας printf. Τιποτα. Any ideas? (ανεβαζω ακριβως και την εικονα του τερματικου) αυτη η εντολη σου δημιουργει ενα εκτελεσιμο αρχειο πχ a.exe για να τρεξεις τον κωδικα απλως δινεις την εντολη ./a.exe Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 07, 2015, 20:17:38 pm Τι φάση, -Ο3 στο σειριακό δεν βάζεις; Όχι, ο χρόνος στον σειριακό βγαίνει απο την έτοιμη έκδοση που έχει στο ετημμυ... Ναι, αλλά ακόμα και τον σειριακό κώδικα πρέπει να τον κάνεις compile, και αυτό μπορείς να το κάνεις με το option -O3 όπως λέει ο c0ndemn3d. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Ragnar Lothbrok on November 07, 2015, 20:21:10 pm Εκανες μόνο compile,δεν έτρεξες τίποτα. Δοκίμασε καλύτερα gcc -O4 -pitsianis.c -o silvoban (το -lpthread είναι άχρηστο αφού δεν έχες κώδικα με pthreads) και μετά ./silvoban (α και βάλε ubuntu) μου βγαζει segmentation fault(core dumped) (ναι τωρα θα βαλω) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Tracy_McGrady on November 07, 2015, 20:23:42 pm Εκανες μόνο compile,δεν έτρεξες τίποτα. Δοκίμασε καλύτερα gcc -O4 -pitsianis.c -o silvoban (το -lpthread είναι άχρηστο αφού δεν έχες κώδικα με pthreads) και μετά ./silvoban (α και βάλε ubuntu) μου βγαζει segmentation fault(core dumped) (ναι τωρα θα βαλω) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 07, 2015, 20:41:18 pm Τι φάση, -Ο3 στο σειριακό δεν βάζεις; Όχι, ο χρόνος στον σειριακό βγαίνει απο την έτοιμη έκδοση που έχει στο ετημμυ... Ναι, αλλά ακόμα και τον σειριακό κώδικα πρέπει να τον κάνεις compile, και αυτό μπορείς να το κάνεις με το option -O3 όπως λέει ο c0ndemn3d. Γιατι ρε συ και σκέτο gcc bitonic.c το ίδιο δεν είναι ? Edit : Άκυρο, τώρα είδα τι κάνει το -O3, θα το δοκιμάσω.. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 07, 2015, 20:45:33 pm Τι φάση, -Ο3 στο σειριακό δεν βάζεις; Όχι, ο χρόνος στον σειριακό βγαίνει απο την έτοιμη έκδοση που έχει στο ετημμυ... Ναι, αλλά ακόμα και τον σειριακό κώδικα πρέπει να τον κάνεις compile, και αυτό μπορείς να το κάνεις με το option -O3 όπως λέει ο c0ndemn3d. Γιατι ρε συ και σκέτο gcc bitonic.c το ίδιο δεν είναι ? Ε αυτό λέμε, δεν είναι το ίδιο. Αν βάλεις το option -O3 ο compiler κάνει optimizations που προκαλούν ταχύτερη εκτέλεση του κώδικα. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: SportBillyPap on November 07, 2015, 21:17:41 pm Στον διαδη ετρεξε κανεις cilk?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: ori0ngel on November 07, 2015, 22:41:00 pm Η εργασια απο αποψη δυσκολιας τι παιζει;
Αν την ξεκινησω αυριο προλαβαινω να την παραδωσω; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: thanospr on November 08, 2015, 13:40:28 pm Πως αντιγραφω αρχειο στο diades;παταω την εντολη scp που μας ειπε μετα μου ζηταει τον κωδικο, τον γραφω και μετα δεν κανει τιποτα...
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: SportBillyPap on November 08, 2015, 14:35:40 pm Πως αντιγραφω αρχειο στο diades;παταω την εντολη scp που μας ειπε μετα μου ζηταει τον κωδικο, τον γραφω και μετα δεν κανει τιποτα... Στελνεις τα αρχεια αρχεια σου στον ιδιο φακελο που εχεις και rsa key.Κανε ssh μπες στον φακελο σου στο διαδη και πατα ls αμα δεις καποιο αρχειο .pub πατα μετα rm -rf και προσπαθησε να ξαναστειλεις το αρχειο με το scp. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Napoleon on November 08, 2015, 16:00:47 pm Πως αντιγραφω αρχειο στο diades;παταω την εντολη scp που μας ειπε μετα μου ζηταει τον κωδικο, τον γραφω και μετα δεν κανει τιποτα... https://filezilla-project.orgTitle: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 08, 2015, 16:05:22 pm Έχει ασχοληθεί κανείς με την εργασία; Έχω μία απορία: Στην περίπτωση των pthreads στην recursive sort , πώς ελέγχετε αν ο αριθμός των threads έχει ξεπεράσει το 256; Ή για να το θέσω καλύτερα, τι κάνουμε στην περίπτωση αυτή; Επιστρέφουμε μήνυμα και τερματίζουμε; Γενικά από ότι κατάλαβα, pthreads και recursive αλγόριθμοι δεν τα πάνε καλά γιατί δημιουργούν υπερβολικά μεγάλο αριθμό threads. Γι αυτό στα extra αναφέρει την χρήση της qsort σε συνδυασμό μe threads στην περίπτωση που ξεπεράσουμε τον μέγιστο αριθμό; Aν φτάσεις τα 256 νήματα μπορείς να συνεχίσεις σειριακά μέχρι να ολοκληρωθεί το sorting.Η σειριακή συνέχεια δε γίνεται απαραίτητα με qsort,γι αυτό και αναφέρεται στα extras,αλλά δεν έχει και καμία ιδαίτερη δυσκολία αν έχεις καταφέρει το πρώτο. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 08, 2015, 17:22:40 pm Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: nikos1 on November 08, 2015, 22:01:11 pm υπαρχει καποιος που να εγκατεστησε το cilkplus στο visual studio ?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 08, 2015, 22:45:04 pm Ρε afourast όλη τη βδομάδα θα τρέχεις;
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Σα τανυστής on November 08, 2015, 23:14:20 pm στειλτε mail και περσι ειχαμε το ιδιο προβλημα
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: nlogn on November 08, 2015, 23:31:22 pm Ρε afourast όλη τη βδομάδα θα τρέχεις; +1. Πραγματικά, περιμένω όλη μέρα να τρέξω. Επίσης, για όσους δε το έμαθαν ακόμη >:( πέρα από την εντολή wall για να μιλάς στον άλλο και να ενοχλείς τους πάντες υπάρχει και η write για να ενοχλείς μόνο έναν κάθε φορά. Επίσης όσοι δε θέλετε να σας ενοχλούν γράψτε απλά: mesg n για να μην λαμβάνετε κανένα μύνημα από άλλους χρήστες στο τερματικό. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 09, 2015, 00:42:30 am Αν κανεις δε βρηκε ακομα πως κανουμε compile με CilkPlus οι οδηγιες ειναι εδω : https://www.cilkplus.org/build-gcc-cilkplus στην ενοτητα Using the GCC compilers with the Cilk™ Plus extensions Απλα πρεπει παντου να αντικαταστησουμε το $HOME με /export/home/markioan και λειτουργει. αυτα ισχυουν και για windows? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 09, 2015, 19:11:54 pm Diades right now..:
Quote gcc -fopenmp -pthread -O4 foo.c -o pbit /usr/bin/ld: final link failed: No space left on device collect2: ld returned 1 exit status Quote df -h Filesystem Size Used Avail Use% Mounted on /dev/sda5 29G 23G 4,7G 83% / /dev/sda8 404G 384G 0 100% /export /dev/sda6 9,5G 7,4G 1,7G 83% /var /dev/sda3 92M 63M 25M 72% /boot tmpfs 3,9G 0 3,9G 0% /dev/shm tmpfs 2,0G 1,9M 2,0G 1% /var/lib/ganglia/rrds ^knuppel^ Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 09, 2015, 22:21:29 pm Εχει τρέξει κανένας στο διάδη για σύγκριση αποτελεσμάτων?Για μήκος πίνακα 2^24 και 4 νήματα έχω
Quicksort = 3.840324 Bitonic recursive = 11.428338 Bitonic imperative = 16.662248 Bitonic pthreads = 2.589415 Bitonic openmp = 4.785233 Γενικά ο διάδης έδωσε παντού χειρότερους χρόνους σε σχέση με το pc μου :o Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dealan on November 09, 2015, 22:53:31 pm Τα ίδια ακριβώς βγάζω. Συγκεκριμένα (για ίδια ορίσματα)ε:
Quicksort = 3.858616 Bitonic recursive = 11.487289 Bitonic imperative = 17.378539 Bitonic pthreads = 2.741474 Bitonic openmp = 4.400898 (Με την αναμενόμενη διακύμανση ανάλογα με το πείραμα.) (Ο διάδης και σε άλλες εργασίες μου έβγαζε χειρότερα από το pc μου, νομίζω πέρα από το ότι υποστηρίζει 8 threads και Cuda και τα λοιπά δεν έχει κάνα ιδιαίτερο πλεονέκτημα.) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Λήσταρχος Γιαγκούλας on November 10, 2015, 01:31:50 am Καλησπέρα, το export του διάδη σε τι βαθμό μπορούμε
να περιμένουμε ότι θα επηρεάσει τους χρόνος που πετυχαίνουμε; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: reservoir dog on November 10, 2015, 07:53:56 am Ρε παιδιά έχω χαωθει, για να ανεβάζουμε αρχεία στο Diades που πρεπει να τα έχουμε σωσμένα (τρέχω cygwin)
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 10, 2015, 10:59:19 am Ρε παιδιά έχω χαωθει, για να ανεβάζουμε αρχεία στο Diades που πρεπει να τα έχουμε σωσμένα (τρέχω cygwin) Αν το κανεις με το scp,πρεπει να πας στο directory εκει που ειναι τα αρχεια στο pc σου. Για τον cygwin,υπαρχει καπου ενα /home/user , πρεπει να τα πας εκειTitle: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: thanospr on November 10, 2015, 12:10:49 pm Την εργασια μαζι με το pdf που την ανεβαζουμε;
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 10, 2015, 15:49:23 pm Στο ethmmy φυσικά..
Εδώ ταιριάζει η παροιμία "εχουμε φάει τον γάιδαρο, μας έμεινε η ουρά",μελλοντικοί ημμυ είμαστε υποτίθεται. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Κάρβουνο on November 10, 2015, 17:38:02 pm Με τι εντολή κάνουμε compile την cilk στο diades; Αν κανεις δε βρηκε ακομα πως κανουμε compile με CilkPlus οι οδηγιες ειναι εδω :https://www.cilkplus.org/build-gcc-cilkplus στην ενοτητα Using the GCC compilers with the Cilk™ Plus extensions Απλα πρεπει παντου να αντικαταστησουμε το $HOME με /export/home/markioan και λειτουργει. Με αυτό χρησιμοποιούμε αρχεία άλλου χρηστη. Δε ξέρω κατά πόσο αυτό είναι σωστό. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: PureForm on November 10, 2015, 18:29:40 pm ανεβηκε αυτο στο ετημμυ δεν ξερω αν σαw βοηθησει με το cilk
Cilk στο diades 10 Νοε 2015 4:33 μμ Σισμάνης Για να χρησιμοποιήσετε cilk, προσθέστε την παρακάτω γραμμή στο τέλος του αρχείου ~/.bash_profile: source /export/opt/intel/bin/iccvars.sh intel64 Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: svart on November 10, 2015, 20:37:24 pm έκανα ότι λεει στο ethmmy για το icc και κάνω compile κανονικά αλλά όταν τρέχω το πρόγραμμα μου βγάζει αυτό το error:
Code: bin/main: symbol lookup error: bin/main: undefined symbol: __intel_cpu_indicator έχει κανείς το ίδιο πρόβλημα? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 10, 2015, 23:43:07 pm παιδιά σε εσάς σας δουλεύει γενικά ο αλγόριθμος που έδωσε..??
εμένα και η σειριακή κανει fail στα τεστ και δεν μου φτιάχνει καν σωστό μέγεθος πίνακα.... Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: κύριος Φασόλης on November 11, 2015, 13:00:38 pm παιδιά σε εσάς σας δουλεύει γενικά ο αλγόριθμος που έδωσε..?? εμένα και η σειριακή κανει fail στα τεστ και δεν μου φτιάχνει καν σωστό μέγεθος πίνακα.... τρεξ'το στον διαδη μηπως εχει θεμα το pc σου Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 11, 2015, 13:51:02 pm παιδιά σε εσάς σας δουλεύει γενικά ο αλγόριθμος που έδωσε..?? εμένα και η σειριακή κανει fail στα τεστ και δεν μου φτιάχνει καν σωστό μέγεθος πίνακα.... Πώς και πού κάνεις compile? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dealan on November 11, 2015, 14:05:55 pm Κατάφερε τελικά κανείς να κάνει το οmp γρηγορότερο από την quicksort; Σε μένα φαίνεται να εξαρτάται αποκλειστικά από την διάθεση του Διάδη. (Μερικές φορές ναι, αλλά συνήθως είναι πιο αργό.)
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Μεταλλαγμένη Πάπια on November 11, 2015, 14:10:29 pm Παιδια να ρωτησω
Εγω καταφερει να φτιαξω παραλληλο προγραμμα με pthreads χρησιμοποιωντας την αναδρομικη εκδοση. Κανει νομιζω καλους χρονους δηλαδη για 2^24 πινακα ειναι γρηγοροτερο απο την qsort. Το θεμα μου ειναι οτι το εχω αφησει να τρεχει την σειριακη bitonicMerge γιατι για κανενα λογο δε μπορω να τη καταφερω... δε ξερω τι φταιει. Εχει καταφερει κανεις να κανει παραλληλη την merge με pthreads, και αν ναι ας δωσει καμια συμβουλη στο λαο :) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 11, 2015, 14:12:16 pm Κατάφερε τελικά κανείς να κάνει το οmp γρηγορότερο από την quicksort; Σε μένα φαίνεται να εξαρτάται αποκλειστικά από την διάθεση του Διάδη. (Μερικές φορές ναι, αλλά συνήθως είναι πιο αργό.) εμενα εξαρταται απο τα p κ qας πουμε για p=3(8 νηματα ) τρέχει πιο γρήγορα αλλά όχι και τοσο δραματικα γρηγοροτερα για μεγαλύτερα p τρέχει γρηγορότερα μόνο για πολυ μεγάλα q Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dealan on November 11, 2015, 14:16:24 pm Παιδια να ρωτησω Εγω καταφερει να φτιαξω παραλληλο προγραμμα με pthreads χρησιμοποιωντας την αναδρομικη εκδοση. Κανει νομιζω καλους χρονους δηλαδη για 2^24 πινακα ειναι γρηγοροτερο απο την qsort. Το θεμα μου ειναι οτι το εχω αφησει να τρεχει την σειριακη bitonicMerge γιατι για κανενα λογο δε μπορω να τη καταφερω... δε ξερω τι φταιει. Εχει καταφερει κανεις να κανει παραλληλη την merge με pthreads, και αν ναι ας δωσει καμια συμβουλη στο λαο :) Η ίδια ακριβώς λογική είναι, ό, τι έκανα και στο sort έκανα και στο merge. Μήπως σου ξέφυγε κάνα dir λάθος; Κατάφερε τελικά κανείς να κάνει το οmp γρηγορότερο από την quicksort; Σε μένα φαίνεται να εξαρτάται αποκλειστικά από την διάθεση του Διάδη. (Μερικές φορές ναι, αλλά συνήθως είναι πιο αργό.) εμενα εξαρταται απο τα p κ qας πουμε για p=3(8 νηματα ) τρέχει πιο γρήγορα αλλά όχι και τοσο δραματικα γρηγοροτερα για μεγαλύτερα p τρέχει γρηγορότερα μόνο για πολυ μεγάλα q Α ναι, ξέχασα να πω για q<=24. Τώρα που το λες και σε μένα τρέχει ελαφρώς καλύτερα το omp για 8 threads, και για οτιδήποτε πιο κάτω μένει πίσω. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Μεταλλαγμένη Πάπια on November 11, 2015, 14:21:30 pm Παιδια να ρωτησω Εγω καταφερει να φτιαξω παραλληλο προγραμμα με pthreads χρησιμοποιωντας την αναδρομικη εκδοση. Κανει νομιζω καλους χρονους δηλαδη για 2^24 πινακα ειναι γρηγοροτερο απο την qsort. Το θεμα μου ειναι οτι το εχω αφησει να τρεχει την σειριακη bitonicMerge γιατι για κανενα λογο δε μπορω να τη καταφερω... δε ξερω τι φταιει. Εχει καταφερει κανεις να κανει παραλληλη την merge με pthreads, και αν ναι ας δωσει καμια συμβουλη στο λαο :) Η ίδια ακριβώς λογική είναι, ό, τι έκανα και στο sort έκανα και στο merge. Μήπως σου ξέφυγε κάνα dir λάθος; Και γω νομιζω οτι ειναι η ιδια λογικη και εχω την εντυπωση οτι γραφω τα ιδια πραματα, αλλα για καποιο λογο δε τρεχει σωστα. Απο κει που κανει 3 σεκ και ταξινομει σωστα, παω να την κανω παραλληλη, κανει 15 σεκ και ταξινομει λαθος :P Τελως παντων, θα το παλεψω κι αλλο. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: svart on November 11, 2015, 14:48:25 pm όσοι έχετε αργό το openmp δοκιμάστε να το κάνετε με recursion χρησιμοποιώντας tasks (https://en.wikibooks.org/wiki/OpenMP/Tasks). έτσι πάει σε χρόνους pthreads. το ίδιο ισχύει και για cilk
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: greekoo on November 11, 2015, 14:49:04 pm Παιδιά, θέλει ολόκληρα διαγράμματα για τις μετρήσεις, για ΚΑΘΕ αριθμό p[1:7] και q[16:24]?
H απλά συνοπτική αναφορά μετρήσεων με σχόλια; Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 11, 2015, 14:53:58 pm Παιδιά, θέλει ολόκληρα διαγράμματα για τις μετρήσεις, για ΚΑΘΕ αριθμό p[1:7] και q[16:24]? H απλά συνοπτική αναφορά μετρήσεων με σχόλια; Δε λέει πουθενά στην εκφώνηση ότι πρέπει να κάνεις διαγράμματα,εγώ πχ έκανα στο excel ένα πίνακα που περιέχει και τους 8*9 συνδυασμούς των p,q. (το p παίρνει τιμές στο [1:8] και όχι στο [1:7]) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 11, 2015, 14:55:07 pm Δεν χρειάζεται να δοκιμάσεις όλους τους πιθανούς συνδυασμούς παραμέτρων, αλλά δίνει ιδιαίτερη έμφαση στα διαγράμματα.
Μην πετάξεις απλά τα αποτελέσματα/μετρήσεις δηλαδή σε πίνακες, αναπαράστησε τα αποτελέσματα σε plots. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Dealan on November 11, 2015, 15:01:12 pm Ενσωματομένα πάντως του πέταξα ένα random διάγραμμα με την δικαιολογία ότι "να και μια εικόνα για να είναι ωραίο το report" και μου βαλε 10, άρα δεν ξέρω κατά πόσο όντως θέλει σώνει και καλά διαγράμματα.
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Exomag on November 11, 2015, 15:03:33 pm Ενσωματομένα πάντως του πέταξα ένα random διάγραμμα με την δικαιολογία ότι "να και μια εικόνα για να είναι ωραίο το report" και μου βαλε 10, άρα δεν ξέρω κατά πόσο όντως θέλει σώνει και καλά διαγράμματα. True, εγώ για τα Παράλληλα έλεγα. Πχ σχολίαζε μέχρι και ότι δεν είχαν μερικοί ονόματα στους άξονες :P Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: driverbulba on November 11, 2015, 16:12:44 pm Παιδιά υπάρχει κανένας τρόπος να ορίσουμε τα number of threads (workers) στη cilk?
Βρήκα αυτό: __cilkrts_set_param("nworkers", "4"); αλλά δεν κατάφερα να το κάνω να δουλέψει με μη σταθερό νούμερο... Δλδ αν βάλω __cilkrts_set_param("nworkers", char_holding_number_of_threads); η cilk χρησιμοποιεί 8. όσα και τα cores του διάδη/// Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: driverbulba on November 11, 2015, 16:25:21 pm Άκυρο! Το κατάφερα!
char str[ENOUGH]; sprintf(str, "%d", n_Threads); τώρα η str μεταβλητή έχει τον αριθμό των threads και τον σωστό τύπο για να περαστεί ως παράμετρος στην συνάρτηση της cilk. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 12, 2015, 03:14:49 am παιδιά σε εσάς σας δουλεύει γενικά ο αλγόριθμος που έδωσε..?? εμένα και η σειριακή κανει fail στα τεστ και δεν μου φτιάχνει καν σωστό μέγεθος πίνακα.... Πώς και πού κάνεις compile? LOL... έβαζα scanf για q,p και δεν δούλευε σωστά. όταν έβαλα argv argc στη main (ορίσματα από command) τελικά πήγαν όλα καλά!! Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Ragnar Lothbrok on November 12, 2015, 11:32:11 am Έχει ιδέα κανείς πως γίνεται η σύνδεση των αποτελεσμάτων μας (χρόνοι) με το matlab, μέσω script, ωστε να πλοταρουμε τα αποτελεσματα; αυτο που ειπε στο χθεσινο μαθημα δηλαδη
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 12, 2015, 11:37:02 am Δεν ξέρω τι ακριβώς είχε στο μυαλό του,αλλά αν έχεις shell script της μορφής
Code:
τότε το τμήμα " >> results.txt " εξάγει τις μετρήσεις σε txt αρχείο το οποίο μπορείς να εισάγεις στο matlab. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 12, 2015, 11:43:17 am ρε παιδια μπορειτε να μπειτε τωρα το πρωι στον διαδη ??
ή μονο εμένα δεν μπαινει ?? >:( >:( >:( Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Nerevar on November 12, 2015, 11:55:17 am Οντως δεν μπαίνει,ζητήστε και 2η παράταση για μετά την κυριακή :D
(φταίει η κατάληψη/απεργία;) Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: PureForm on November 12, 2015, 16:33:23 pm Για την παραταση παντως ουτε εχει ανακοινωσει τπτ ουτε εχει αλλαξει η ημερομινια στο ετημμ
Ειναι σιγουρο ετσι? :P Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 12, 2015, 16:42:30 pm Για την παραταση παντως ουτε εχει ανακοινωσει τπτ ουτε εχει αλλαξει η ημερομινια στο ετημμ Ειναι σιγουρο ετσι? :P Το είπε ο Πιτσιάνης στο μάθημα Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: WatchDog on November 13, 2015, 17:46:02 pm έχει καταλάβει κάποιος πως ακριβώς κάνουμε compile στην cilk?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Κάρβουνο on November 13, 2015, 17:57:00 pm Quote Cilk στο diades 10 Νοε 2015 4:33 μμ Σισμάνης Για να χρησιμοποιήσετε cilk, προσθέστε την παρακάτω γραμμή στο τέλος του αρχείου ~/.bash_profile: source /export/opt/intel/bin/iccvars.sh intel64 Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: WatchDog on November 13, 2015, 18:13:53 pm στην τελευταία γραμμή του αρχείου .c το βάζουμε? και κάνουμε compile κλασσικα,με gcc....κλπ?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Κάρβουνο on November 13, 2015, 18:31:58 pm Quote Cilk στο diades 10 Νοε 2015 4:33 μμ Σισμάνης Για να χρησιμοποιήσετε cilk, προσθέστε την παρακάτω γραμμή στο τέλος του αρχείου ~/.bash_profile: source /export/opt/intel/bin/iccvars.sh intel64 Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: talkshowhost on November 14, 2015, 14:59:17 pm ε παιδια, για το diades, οταν γραφω σε cygwin ssh -p2288 το_username_μου@diades.ee.auth.gr , παίρνω το εξής:
-bash: ssh: εντολή δεν βρέθηκε. Τι πάει στραβά? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 14, 2015, 15:02:35 pm ε παιδια, για το diades, οταν γραφω σε cygwin ssh -p2288 το_username_μου@diades.ee.auth.gr , παίρνω το εξής: Δεν εχεις κατεβασει το ssh για το cygwin-bash: ssh: εντολή δεν βρέθηκε. Τι πάει στραβά? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Μεταλλαγμένη Πάπια on November 14, 2015, 17:09:23 pm έχει καταλάβει κάποιος πως ακριβώς κάνουμε compile στην cilk? Και μενα με δυσκολεψε, σ'αυτο το μαθημα κανενας σεβασμος για οσους δεν εχουν linux εγω εχω καταλαβει. Λοιπον, οταν εισαι στον διαδη κανε: nano ~/.bash_profile: Αυτο θα σου ανοιξει στον επεξεργαστη κειμενου nano, το αρχειο ~/.bash_profile . Θα εχει ηδη αυτο καποια πραματα γραμμενα, δε σε νοιαζουν. Πηγαινε τερμα κατω και προσθεσε την γραμμη που λεει δηλαδη: source /export/opt/intel/bin/iccvars.sh intel64 Οταν το κανεις αυτο, πατας Ctrl+O και μετα Enter. Τωρα λογικα δε θα χεις προβλημα να κανεις compile κωδικα cilk. Απλα φροντισε στο αρχειο .c σου πανω πανω να εχεις #include<cilk/cilk.h> #include<cilk/cilk_api.h> και μετα κανεις compile με icc -O3 -lcilkrts onoma_arxeiou.c Ελπιζω να βοηθησα. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: talkshowhost on November 14, 2015, 17:35:23 pm Για την scp : το αρχειο που θελω να αντιγραψω ειναι στο cygwin->home->user, αλλα μετά την εντολή, μου πετάει αρχειο.c No such file or directory. :-\
Επίσης , ως φακελο στο diades χρησιμοποιώ το φακελο που είναι το public key μου? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: iason1907 on November 14, 2015, 17:55:00 pm κάνεις δηλαδή:
cd folder_with_file scp -P 2288 -r file.c username@diades.ee.auth.gr: και στο λέει αυτό? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: talkshowhost on November 14, 2015, 18:18:22 pm κάνεις δηλαδή: σωστα , παρέλειψα το cd ::) ευχαριστωcd folder_with_file scp -P 2288 -r file.c username@diades.ee.auth.gr: και στο λέει αυτό? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: rspappas on November 14, 2015, 18:49:30 pm filezilla παιδια, Μην ζοριζεστε
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: lady_of_winter on November 14, 2015, 19:04:09 pm έχει καταλάβει κάποιος πως ακριβώς κάνουμε compile στην cilk? Και μενα με δυσκολεψε, σ'αυτο το μαθημα κανενας σεβασμος για οσους δεν εχουν linux εγω εχω καταλαβει. Λοιπον, οταν εισαι στον διαδη κανε: nano ~/.bash_profile: Αυτο θα σου ανοιξει στον επεξεργαστη κειμενου nano, το αρχειο ~/.bash_profile . Θα εχει ηδη αυτο καποια πραματα γραμμενα, δε σε νοιαζουν. Πηγαινε τερμα κατω και προσθεσε την γραμμη που λεει δηλαδη: source /export/opt/intel/bin/iccvars.sh intel64 Οταν το κανεις αυτο, πατας Ctrl+O και μετα Enter. Τωρα λογικα δε θα χεις προβλημα να κανεις compile κωδικα cilk. Απλα φροντισε στο αρχειο .c σου πανω πανω να εχεις #include<cilk/cilk.h> #include<cilk/cilk_api.h> και μετα κανεις compile με icc -O3 -lcilkrts onoma_arxeiou.c Ελπιζω να βοηθησα. στο χω ξαναπει Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 14, 2015, 21:03:42 pm παιδιά εμένα το cilk γιατί δεν βρίσκει την βιβλιοθήκη..??? έβαλα την τελευταία γραμμή στο αρχείο αλλά μου πετάει αυτό το error
CilkPlus.c(1): catastrophic error: could not open source file "cilk/cilk.h" #include<cilk/cilk.h> ^ compilation aborted for CilkPlus.c (code 4) έχω δοκιμάσει τα include και για cilk.h αλλά το ίδιο. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 14, 2015, 22:40:18 pm παιδιά εμένα το cilk γιατί δεν βρίσκει την βιβλιοθήκη..??? έβαλα την τελευταία γραμμή στο αρχείο αλλά μου πετάει αυτό το error CilkPlus.c(1): catastrophic error: could not open source file "cilk/cilk.h" #include<cilk/cilk.h> ^ compilation aborted for CilkPlus.c (code 4) έχω δοκιμάσει τα include και για cilk.h αλλά το ίδιο. Βγες και ξαναμπες Τσέκαρε μη ξέχασες κανενα -lcilkrts Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: TrueForce on November 14, 2015, 22:47:29 pm catastrophic error ;D ;D
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 14, 2015, 23:16:02 pm παιδιά εμένα το cilk γιατί δεν βρίσκει την βιβλιοθήκη..??? έβαλα την τελευταία γραμμή στο αρχείο αλλά μου πετάει αυτό το error CilkPlus.c(1): catastrophic error: could not open source file "cilk/cilk.h" #include<cilk/cilk.h> ^ compilation aborted for CilkPlus.c (code 4) έχω δοκιμάσει τα include και για cilk.h αλλά το ίδιο. Βγες και ξαναμπες Τσέκαρε μη ξέχασες κανενα -lcilkrts ξαφνικά μετά από 4-5 προσπάθειες έφτιαξε... :P Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: reservoir dog on November 14, 2015, 23:24:48 pm Μπορει μηπως καποιος να δωσει καποιες βασικες κατευθυνσεις για το report?
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: rspappas on November 14, 2015, 23:51:08 pm μια παρουσιαση των αποτελεσματων να γινει. η μορφη τους ενδεικνυται για να γινουν ωραια διαγραμματα, οπου θα φαινεται πιο ευκολα η οποια βελτιωση. απο επεξηγηση, ισως να περιγραψεις λιγο που παραλληλοποιησες και με ποιο σκεπτικο, αλλα εγω θα εστιασω παραπανω στην αναλυση των αποτελεσματων (οχι πολυ δηλαδη, μην φανταστεις, μερικες προτασεις ανα διαγραμμα, τι βλεπουμε).
απο κει και περα, αν εχεις ορεξη για εισαγωγη και περιγραφη του προβληματος και αναλυση των τεχνολογιων οκ, αλλα ενταξει, τετριμμενα ειναι αυτα συνηθως. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Xbaremenos on November 15, 2015, 00:10:51 am Μπορει μηπως καποιος να δωσει καποιες βασικες κατευθυνσεις για το report? Πέτα ένα διάγραμμα, πες και 2 λέξεις και βγες για μπύρες, αρκετά ασχοληθήκαμε. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: c0ndemn3d on November 15, 2015, 11:22:02 am Μπορει μηπως καποιος να δωσει καποιες βασικες κατευθυνσεις για το report? Ε κάνε μια εισαγωγή πες νά εδώ είχαμε αυτό το πρόβλημα, πες τις γενικές ιδέες στις οποίες βασίστηκες για να παραλληλίσεις το πρόγραμμα, νά γενικά παραλληλίζουμε εδώ και εκεί, πες συγκεκριμένα μετά για κάθε υλοποίησή σου, νά εδώ συγκεκριμένα γίνεται αυτό όπως είχα πει πριν αλλά γίνεται και αυτό που δεν ανέφερα, βάλε μετά μετρήσεις και πες διάφορα σχόλια, νά εδώ βλέπετε ότι η τάδε υλοποίηση είναι πιο γρήγορη και αυτό είναι λογικό γιατί μπλα μπλα μπλα. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: Maylo on November 15, 2015, 14:52:45 pm Καλησπέρα , ρε παιδιά άρχισα να καταγράφω τους χρόνους μου για τα διαγράμματα και πχ στο pc μου για q = 17 βγάζει αρκετά(αναλογικά) χαμηλότερους χρόνους η pthread από την qsort , ενώ στον διάδη λίγο μεγαλύτερους. Από την άλλη για q=16 pthread γρηγορότερη από qsort και στον διαδη και στο πισι μου...
Για πιο ψηλά q πχ 24 ή 23 και στον διαδη και στο pc μου η parallel pthread είναι γρηγορότερη από qsort. Τι φταίει;Είναι ίσως λογικό; Πρέπει να σχολιάσω κάτι , δηλαδή αξίζει ; Ίσως είναι το Chunksize που έχω για την pthread όταν θέλω να κάνει qsort ?? Καμια ιδέα; ΑΚΥΡΟ for reasons όταν τα κάνω 2 ξεχωριστα αρχεια openmp & pthread και κάνω για το 1ο -fopenmp και για 2ο -lpthread (δηλαδη όπως πρέπει) βγάζει επιθυμητούς χρόνους... Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 15, 2015, 17:00:45 pm ρε παιδιά το διάγραμμα είναι σε άξονες : χρόνος - q και χρόνος p ???
και περίπου πως γίνεται..??? Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: rspappas on November 15, 2015, 18:54:19 pm excel/calc/google sheets ειναι μια ευκολη λυση για αυτα
δεν υπαρχει συγκεκριμενο guideline, αυτοσχεδιασε Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 15, 2015, 20:15:24 pm το αρχειο txt με τις μετρλησεις από διαδη πως το κατεβάζουμε??
δοκίμασα με sftp αλλά έχει κωδικό και δεν είναι αυτός του ssh. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: WatchDog on November 15, 2015, 20:58:43 pm Ρε παιδια στο cilk πως τρέχει το πρόγραμμα? με ./file δεν μου τρέχει..
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 15, 2015, 21:12:14 pm έκανες αυτά που λένε παραπάνω με την προσθήκη στο αρχείο..??
αν ναι δοκίμασε να βγεις και να ξαναμπεις και κάνε παλι compile 2-3 φορές γιατι κρεμάει καμια φορα. Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: WatchDog on November 15, 2015, 21:15:14 pm Nai ekana .και δε μου δημιουργεί και αρχείο file , exe dld..κάνει compile και μένει μονο το file.c
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: raf18 on November 15, 2015, 21:38:35 pm τσέκαρε μήπως το αρχείο που δημιουργεί είναι overwite πάνω σε αρχείο από προηγούμενα compile (πχ αυτό του pthread, openmp). εμένα μου γράφει στο ίδιο αρχείο που γράφει το pthread
Title: Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1 Post by: vlad on November 16, 2015, 03:06:33 am το αρχειο txt με τις μετρλησεις από διαδη πως το κατεβάζουμε?? scp -P2288 username@diades.ee.auth.gr:directory/file.c . θα το κατεβασει στο . directoryδοκίμασα με sftp αλλά έχει κωδικό και δεν είναι αυτός του ssh. |