Είμαι προγραμματιστής και έχω αρκετά χρόνια να ασχοληθώ με hardware θέματα και χρειάζομαι την βοήθειά σας.
Δουλεύω σε ένα προσωπικό ερευνητικό project το οποίο συμπεριλαμβάνει πειράματα με αλγορίθμους που περιέχουν loops με 100άδες float πράξεις, ρίζες, λογαρίθμους και τριγωνομετρικές συναρτήσεις επάνω σε αρκετά GB από δεδομένα.
Δεν θέλω να σας ζαλίσω με τεχνικές λεπτομέρειες, οπότε μπαίνω απευθείας στο πρόβλημά μου: Σε έναν Athlon64x2 4600+/Ubuntu9.10 και τρέχοντας ορισμένα δοκιμαστικά, υπολόγισα χοντρικά ότι κάθε πείραμα χρειάζεται περισσότερες από 200-300 ημέρες σε έναν πυρήνα να ολοκληρωθεί. Κάθε πυρήνας που προστίθεται, εφόσον η λειτουργία του δεν καθυστερεί την επικοινωνία με την cache, την RAM και την FPU των υπολοίπων πυρήνων, ιδεατά μειώνει τον χρόνο σύμφωνα με τον τύπο [(time per core) / (number of cores)].
Χρειάζομαι να αγοράσω εξοπλισμό, κατά πάσα πιθανότητα να στήσω ένα beowulf cluster, έτσι ώστε ο χρόνος εκτέλεσης κάθε πειράματος να μειωθεί σε 1-2 ημέρες, δηλαδή ο κώδικάς μου πρέπει να εκτελείται 200 φορές ταχύτερα από ότι στον έναν πυρήνα του Athlon 4600+.
Ο χρόνος εκτέλεσης για τον κωδικά μου επηρεάζεται από αρκετές παραμέτρους, αλλά κυρίως:
ταχύτητα επικοινωνίας CPU/RAM καθώς ο όγκος των δεδομένων είναι τέτοιος που δεν επιτρέπει καλό utilization της cache του επεξεργαστή, όσο μεγάλη και αν είναι αυτή
ταχύτητα εκτέλεσης floating point (sse/sse2) και γενικά instructions per cycle * clock
Από όσο γνωρίζω, τα διάφορα εργαστηριακά benchmark που υπάρχουν στο internet εστιάζουν μόνο σε κάποιες παραμέτρους ταχύτητας και δεν είναι χαρακτηριστικά για το overall performance ενός συστήματος. Ένας επεξεργαστής θα μπορούσε να δίνει αρκετά GFLOPS σε ένα πρόγραμμα bench, αλλά να ξοδεύει πολλούς κύκλους στο να φέρει τα δεδομένα από την RAM για να κάνει τις πράξεις αν δεν τα έχει στην cache.
Επειδή δεν θέλω να ξοδέψω ένα σωρό χρήματα να πάρω μηχανήματα και τελικά να μην πετύχω τον σκοπό μου, και επειδή δεν έχω πρόσβαση σε τόσους διαφορετικούς υπολογιστές ώστε να δοκιμάσω πώς συμπεριφέρεται ο κώδικάς μου, πώς θα πρέπει να σκεφτώ ώστε να απαντήσω στο ερώτημα: Πόσα χρήματα κατ'ελάχιστον θα χρειαζόμουν σήμερα έτσι ώστε να στήσω ένα cluster που να τρέχει τον κώδικα σε x χρόνο; (αγνοώντας τον χρόνο επικοινωνίας μεταξύ των υπολογιστών)
Εναλλακτικές ιδέες θα ήταν περισσότερο από ευπρόσδεκτες. Έχω ήδη σκεφτεί χρήση GPU, αλλά την έχω απορρίψει καθώς ο προγραμματισμός σε GPU με τα σημερινά εργαλεία μου φαίνεται εκνευριστικός.
Ευχαριστώ πολύ
mini supercomputer
Συντονιστές: Super-Moderators, Software & Hardware Moderators
mini supercomputer
If you wish to make an apple pie from scratch, you must first invent the universe
- telas
- Honorary Member
- Δημοσιεύσεις: 1594
- Εγγραφή: 12 Μαρ 2004 12:54
- Τοποθεσία: Kastoria
- Επικοινωνία:
mini supercomputer
δεν γνωρίζω από τεχνικά θέματα, αλλά, μήπως έχεις σκεφτεί το ενδεχόμενο να νοικίασεις τέτοιο εξοπλισμό και να κάνεις την δουλειά σου πιο γρήγορα κ οικονομικά;
Εκτός βέβαια εαν το θέλεις σε μόνιμη βάση, δεν το γνωρίζω, απλά λέω.
Εκτός βέβαια εαν το θέλεις σε μόνιμη βάση, δεν το γνωρίζω, απλά λέω.
Web Design - Δημιουργία Ιστοσελίδας - http://www.computerman.gr/
My Photography - http://www.tilaveridis.com/
Τεχνολογικά προιόντα - http://www.bigbox.gr/
My Photography - http://www.tilaveridis.com/
Τεχνολογικά προιόντα - http://www.bigbox.gr/
mini supercomputer
Ναι είναι μάλλον καλή ιδέα, το έχω σκεφτεί. Αλλά θα χρειαζόμουν τέτοιον εξοπλισμό για καιρό, οπότε θα προτιμούσα να αγοράσω.
If you wish to make an apple pie from scratch, you must first invent the universe
mini supercomputer
Πολύ Καλημέρα σου
Κι εγώ δεν γνωρίζω από τόσο βαρύ εξοπλισμό, που χρειάζεσαι και ζητάς. Ωστόσο θα μπορούσες να τον ενοικιο-αγοράσεις με την τεχνική Leasing.
Πληρώνεις κάθε δόση (σαν ενοίκιο), και στο τέλος σου μένει δικός σου ο εξοπλισμός.
Ακόμα και εταιρείες που έχουν/πουλάνε (ακόμα!) mini computers... Ακόμα κι αυτές δεν πιστεύω ότι περνούν και την ανθηρότερη περίοδο στις πωλήσεις τους, οπότε θεωρώ αρκετά πιθανή μια διευκόλυνση -τύπου Leasing- και με αρκετά προσιτή δόση / χρόνο αποπληρωμής. Μάλλον όμως θα πρέπει ν'αρχίσεις να ψάχνεις
Προσωπικά, θα πήγαινα πρώτα μια βολτίτσα απ'τα γραφεία της IBM.
ΙΒΜ ΕΛΛΑΣ A.E.
Λ. Κηφισίας 284
152 32 Χαλάνδρι
Τηλ. Κέντρο: 210 6881111
Τηλ. Toll-free: 800 11 68220
Fax: 210 6801300
e-mail: direct@gr.ibm.com <mailto:direct@gr.ibm.com>
Από εδώ
Καλό κουράγιο



