Steuert die maximal möglichen gleichzeitigen Prozessoren, die der Datenbankserver zulässt.
{ dbeng12 | dbsrv12 } -gtc Einsetzbare_logische_Prozessoren ...
Linux-, Solaris- und Windows-Betriebssysteme, die auf Intel-kompatiblen x86- und x64-Plattformen laufen, ausgenommen Windows Mobile.
Wenn Sie den Datenbankserver starten, wird die vom Datenbankserver erkannte Anzahl der physischen und logischen Prozessoren im Meldungsfenster des Datenbankservers angezeigt.
Physische Prozessoren werden manchmal als Pakete oder Dies (Rohchips) bezeichnet und sind die CPUs des Computers. Weitere logische Prozessoren bestehen, wenn die physischen Prozessoren Hyperthreads unterstützen oder selbst als Mehrprozessoren konfiguriert sind (üblicherweise Mehr-Kern-Prozessoren genannt). Das Betriebssystem erstellt den Zeitplan für Threads auf logischen Prozessoren.
Mit der Option -gtc können Sie die Anzahl der logischen Prozessoren festlegen, die vom Datenbankserver verwendet werden können. Ihr Zweck ist es, die Anzahl der Datenbankserver-Threads zu begrenzen, die beim Start des Datenbankservers erstellt werden. Dies begrenzt die Anzahl der aktiven Datenbankserver-Aufgaben, die gleichzeitig ausgeführt werden können. Standardmäßig ist die Anzahl der erstellten Threads 1 + die Anzahl der logischen Prozessoren auf allen lizenzierten physischen Prozessoren.
Standardmäßig lässt der Datenbankserver die gleichzeitige Verwendung aller logischen Prozessoren (Kerne oder Hyperthreads) auf jedem lizenzierten physischen Prozessor zu. In einem Ein-CPU-System z.B., das Hyperthreads unterstützt, lässt der Datenbankserver standardmäßig zwei Threads zu, die gleichzeitig auf einem physischen Prozessor ausgeführt werden. Wenn die Option -gtc angegeben wird und die Anzahl der zu verwendenden logischen Prozessoren ist geringer als die Anzahl der verfügbaren lizenzierten physischen Prozessoren, weist der Datenbankserver logische Prozessoren basierend auf einer Round Robin-Zuordnung zu. Wenn Sie 1 bei der Option -gtc angeben, wird die abfrageinterne Parallelität (parallele Verarbeitung von einzelnen Abfragen) implizit deaktiviert. Die abfrageinterne Parallelität kann auch mit der Option max_query_tasks explizit begrenzt oder direkt deaktiviert werden. Siehe max_query_tasks-Option.
Betrachten wir die folgenden Beispiele bei einem Windows-basierten SMP-Computer. Es wird jeweils ein 4-Prozessorensystem mit 2 Kernen auf jedem physischen Prozessor (also insgesamt 8 logische Prozessoren) angenommen. Die physischen Prozessoren werden mit Buchstaben und die logischen Prozessoren (in diesem Fall Kerne) mit Zahlen gekennzeichnet. Dieses 4-Prozessorensystem hat daher die Verarbeitungseinheiten A0, A1, B0, B1, C0, C1, D0 und D1.
Szenario | Einstellungen des Netzwerk-Datenbankservers |
---|---|
Eine einzelne CPU-Lizenz oder -gt 1 angegeben |
Threads können auf A0 und A1 ausführen. |
Keine Lizenzeinschränkungen auf der CPU mit angegebenem -gtc 5 |
Threads können auf A0, A1, B0, C0 und D0 ausführen. |
Ein Datenbankserver mit einer 3-CPU-Lizenz und -gtc 5 angegeben |
Threads können auf A0, A1, B0, B1 und C0 ausführen. |
Keine Lizenzeinschränkungen auf der CPU mit angegebenem -gtc 1 |
Threads können nur auf A0 ausführen. |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |