Freigeben über


Anpassen von Spinlock-Parametern

Standardmäßig protokolliert das System ein Spinlock-Ereignis für alle 1000 nicht angehaltenen Käufe und ein Spinlockereignis für jeden angehaltenen Erwerb. Die Spinlock-Datensammlung unterstützt drei Parameter, mit denen Sie die Datensammlung anpassen können. Verwenden Sie zum Festlegen von Spinlock-Auflistungsparametern den folgenden Befehl.

xperf -setspinlocksample [spin_threshold] [acquire_sample_rate] [contention_sample_rate]

Parameter

spin_threshold
Die Spinlockinstrumentation bietet eine Funktion zum Nachverfolgen von stark ausgelasteten Sperren. Dies wird durch Festlegen eines hohen Drehschwellenwerts erreicht. Wenn ein Sperrvorgang kleiner als dieser Schwellenwert ist, wird kein Spinlock-Ereignis protokolliert. Wenn dieser Wert beispielsweise 1 ist, wird für jeden Versuch, eine Sperre abzurufen, ein Spinlock-Ereignis abgerufen. Wenn dieser Wert 10 ist, wird für jeden zehn Versuch, eine Sperre abzurufen, ein Spinlock-Ereignis protokolliert. Der Standardwert ist 1.

acquire_sample_rate
Stichprobenrate, bei der Spinlockereignisse während einer Ablaufverfolgung protokolliert werden. Wenn dieser Wert beispielsweise 1000 ist, wird ein Spinlock-Ereignis für jede 1000 Nicht-Kollisionsereigniskäufe protokolliert. Der Standardwert lautet „1000“.

contention_sample_rate
Rate, bei der Spinlockereignisse protokolliert werden, wenn Kollisionen auftreten. Wenn dieser Wert beispielsweise 100 beträgt, wird ein Spinlock-Ereignis für jeweils 100 Spinlock-Kollisionen protokolliert. Der Standardwert ist 1.

Bemerkungen

Spinlock-Auflistungsparameter kehren zu den Standardwerten zurück, wenn das System neu gestartet wird. Um eine gültige Datensammlung sicherzustellen, abfragen oder festlegen Sie Spinlockparameter vor dem Starten der Ereignisdatensammlung.

Beispiel

Das folgende Beispiel zeigt, wie Sie die aktuellen Werte abfragen.

xperf -spinlock

Im folgenden Beispiel wird der Drehschwellenwert auf 1 festgelegt, die Samplerate für den Erwerb auf 1000 und die Spinlock-Inhaltsfrequenz auf 100 festgelegt.

xperf -setspinlocksample 1 1000 100

Diese Abfrage gibt das folgende Ergebnis für die im vorherigen Beispiel festgelegten Werte zurück.

Current Spinlock Spin Threshold = 1
Current Spinlock Acquire Sample Rate = 1000
Current Spinlock Contention Sample Rate = 100

spinlock