Jump to content

SQL Server 2005 quad core cpu optimization


fishbone
 Share

Recommended Posts

Καλησπέρα στο forum. Έχω έναν hp server με Windows 2003 Enterprise R2 sp2, 8GB ram και 2 quad core zeon. Έχω εγκαταστήσει SQL 2005 Standard sp3 και το erp της singularlogic. Αυτή τη στιγμή βλεπω ότι οι 1-2 πυρήνες φτάνουν στο 90% utilization και οι υπόλοιποι φτανουν το πολύ μέχρι το 10-15%.Το ερώτημα που έχω είναι αν χρειάζεται να κάνω κάποιο optimization στην sql έτσι ώστε να χρησιμοποιεί και τους 8 πυρήνες.

 

Ευχαριστώ εκ των προτέρον

Link to comment
Share on other sites

 

 

Ανοίξε SQL Management StudioΔεξί κλικ στο server και properties.Πήγαινε "Advanced"Στο [Maximum Degree of Parallelism] πρέπει να είναι "0" ... (η τιμή "0" ουσιαστικά χρησιμοποιεί όλους τους επεξεργαστές).

Βέβαια υπάρχουν και OLTP queries που δεν εκμεταλλεύονται αυτό το feature του SQL (OPTION(MAXDROP 0).

 

 

 

Link to comment
Share on other sites

Το τσέκαρα και έχει την τιμή 0 by default. Θα κοιτάξω και το άρθρο που μου έστειλες για τα OLTP queries και θα δω αν χρειάζεται να κάνω κάποιες αλλαγές.

 

Ευχαριστώ πολύ

Link to comment
Share on other sites

Υπάρχουν διάφοροι λόγοι για τους οποίους μπορεί να μην αξιοποιούνται και οι τέσσερις επεξεργαστές. Γενικά ο SQL Server προκειμένου να αποφασίσει πώς θα τρέξει ένα query ελέγχει τι κόστος έχει το query και ποιοί επεξεργαστές είναι διαθέσιμοι. Επιπρόσθετα, ανάλογα το execution plan (μέρος του οποίου είναι και το πώς θα κάνει τα joins) τελικά καταλήγει στο πόσους επεξεργαστές θα χρησιμοποιήσει. Τυπικά, σε περιπτώσεις ως 8 επεξεργαστές δεν χρειάζεται να πειράξεις τίποτα. Αν μένουν unitilized επεξεργαστές, πιθανότατα σημαίνει ότι λείπουν indexes ή ότι χρησιμοποιούνται λανθασμένα indexes. Μου έχει τύχει σε performance auditing να το διαπιστώσω από πρώτο χέρι.

Από την άλλη μην ξεχνάς ότι ο SQL Server έχει multi user φιλοσοφία που σημαίνει ότι το τι θα διαλέξει να κάνει μπαίνει πάντοτε κάτω από το πρίσμα ότι μπορεί να ζητήσουν το ίδιο κι άλλοι χρήστες στη συνέχεια. Έτσι λοιπόν, το query engine πάντοτε προσπαθεί να κρατάει ισοροπία μεταξύ performance και resources. Αυτήν την ισοροπία "πειράζεις" με το OPTION(MAXDOP)! Μπορεί το query εκείνη τη στιγμή να πάει σφαίρα, αλλά αν συμβεί αυτό για όλους τους χρήστες ενδεχομένως να υπάρχει πρόβλημα.

Link to comment
Share on other sites

  • 3 weeks later...
 Share

×
×
  • Create New...