Schwierig, den Gaussian Random Timer zu verstehen?

7

Ich habe die Informationen zum Gaussian Random Timer in der jmeter Bedienungsanleitung gelesen, aber es ist schwer zu verstehen. Irgendwelche haben eine Idee, die damit verbunden ist, erklären Sie bitte mit dem Beispiel, das in hohem Grade geschätzt wird. Vielen Dank im Voraus.

    
Chetan 12.07.2013, 13:35
quelle

4 Antworten

18

Der Gaußsche Zufallszeitgeber hat eine zufällige Abweichung (basierend auf der Gaußschen Kurvenverteilung) um den konstanten Verzögerungsversatz.

Zum Beispiel:

  • Abweichung: 100 ms
  • Konstante Verzögerung: 300 ms

Die Verzögerung variiert zwischen 200 ms (300 - 100) und 400 ms (300 + 100) basierend auf der Gauß-Verteilung für etwa 68% der Fälle .

    
andreio 16.10.2013, 08:22
quelle
7

Ich werde versuchen, es mit einem der bereits geposteten Beispiele zu erklären:

  • Konstanter Verzögerungsoffset: 1000 ms
  • Abweichung: 500 ms

Ungefähr 68% der Verzögerungen liegen zwischen [500, 1500] ms (= [1000 - 500, 1000 + 500] ms).

Nach dem Dokumente (Hervorhebung von mir):

  

Die Gesamtverzögerung ist die Summe aus dem Gaußschen verteilten Wert (mit Mittelwert 0,0 und Standardabweichung 1,0) mal dem von Ihnen angegebenen Abweichungswert und dem Offsetwert

Apache JMeter ruft Random.nextGaussian() * range um die Verzögerung zu berechnen. Wie erklärt in der Wikipedia , wird der Wert von nextGaussian() zwischen [ -1,1] nur für etwa 68% der Fälle. In der Theorie könnte es einen beliebigen Wert haben (obwohl die Wahrscheinlichkeit, Werte außerhalb dieses Intervalls zu erhalten, sehr schnell mit der Entfernung zu diesem Wert abnimmt).

Als Beweis habe ich einen einfachen JMeter-Test geschrieben, der einen Thread mit einem Dummy-Sampler und einem Gaußschen Zufalls-Timer startet: 3000 ms konstante Verzögerung, 2000 ms Abweichung:

Um CPU-Ladeprobleme auszuschließen, habe ich einen zusätzlichen gleichzeitigen Thread mit einem anderen Dummy-Sampler und einem Constant Timer konfiguriert: 5000 ms:

Die Ergebnisse sind ziemlich aufschlussreich:

Nehmen wir zum Beispiel die Proben 10 und 12: 9h53'04.449" - 9h52'57.776" = 6.674" , das ist eine Abweichung von 3.674" im Gegensatz zu 2.000" konfiguriert! Sie können auch überprüfen, ob der konstante Timer überhaupt nur um 1 ms abweicht.

Ich könnte eine sehr schöne Erklärung dieser Gaussian Timer in der Gmane jmeter Benutzerliste finden: Timer - Frage .

    
Alberto 27.02.2015 15:12
quelle
3

Gaussian Random Timer ist fast identisch mit Uniform Random Timer.

  • In Uniform Random Timer hat die Variation um konstanten Offset eine lineare Verteilung

  • Im Gaußschen Zufalls-Timer hat die Variation um den konstanten Offset eine Gaußsche Kurvenverteilung.

UBIK LOAD PACK 13.07.2013 13:36
quelle
1

Konstante Verzögerung Offset (mu) = 300 ms, Abweichung (si) = 100 ms mu-si = 200, mu + si = 400, Es besteht eine Wahrscheinlichkeit von 68%, dass die Zeitlücke zwischen zwei Threads im Bereich von [200,400]

liegt

mu-2 (si) = 100, mu + 2 (si) = 500, Es besteht eine Wahrscheinlichkeit von 95%, dass die Zeitlücke zwischen zwei Threads im Bereich von [100,500] liegt

mu-3 (si) = 0, mu + 3 (si) = 300, es bestehen 99,7% Chancen, dass die Zeitlücke zwischen zwei aufeinander folgenden Threads im Bereich von [0,600] liegt

Wenn du so weitermachst, wirst du 100% Wahrscheinlichkeit haben, dass die Zeitlücke zwischen zwei Threads 100% ist

Ich beschränke mich selbst auf drei Iterationen, weil mu-4 (si) einen negativen Wert ergibt und die verstrichene Zeit immer ein positiver Wert in diesem Universum ist.

Aber es wird sehr unrealistisch sein, sich auf den Gaußschen Timer zu verlassen, da wir einen konstanten Timer und einen konstanten Durchlauftimer ohne Standardabweichung (si) haben.

Ich hoffe, dass es hilft.

    
vishnu varhan 09.08.2017 11:53
quelle

Tags und Links