Κι εγώ δεν γνωρίζω από τόσο βαρύ εξοπλισμό, που χρειάζεσαι και ζητάς. Ωστόσο θα μπορούσες να τον ενοικιο-αγοράσεις με την τεχνική Leasing.
Πληρώνεις κάθε δόση (σαν ενοίκιο), και στο τέλος σου μένει δικός σου ο εξοπλισμός.
Ακόμα και εταιρείες που έχουν/πουλάνε (ακόμα!) mini computers... Ακόμα κι αυτές δεν πιστεύω ότι περνούν και την ανθηρότερη περίοδο στις πωλήσεις τους, οπότε θεωρώ αρκετά πιθανή μια διευκόλυνση -τύπου Leasing- και με αρκετά προσιτή δόση / χρόνο αποπληρωμής. Μάλλον όμως θα πρέπει ν'αρχίσεις να ψάχνεις


Προσωπικά, θα πήγαινα πρώτα μια βολτίτσα απ'τα γραφεία της IBM.
ΙΒΜ ΕΛΛΑΣ A.E.
Λ. Κηφισίας 284
152 32 Χαλάνδρι
Τηλ. Κέντρο: 210 6881111
Τηλ. Toll-free: 800 11 68220
Fax: 210 6801300
e-mail: direct@gr.ibm.com <mailto:direct@gr.ibm.com>
Από εδώ
Καλό κουράγιο


- deninho
- Super Moderator
- Δημοσιεύσεις: 7066
- Εγγραφή: 17 Ιαν 2004 16:01
- Τοποθεσία: σ'άλλη διάσταση
- Επικοινωνία:
mini supercomputer
Μάλλον θα πρέπει να το ξανασκεφτείς. Η απόδοση των καρτών γραφικών, ειδικά των nVidia με CUDA, είναι κατά πολύ ανώτερη των επεξεργαστών. Πολύ οικονομικότερο, απλούστερο, και πιθανώς αποδοτικότερο από το να στήσεις cluster [με 2-3-4-χ απλούς υπολογιστές]jeroen έγραψε:Έχω ήδη σκεφτεί χρήση GPU, αλλά την έχω απορρίψει καθώς ο προγραμματισμός σε GPU με τα σημερινά εργαλεία μου φαίνεται εκνευριστικός.
mini supercomputer
Έχει κανείς εμπειρία με GPU; Με ενδιαφέρει, όμως σκέφτομαι ότι αν μπλέξω με δαύτες, από την μία θα ρίξω πολύ διάβασμα και δουλειά για να μετατρέψω αρκετές συναρτήσεις σε vectorized λογική, αλλά από την άλλη θα ξοδεύευται πολύς χρόνος στο ανεβοκατέβασμα των δεδομένων μεταξύ RAM της κάρτας γραφικών και RAM της CPU στην συγκεκριμένη εφαρμογή. Είναι ο τρόπος που με βολεύει να παραλληλίσω τους αλγορίθμους τέτοιος (MIMD). Δεν ξέρω. Φοβάμαι μην χάσω χρόνο άδικα.
Το leasing είναι καλή φάση, αλλά μέχρι να ξεπληρώσεις κάποιο από τα θηρία της IBM, θα έχουν βγει Blue Gene τσέπης.
Μάλλον θα κοιτάξω να βρω κάποιον Intel i7 980 xtreme να τρέξω δοκιμαστικά, μήπως με ένα cluster από 2-3 τέτοιους τρέχω ικανοποιητικά.
Thanks
Το leasing είναι καλή φάση, αλλά μέχρι να ξεπληρώσεις κάποιο από τα θηρία της IBM, θα έχουν βγει Blue Gene τσέπης.

Μάλλον θα κοιτάξω να βρω κάποιον Intel i7 980 xtreme να τρέξω δοκιμαστικά, μήπως με ένα cluster από 2-3 τέτοιους τρέχω ικανοποιητικά.
Thanks

If you wish to make an apple pie from scratch, you must first invent the universe
- deninho
- Super Moderator
- Δημοσιεύσεις: 7066
- Εγγραφή: 17 Ιαν 2004 16:01
- Τοποθεσία: σ'άλλη διάσταση
- Επικοινωνία:
mini supercomputer
Γενικά είναι αρκετά μεγάλο το πακέτο [μόνο εξ όσων έχω διαβάσει. Από προγραμματισμό, δε σκαμπάζω και πολλά]. Ψάξε στο Google για GPGPU (general purpose GPU) για να δεις περισσότερες πληροφορίες
Μέλη σε σύνδεση
Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες