• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 18, 2025, 01:24:38 am

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
June 18, 2025, 01:24:38 am

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 00:45:33]

[Μεταφορά και Διανομή ΗΕ]...
by Nikos_313
[Today at 00:10:29]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 17, 2025, 21:32:50 pm]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[June 17, 2025, 21:25:42 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[June 17, 2025, 20:59:13 pm]

[Γραφική] Λυμένα θέματα
by okanpala
[June 17, 2025, 18:56:22 pm]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[June 17, 2025, 14:25:00 pm]

Αντικατάστασης πυκνωτή σε...
by george14
[June 17, 2025, 13:58:20 pm]

Πότε θα βγει το μάθημα; -...
by tzortzis
[June 17, 2025, 13:19:53 pm]

Αποτελέσματα Εξεταστικής ...
by george14
[June 17, 2025, 12:08:25 pm]

[ΨEE] Γενικές απορίες και...
by Juror8
[June 17, 2025, 12:06:57 pm]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426704
Total Topics: 31710
Online Today: 205
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 32
Guests: 135
Total: 167
Tsn
Η ΤΡΑΠΟΥΛΑ ΤΟΥ ΠΑΠΠΟΥ ΜΟΥ
tinidou
Theislander
thomasdt
stelinas
Stelios V.
tasos gourd
Captain
rafail zisiadis
kakousios
aplos paratiritis
GeorgeGk
asimomyti
Mr Watson
maestros
babistso
Aria10
Kelly Tsimpouri
stavr0s16
nikpapoutsi
ThanosV
chriskazakos
kouf
AA RE LEWN
Saint_GR
antreassv
palladas
eed
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
Για αλλαγή του public name σας, επικοινωνήστε με έναν από τους Admins.
THMMY.gr > Forum > Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών  > 7ο Εξάμηνο > Παράλληλα και Διανεμημένα Συστήματα (Moderators: geo66, Elliot Alderson, sassi) > [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
0 Members and 1 Guest are viewing this topic.
Pages: 1 ... 4 5 [6] 7 8 ... 15 Go Down Print
Author Topic: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1  (Read 19395 times)
georgkonst
Ανερχόμενος/Ανερχόμενη
**
Gender: Male
Posts: 98


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #75 on: November 14, 2016, 22:25:57 pm »

Quote from: elefmylo on November 10, 2016, 00:47:25 am
Εγώ προσπάθησα τις προηγούμενες με atomic/critical/( μια υλοποίηση με locks) αλλά οι χρόνοι πο πήρα ήταν πολύ κακοί!
Btw αν δε κάνεις μια από τις παραπάνω τεχνικές και βάλεις απλώς "pragma omp for", τότε δεν περνάει τα τεστ.
Οπότε φαντάζομαι δεν τις παραλληλοποιείς? Undecided

Όσο δοκίμασα και εγώ τις memcpy kai τις swap είτε γινόντουσαν οι χρόνοι μου χάλια ή δε περνούσα τα τεστ (μάλλον θα χρειαζόταν atomic/critical), νομίζω θα μείνω μόνο στη τελευταία, ούτως ή άλλως δε κερδίζεις πάρα πολλά από τη radix
Logged


"What's the difference between a king and his horse?"
Andromedas
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Posts: 504



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #76 on: November 14, 2016, 22:42:11 pm »

Γενικά η διαφοροποίηση της recursive radix sort σε p-threads με openmp ή cilk είναι σίγουρα ότι λόγω της αναδρομής γίνεται καλά μόνο με p-threads. Τώρα υπάρχει παραλλαγή της radix sort και παραλληλοποίηση με την λογική scan prefix όπου θα δουλεύει καλύτερα σε openmp ή cilk . Δεν νομίζω ότι είναι υποχρεωτικό για την εργασία πάντως. (Αν ψηθεί, κανείς ας μου στείλει pm)
Logged
BADBANE
Ανερχόμενος/Ανερχόμενη
**
Posts: 61



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #77 on: November 15, 2016, 04:37:11 am »

Μανκες στον διαδη τι τεστ πρεπει να τρεξουμε και με τι αριθμους;;
Logged

Let the games begin!
ReMi0s
Καταξιωμένος/Καταξιωμένη
***
Posts: 213



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #78 on: November 15, 2016, 08:56:55 am »

στην υλοποίηση με pthread έχει καταφέρει κανείς να παραλληλοποιήσει την radix_sort για n threads;
έχω δοκιμάσει 30 διαφορετικά πράγματα και είτε  παίρνω κάποιο error είτε fail στα test
αυτό που με προβληματίζει περισσότερο είναι η τελευταία δοκιμή όπου αφού τρέξει η radix μία φορά σειριακά έπειτα δημιουργώ 8 thread και καλώ την παράλληλη. Αφού τρέξει η παράλληλη όπως η κανονική έκδοση εξετάζω αν (activethreads<NumThreads) και αν γίνεται δημιουργώ καινούριο thread αλλιώς συνεχίζει σειριακά

τις μισές φορές μου βγάζει σωστά αποτελέσματα, τις μισές λάθος και κάποιες ελάχιστες φορές segmentation fault αλλα όχι πάντα.

κανένα καλό παλικάρι να προσφέρει καμιά  ιδέα περι αυτού ή κάποια άλλη κατεύθυνση;

Ευχαριστώ
Logged
Ser Harry Man
Ανερχόμενος/Ανερχόμενη
**
Posts: 63


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #79 on: November 15, 2016, 12:12:15 pm »

Quote from: Ancient on November 11, 2016, 17:54:20 pm
Κάνεις mute τον αριθμό των threads που τρέχουν, όταν πας να τον μεταβάλλεις?

Mutex εννοείται, ναι.
Logged
Ser Harry Man
Ανερχόμενος/Ανερχόμενη
**
Posts: 63


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #80 on: November 15, 2016, 12:13:42 pm »

Quote from: ReMi0s on November 12, 2016, 15:06:30 pm
μία λύση αλλα όχι βέλτιστη είναι να τρέχει μία φορά η radix σειριακά και στο σημείο που κάνει recursive για maxbin να καλείς την παράλληλη , που έχει πάλι τον ίδιο κώδικα... Έτσι όμως δημιουργούνται μόνο 8 threads σταθερά. Όταν ρώτησα τον πιτσιάνη μου είπε οτι θέλει να μπορούμε εμείς να αλλάξουμε τα thread


Ποιά είναι η βέλτιστη λοιπόν ? Και εφ'όσον είναι recursive γιατί θα βγούν μόνο 8 ?
Logged
Ser Harry Man
Ανερχόμενος/Ανερχόμενη
**
Posts: 63


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #81 on: November 15, 2016, 12:16:51 pm »

Quote from: fibonacci on November 13, 2016, 17:18:58 pm
στην radix sort που λέει :
    // scan prefix (must change this code) 
είναι απαραίτητο να κάνουμε αλλαγή του κώδικα στην περιοχή αυτή ;  έχω  δοκιμάσει πολλούς τρόπους για να βελτιστοποιήσω τον χρόνο της συνάρτησης αυτής με χρήση OpenMP αλλά πάντα κάτι δεν πάει καλά ... σκέφτομαι μήπως ο λόγος είναι ότι δν έχω ψάξει να αλλάξω αυτό το το κομμάτι του κώδικα.

Κάποια ιδέα ή παρατήρηση ;

Αν δείς επάνω έχει 2 συναρτήσεις swap που δεν έχει χρησιμοποιήσει, ενώ στο scan prefix κάνει στην ουσία swap. Ipso facto , ήταν note για τον εαυτό του. Όπως είπαν κ οι άλλοι, δεν μπορείς να παραλληλοποιήσεις κάτι εκεί.
Logged
Ser Harry Man
Ανερχόμενος/Ανερχόμενη
**
Posts: 63


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #82 on: November 15, 2016, 12:21:24 pm »

Quote from: ReMi0s on November 15, 2016, 08:56:55 am
στην υλοποίηση με pthread έχει καταφέρει κανείς να παραλληλοποιήσει την radix_sort για n threads;
έχω δοκιμάσει 30 διαφορετικά πράγματα και είτε  παίρνω κάποιο error είτε fail στα test
αυτό που με προβληματίζει περισσότερο είναι η τελευταία δοκιμή όπου αφού τρέξει η radix μία φορά σειριακά έπειτα δημιουργώ 8 thread και καλώ την παράλληλη. Αφού τρέξει η παράλληλη όπως η κανονική έκδοση εξετάζω αν (activethreads<NumThreads) και αν γίνεται δημιουργώ καινούριο thread αλλιώς συνεχίζει σειριακά

τις μισές φορές μου βγάζει σωστά αποτελέσματα, τις μισές λάθος και κάποιες ελάχιστες φορές segmentation fault αλλα όχι πάντα.

κανένα καλό παλικάρι να προσφέρει καμιά  ιδέα περι αυτού ή κάποια άλλη κατεύθυνση;

Ευχαριστώ

Και εγώ πιστεύω οτι κάνω πάνω κάτω το ίδιο με εσένα. Για να μην πολυλογώ, έλεγξε οτι όλα τα threads κάνουν join σωστά και δεν τερματίζει το αρχικό πρίν κάνουν όλα τη δουλειά τους.
Logged
fibonacci
Ανερχόμενος/Ανερχόμενη
**
Posts: 78


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #83 on: November 15, 2016, 16:36:01 pm »

Quote from: Ser Harry Man on November 15, 2016, 12:21:24 pm
Και εγώ πιστεύω οτι κάνω πάνω κάτω το ίδιο με εσένα. Για να μην πολυλογώ, έλεγξε οτι όλα τα threads κάνουν join σωστά και δεν τερματίζει το αρχικό πρίν κάνουν όλα τη δουλειά τους.

Στην παραλληλοποίηση με Pthreads της αναδρομικής κλήσης ορίζετε ως init_function των threads την ίδια την συνάρτηση truncated_radix_sort() ή φτιάχνεται με καινουρια η οποία καλεί για κάθε καινουριο thread την truncated_radix_sort() ;  εγώ επιλέγω το δεύτερο για να μπορώ να περάσω τα ορίσματα με ένα struct .

Επίσης την pthreads_join() την τρέχεται για κάθε ανδρομική κλήση μετά την επαναληπτική δημιουργία των threads ;
 Γιατί σε μένα φτάνει στην radix_sort η εκτέλεση του προγράμματος αυξάνεται ραγδαία ο αριθμός των νημάτων του συστήματος , η χρήση cpu φτάνει στο 100% για λίγο και μετά με πετάει από την εκτέλεση του προγράμματος χωρίς κανένα αποτέλεσμα

Ελπίζω να ήμουν κατατοπιστικός
Logged
ReMi0s
Καταξιωμένος/Καταξιωμένη
***
Posts: 213



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #84 on: November 15, 2016, 18:07:58 pm »

Quote from: Ser Harry Man on November 15, 2016, 12:13:42 pm
Ποιά είναι η βέλτιστη λοιπόν ? Και εφ'όσον είναι recursive γιατί θα βγούν μόνο 8 ?
η βέλτιστη θα ήταν φαντάζομαι να δημιουργούνται όσα thread ζητάς απο το πληκτρολόγιο. Το λέω γιατί ο πιτσίανης όταν είπα οτι την έκανα με σταθερά thread δεν του άρεσε.
Επίσης βγαίνουμ μόνο 8 γιατί τα δημιουργείς μέσα στην main και έπειτα καλείς συνέχεια την παραληλοποιημένη της.Μόνο μια φορά θα τρέχει η main
Βέβαια αυτό είναι μία ιδέα, υπάρχουν πολλές...

Quote from: Ser Harry Man on November 15, 2016, 12:21:24 pm
Και εγώ πιστεύω οτι κάνω πάνω κάτω το ίδιο με εσένα. Για να μην πολυλογώ, έλεγξε οτι όλα τα threads κάνουν join σωστά και δεν τερματίζει το αρχικό πρίν κάνουν όλα τη δουλειά τους.
το ελέγχω αυτό, γιατί στην αρχή είχα θέμα και μου έβγαζε error η join. Βέβαια όταν κανει fail κάνει για πολύ μιικρή διαφορά δλδ λείπουν λίγα σωματίδια απο τα N που είχα επιλέξει. Ίσως είναι εκεί το θέμα όντως.

Quote from: fibonacci on November 15, 2016, 16:36:01 pm
Στην παραλληλοποίηση με Pthreads της αναδρομικής κλήσης ορίζετε ως init_function των threads την ίδια την συνάρτηση truncated_radix_sort() ή φτιάχνεται με καινουρια η οποία καλεί για κάθε καινουριο thread την truncated_radix_sort() ;  εγώ επιλέγω το δεύτερο για να μπορώ να περάσω τα ορίσματα με ένα struct .

Επίσης την pthreads_join() την τρέχεται για κάθε ανδρομική κλήση μετά την επαναληπτική δημιουργία των threads ;
 Γιατί σε μένα φτάνει στην radix_sort η εκτέλεση του προγράμματος αυξάνεται ραγδαία ο αριθμός των νημάτων του συστήματος , η χρήση cpu φτάνει στο 100% για λίγο και μετά με πετάει από την εκτέλεση του προγράμματος χωρίς κανένα αποτέλεσμα

Ελπίζω να ήμουν κατατοπιστικός

εγώ κάνω μια παράλληλη συνάρτηση και καλώ συνέχεια αυτή, είτε με pthread_create, είτε με το όνομα της.

Το join το κάνω στην truncated..
Logged
nikoscha
Νεούλης/Νεούλα
*
Posts: 35


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #85 on: November 15, 2016, 18:46:56 pm »

Γιατί όταν ανεβάζω thread πάνω απο 8 οι χρόνοι αρχίζουν να χειροτερεύουν;
Logged
Kthulu
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1066



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #86 on: November 15, 2016, 19:51:33 pm »

Γιατι λογικα ο επεξεργαστης σου εχει 8 threads.
Logged

It is no measure of health to be well adjusted to a profoundly sick society<br /><br />https://www.youtube.com/watch?v=TmAnjlQbRSE
fibonacci
Ανερχόμενος/Ανερχόμενη
**
Posts: 78


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #87 on: November 15, 2016, 20:27:54 pm »

Με την omp_set_num_threads() ορίζω το  αριθμό threads προς χρηση για την επόμενη παράλληλη περιοχή ή γενικά για την εκτέλεση ολου του προγράμματος; ... Δηλαδή αν την καλέσω πριν την παραλληλοποιημένη for στην οποία κάνω αναδρομική κλήση  θα μου ορίσει το αριθμό των thread που θα τρέξουν την αναδρομή ή θα μου επιβάλει έναν συνολικό αριθμό threads που μπορώ να χρησιμοποιήσω για οποιαδήποτα for σε κάποια κλήση αναδρομής ;
Logged
ReMi0s
Καταξιωμένος/Καταξιωμένη
***
Posts: 213



View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #88 on: November 16, 2016, 02:17:04 am »

παιδιά την βοήθεια σας λίγο.
θέλω να έχω μία global μεταβλητή int active_threads
και οταν την αλλάζω μέσα σε συναρτήσεις να αλλάζει γενικά η τιμή της και όχι μόνο στην συνάρτηση αυτή.
αμα την ορίσω απλά έτσι δεν γίνεται.
πρέπει να το κάνω με pointer αλλα δεν θυμάμαι Tongue
κάποιος βοήθεια;
Logged
Vlassis
Veteran
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 2162


εφακ


View Profile
Re: [Παράλληλα και Διανεμημένα Συστ.] Εργασία 1
« Reply #89 on: November 16, 2016, 03:01:02 am »

Quote from: ReMi0s on November 16, 2016, 02:17:04 am
παιδιά την βοήθεια σας λίγο.
θέλω να έχω μία global μεταβλητή int active_threads
και οταν την αλλάζω μέσα σε συναρτήσεις να αλλάζει γενικά η τιμή της και όχι μόνο στην συνάρτηση αυτή.
αμα την ορίσω απλά έτσι δεν γίνεται.
πρέπει να το κάνω με pointer αλλα δεν θυμάμαι Tongue
κάποιος βοήθεια;
δεν ξερω αν καταλαβα ακριβως τι θες, εγω ορισα μια μεταβλητη threads global εξω απο τη main στο αρχειο test_octree.c, στην οποια εχω δωσει default τιμη αλλα και της δινω την δυνατοτητα να αλλαξει τιμη μεσα στη συναρτηση
και απ οτι βλεπω, πιανει σε ολες τις συναρτησεις η αλλαγη της τιμης
Logged

πρόπελ
Is any of it real? I mean, look at this. Look at it! A world built on fantasy! Synthetic emotions in the form of pills, psychological warfare in the form of advertising, mind-altering chemicals in the form of food, brainwashing seminars in the form of media, controlled isolated bubbles in the form of social networks. mr.robot s01e10
Pages: 1 ... 4 5 [6] 7 8 ... 15 Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...