Επισκέπτης Δημοσ. 4 Ιανουαρίου 2017 Δημοσ. 4 Ιανουαρίου 2017 Έχω ένα πρόγραμμα σε .NET το οποίο χρησιμοποιεί την TPL και τρώει το 95% της CPU όταν τρέχει. Θέλω να το βάλω σε ένα ξεχωριστό PC και έχω το εξής δίλλημα, παίρνω επεξεργαστή με πολλούς πυρήνες ή με μεγάλη συχνότητα; Και στις δύο περιπτώσεις ενδιαφέρομαι για Xeon επεξεργαστή. Για παράδειγμα, ποιος από τους δύο θα έχει καλύτερη απόδοση σε parallel; http://www.e-shop.gr/cpu-intel-xeon-e5-1620-v3-35ghz-w-o-fan-lga2011-3-box-p-PER.558532 http://www.e-shop.gr/cpu-intel-xeon-e5-2609v4-17ghz-w-o-fan-lga2011-3-box-p-PER.558689
ThanosA Δημοσ. 4 Ιανουαρίου 2017 Δημοσ. 4 Ιανουαρίου 2017 Εξαρτάται από την φύση των threads. Σε γενικές γραμμές αν δεν έχεις κάνει optimization για hyper threading/δεν χρησιμοποείς cilk τότε πας ξεκάθαρα σε περισσότερους πυρήνες και ας έχουν χαμηλότερη συχνότητα. Επίσης στον 2609 εχεις και διπλάσια cache, επίσης πολύ σημαντικό. *Αν έχεις πολλά mutex τότε βολεύει το hyperthreading. 2
Sheogorath Δημοσ. 4 Ιανουαρίου 2017 Δημοσ. 4 Ιανουαρίου 2017 Ο δευτερος δεν εχει ΗΤ και εχει την μιση συχνοτητα. Και σε multythread θεωρητικα ειναι πανω κατω τα ιδια αν οχι κατωτερος απο τον πρωτο. Θα μπουκωνει λογω χαμηλης συχνοτητας περα απο τα αλλα. Το μονο συν η διπλασια cache.
ThanosA Δημοσ. 4 Ιανουαρίου 2017 Δημοσ. 4 Ιανουαρίου 2017 Ο δευτερος δεν εχει ΗΤ και εχει την μιση συχνοτητα. Και σε multythread θεωρητικα ειναι πανω κατω τα ιδια αν οχι κατωτερος απο τον πρωτο. Θα μπουκωνει λογω χαμηλης συχνοτητας περα απο τα αλλα. Το μονο συν η διπλασια cache. Εχει 8 πραγματικους πυρηνες/διπλάσια cache και μισή συχνότητα. Τα benchmarks δεν λεν πολλα. Σε πολλά clusters το hyperthreading το εχουν απενεργοποιημενο. Το acceleration που σου δινουν οι πυρηνες δεν στο δινει το hyperthreading. Παντα ομως εξαρταται απο το use case. Εχει 8 πραγματικους πυρηνες/διπλάσια cache και μισή συχνότητα. Τα benchmarks δεν λεν πολλα. Σε πολλά clusters το hyperthreading το εχουν απενεργοποιημενο. Το acceleration που σου δινουν οι πυρηνες δεν στο δινει το hyperthreading. Παντα ομως εξαρταται απο το use case. Αν θελεις πες μας περιπου τι δουλεια κανουν αυτα τα threads και αν εχεις mutex.
Επισκέπτης Δημοσ. 4 Ιανουαρίου 2017 Δημοσ. 4 Ιανουαρίου 2017 Τα threads κάνουν string comparisons, δεκάδες εκατομμύρια σε κάθε run σε κείμενα αρκετών εκατοντάδων λέξεων, με τη χρήση Parallel LINQ. Δεν έχω κάνει optimize για HT, ούτε έχω mutex.
ThanosA Δημοσ. 5 Ιανουαρίου 2017 Δημοσ. 5 Ιανουαρίου 2017 Xeon με 8 πυρυνες. Το πρόβλημά σου είναι embarrassingly parallel και θα επωφεληθεις από περισσότερη cache και πραγματικούς πυρηνες,ακόμα και αν η συχνότητα είναι μικρότερη.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα