In dem Fall sind die iops zum RAM gemeint. Die sind entscheidend bei diesem Beispiel.
Viele Systeme unterscheiden sich hier gravierend bei vielen "kleinen Pieksern" im RAM. Letztendlich findet hier genau dies statt.
Gerade mips und arm geht hier komplett stiften. Ebenso sind alle Atoms außer der aktuellen Generation ein Negativ Beispiel hierfür.
Wenn man erst anfängt auf einem Bus externem Datenträger zu speichern ist man komplett fucked in diesem Anwendungsbeispiel. (swap)
Intels Galileo ist hier beispielsweise sehr interessant. Da bekommt man gut was durch zum RAM in kleinen schnippeln.
Wenn es mehr Interesse dafür gäbe bei Herstellern von Routern bzw. Recievern würde das Mips und arm in dem Segment vollumfänglich ersetzen.
Es ist billiger, um Faktor 10 schneller und hat den gleichen Stromverbrauch wie die arm basierende Rockchipserie z.b.
Falls es mal jemand schaffen sollte bis hier her zu lesen.
Mann kann vor dem compile in der globals.h in Zeile 248
#define CS_CLIENT_TIMEOUT 5000
in
#define CS_CLIENT_TIMEOUT 1000
abändern. Nach dem compile kann man das clienttimeout auf 1000 Setzen (übersteht nun einen neustart).
Ich Anschluss kann man sienen Cache bis auf 4 Sekunden "runterwaschen".
Diese Methode dürfte jeden "Riesencache" in das reinste Quellwasser verwandeln da 99% der cws im Cache gültig
sein dürften jetzt. Selbst 4 oder 6 Hops weiter dürfte die noch locker für 50% der Fall sein.
Man muß nur clienttimeout zuerst runtersetzen, sonst will max_time nicht.
Ich hab das vorher nie ausprobiert, weil ich ehrlich den Sinn nicht versteh.
Die Gültigkeit eines CWs ist -bei den üblichen Caids- doch 7sec.
Nach 7sec ist dann das nächste CW gültig.
Warum sollte ich auf 3sec Gültigkeit verzichten bei max_time = 4 ?
Was passiert, wenn ich 4sec nach dem Zyklus auf einen Sender zappe?
Max_time besagt doch, wie lang ich den Cache vorhalten will.
Es geht dabei nicht nur um Cacheex sondern auch um lokalen Cache.
Schlechter Cache ist ja nicht gleich alter Cache sondern Cache der zu spät auftaucht. Die Gültigkeit ist immer gleich.
Hier mal noch was von blueven, dem "Erfinder".
Vielleich wird es da klarer
- Each different cw is now pushed to cacheex peers only ONE time! No more risk same cw is pushed twice for same client!
Anyway this depends on max_time parameter, because if a cw arrives after its ecm hash is freed from cache, we lost pushing out informations for clients.
So, you should set max_time as cw lifeat least to be sure this works properly.
Ich hoffe es ist einigermaßen ersichtlich, was ich meine. Geht etwas schwer zu erklären, sorry
Hi,
@maikyy,
hast natürlich recht, wenn man die Überschneidung mitrechnet sogar noch mehr.
Ich wollte es gar nicht so kompliziert machen.
Ich sag mal so, der Zyklus liegt bei
vielen nds/nagra/beta bei ca. 7sec,
einigen nagra/cw/viacces bei 10sec.
Ich wasche auf 6 und das finde ich schon sinnvoll.
So pushe ich die sagen wir voran über 5hops dort ist es dann 7sekunden alt.
Wenn nun ein Reciever dort anfordert und der Internetanschlusse vielleicht nicht so der bringer ist könnte man in einen kritischen Bereich kommen.
In der eigenen User Instanz kann man ja auf 8 oder 9 gehen.
Aber für einen weiterpushe muss der chache schon noch etwas Gültigkeit haben und zwar nicht nur 1sekunde oder ?
Wenn ich nun mit Mode 2 meine userinstanz vollpumpe kann ich dort eine maxtime von 8 oder 9 einstellen. Da von dort aus nur noch ein hop zum pc bzw. Reciever stattfindet. Aber ein fortward auf andere partner macht mehr Cpucycles für cwcyclechecks bei meinen Partnern nötig.
Klar ist das auch ein stückweit Philosophie. Nur sofern ich das system richtig verstehe, ist ein sauberer cache auch ein frischer cache.
Wenn ein cw kurz vor Ende seiner lifetime an einem Reciever ankommt erzeugt es dort einen freeze und wann spreche ich von einem "schlechten" cache wenn nicht dann?
Wenn die wait_time richtig eingestellt und der Reader nicht bis zum Erbrechen ausgelastet ist, kann es gar keinen Freezer geben. Was machst Du denn wenn für den betreffenden Sender gar kein Cache mehr kommt, weil schlichtweg niemand schaut?
Diese Gefahr besteht auch unabhängig von der waittime.
Wenn keiner den Sender sieht innerhalb von 4 oder 7 Sekunden schaut, spielt es keine Rolle mehr was ich da einstelle....
Ich wasche auf 6 und das finde ich schon sinnvoll.
So pushe ich die sagen wir voran über 5hops dort ist es dann 7sekunden alt.
Wenn nun ein Reciever dort anfordert und der Internetanschlusse vielleicht nicht so der bringer ist könnte man in einen kritischen Bereich kommen.
In der eigenen User Instanz kann man ja auf 8 oder 9 gehen.
Aber für einen weiterpushe muss der chache schon noch etwas Gültigkeit haben und zwar nicht nur 1sekunde oder ?
Wenn ich nun mit Mode 2 meine userinstanz vollpumpe kann ich dort eine maxtime von 8 oder 9 einstellen. Da von dort aus nur noch ein hop zum pc bzw. Reciever stattfindet. Aber ein fortward auf andere partner macht mehr Cpucycles für cwcyclechecks bei meinen Partnern nötig.
Klar ist das auch ein stückweit Philosophie. Nur sofern ich das system richtig verstehe, ist ein sauberer cache auch ein frischer cache.
Wenn ein cw kurz vor Ende seiner lifetime an einem Reciever ankommt erzeugt es dort einen freeze und wann spreche ich von einem "schlechten" cache wenn nicht dann?
Habe ich doch vorne.
Da gibt's nix weiter als User und server. Da stehen noch die maxtime drin das wars. Es ist oscams Default config mit severn und Usern drin.
Meine cachequalität ist ja sehr gut und ich bin auch wirklich zu Frieden.
Die lokalen Karten machen nichtmal 1% meiner ecms aus.
wie schickst du den cache deine lokalen karten auf die Ce-instanz ? Mode 2 ?
und wie bringst du ihn dann wieder zurück zurück zur hauptinstanz also für deine user ? Mode 1-2 ?