Átlag és ráta kérdés

+2 votes
asked Apr 26, 2014 in IRF tantárgy by ldani7492 (39 points)  

3H feladatom van, S3Emulátorhoz kell teljesítményszámlálókat csinálnom, amik között kell szerepelnie átlagot és rátát nyilvántartónak is.

Ha jól értem, ezek a következőképp működnek:
AverageTimer32: hozzáadjuk a művelet által igénybe vett időt, az AverageBase-t pedig növeljük 1-gyel;
AverageCount64: hozzáadjuk az elvégzett műveletek számát, az AverageBase-t pedig növeljük 1-gyel;
RateOfCountsPerSecond32: egyszerűen 1-gyel növeljük a számláló értékét az esemény bekövetkezésekor, a többi megy magától.

Amennyiben jól gondolom, a következő lenne a kérdésem: Az első kettőből hogyan lesz átlag? Nekem ez úgy tűnik, hogy mindig csak a legutóbbi (esetleg ha nem 1-gyel növeljük a base-t akkor legutóbbi n) átlagát fogjuk látni.
Illetve ha nem jól gondolom: miért? :D

1 Answer

+1 vote
answered Apr 27, 2014 by davidhonfi (371 points)  
  • AverageTimer: Minden művelet során hozzáadod az előző és a mostani művelet között eltelt időt, az AverageBase-t pedig megnöveled eggyel, így az átlagos időt fogod kapni.
  • AverageCount64: Minden művelet során növeled egy adott értékkel a számlálót (pl. berakott objektum mérete), és szintén eggyel növeled az AverageBase-t. Így pl. megkaphatod az átlagosan műveletenként berakott objektum méretet.
commented Apr 27, 2014 by marci32 (80 points)  
Én itt nem teljesen értem, hogy miért a műveletek között eltelt időt kell hozzáadni, miért nem magának az adott műveletnek a hosszát. Pl.: ha mérem, hogy egy lekérdezés meddig tart átlagosan, akkor a lekérdezések idejét kellene átlagolni, nem azt, hogy két lekérdezés között mennyi idő telt el, nem?
commented Apr 27, 2014 by davidhonfi (371 points)  
Azt egy példának szántam, a lényeg, hogy ha új művelet kezdődik nyilvánvalóan újra kell indítani a stoppert.
commented Apr 27, 2014 by marci32 (80 points)  
Köszönöm, akkor csak félreértettem.
commented Apr 27, 2014 by ldani7492 (39 points)  
És enne ilyen tüskéket kéne csinálnia? Ez nekem annyira nem tűnik átlagnak.
https://i.imgur.com/Yq4Ya6G.png
commented Apr 27, 2014 by davidhonfi (371 points)  
commented Apr 27, 2014 by ldani7492 (39 points)  
Nem igazán. Az zavar a legjobban, hogy az AverageCount64 is visszamegy 0-ba, aminek meg semmi köze az órához, úgyhogy nem hiszem hogy azzal lenne a hiba.
Azzal ennyit csinálok összesen, kéne még más is esetleg?

listObjectsCount.IncrementBy(searchResponse.S3Objects.Count);
listObjectsCountBase.Increment();
commented Apr 28, 2014 by kolozsvari_anna (26 points)  
Nem lehet, hogy nem "visszamegy" nullába, hanem csak egyre jobban közelíti? Jön egy csomó másodperc, ahol nem történik semmi -> egyre lejjebb húzzák az átlagot.
commented Apr 28, 2014 by davidhonfi (371 points)  
...