fitzel69
Goto Top

SQL Server arbeitet nur mit 1 CPU

Hallo zusammen ,

anbei folgendes Problem :

Ich habe einen SQL Server 2008 in einer virtualisierten Umgebung.
Basis ist ein 2008 R2 Standard Sp1
RAM : 12 GB , 64 bit, Intel Xeon CPU X5675@3.07GHZ ( 2 Prozessoren)
Laut Gerätemanager liegen 2 4 CPUs vor


Informationen aus der Perfmon ( Leistungsüberwachung ) :

Unter Prozessor Zeit
C1 ca 90%
C2 0
C3 0

Prozessorzeit liegt zwischen 1 und 3

Der Taskmanager zeigt 4 CPU's an, 3 sind aber sporadisch geparkt
Ich gehe also von einem CPU Problem in Verbindung mit der DB aus

Merci für eure Hilfe


Mein Problem ist, das ich gelegentlich extreme Performance Probleme mit dem Datenbank ( ERP Anwendung ) habe

Content-ID: 284872

Url: https://administrator.de/contentid/284872

Ausgedruckt am: 22.11.2024 um 18:11 Uhr

beidermachtvongreyscull
beidermachtvongreyscull 07.10.2015 aktualisiert um 13:36:35 Uhr
Goto Top
Fitzel69
Fitzel69 07.10.2015 um 14:18:32 Uhr
Goto Top
Der Ressourcen Monitor zeigt mir 4 CPU's an.

CPU 0 -3 ( geparkt)
CPU 3 mit ca 98 % Auslastung

Die SQL Version kann 4
Ich weiß aber nicht, wieviel unser ERP zieht bzw nicht sieht
beidermachtvongreyscull
beidermachtvongreyscull 07.10.2015 um 14:31:12 Uhr
Goto Top
Was ist denn unter Servereigentschaften --> Prozessoren eingestellt?
Fitzel69
Fitzel69 07.10.2015 um 14:52:00 Uhr
Goto Top
Prozessoren aktivieren 2 * Haken
Affinitätsmake für alle
E/A Maske für alle
UNter Prozessoren werden NumaNode0 die CPU mit CPU 0 -3 angezeigt
Maximale Arbeitsthreadsanzahl = 0
Haken bei Konfigurierte Wered
Fitzel69
Fitzel69 07.10.2015 um 15:26:57 Uhr
Goto Top
Anmerkung
UNter den Servereigenschaften -> Prozessoren
lassen sich die Haken bei den CPU's 0-3 bei Prozessoraffinität und E/A Affinität nicht setzen.

Auf unserem alten DB Server mit 32 bit war dies möglich
AndiEoh
AndiEoh 07.10.2015 um 15:58:55 Uhr
Goto Top
Hallo,

falls das die MS-SQL 2008 Express ist wäre das normal, die sind limitiert auf ein Core (unter anderem).

Gruß

Andi
beidermachtvongreyscull
beidermachtvongreyscull 07.10.2015 um 16:19:53 Uhr
Goto Top
Er schreibt, es ist die STANDARD.
Die kann tatsächlich bis zu 4.
pelzfrucht
pelzfrucht 07.10.2015 aktualisiert um 18:16:33 Uhr
Goto Top
Ich hab von SQL Server so garkeine Ahnung.
Aber eine Idee wäre es msconfig.exe aufzurufen, und auf der Registerkarte Start bei Erweiterte Optionen zu kontrollieren ob bei Prozessoranzahl ein Haken gesetzt ist. Wenn Ja dann kontrollieren was für eine Zahl da steht und ggf. den Haken rausnehmen oder die Zahl entsprechend der Kerne korrigieren.

Viele Grüße
AndiEoh
AndiEoh 07.10.2015 um 18:27:33 Uhr
Goto Top
"Ich habe einen SQL Server 2008 in einer virtualisierten Umgebung."

Das Standard im Orginal Post bezog sich auf den Server. Allerdings schreibt er später "Die SQL Version kann 4" was wohl tatsächlich Standard heißen soll.

Damit sollte eine Fehlerquelle ausgeschlossen sein...
Fitzel69
Fitzel69 08.10.2015 um 07:26:42 Uhr
Goto Top
@Mal an alle

Der Taskmanager auf dem Server zeigt volle 4 CPU's in Arbeit an. Unter SQl ( select cpu_count ) werden 4 angezeigt.
Das bedeutet für mich, das der virtualisierte Server auf der Basisi funktioniert, SQL 4 Einheiten sieht, aber nur mit einer ( wenn ich das richtig verstehe)
arbeitet

@pelzfrucht
Bei mir in der msconfig stht nur eine '1' und der Haken ist nicht gesetzt. Ich schaue mir mal die Konfig in der Virtualisierung an.............

Danke schon mal für eure Hilfe
Looser27
Looser27 08.10.2015 um 08:30:08 Uhr
Goto Top
Nur so eine Idee......wieviele Prozessoren sind denn der VM zugewiesen, in der der SQL läuft? Wenn Du da nur einen Core zuweist kann der SQL die verbleibenden nicht nutzen. Die Frage ist nur, warum sieht der SQL die anderen Prozessoren dann....?
Fitzel69
Fitzel69 08.10.2015 um 08:49:09 Uhr
Goto Top
UNter den Eigenschaften der VM :
CPUs = 4
Number virtuell Sockets 2
Number of cores per Socket 2
beidermachtvongreyscull
beidermachtvongreyscull 08.10.2015 um 08:49:57 Uhr
Goto Top
Zitat von @Looser27:

Nur so eine Idee......wieviele Prozessoren sind denn der VM zugewiesen, in der der SQL läuft? Wenn Du da nur einen Core zuweist kann der SQL die verbleibenden nicht nutzen. Die Frage ist nur, warum sieht der SQL die anderen Prozessoren dann....?

Ich nehme an Paravirtualisierung.
Dann sieht die VM die tatsächlichen physischen Ressourcen, nutzt aber nur, was zugewiesen ist.
Fitzel69
Fitzel69 08.10.2015 um 08:59:27 Uhr
Goto Top
Paravirtualisierung. ??

Da würde ich gerade passen