Jump to content


Photo

Et5000 mediaplayer loopt steeds vast


  • Please log in to reply
111 replies to this topic

Re: Et5000 mediaplayer loopt steeds vast #81 Stephan296

  • Senior Member
  • 948 posts

+8
Neutral

Posted 4 September 2012 - 15:07

Ik heb ook een swap file aangemaakt op een usb stick van 2gb.
Geformatteerd naar fat32, in de ontvanger gedaan, toen ge-unmount want hij mount hem inderdaad direct.
Toen de swap-commando's toegepast zoals een stuk hierboven beschreven.
Toen via systools gekeken wat het geheugen verbruik was, en wat bleek bij het afspelen van een 1080p film pakte hij meer dan 30 mb van de usb stick.
Terwijl er op RAM nog maar 7mb vrij was, dan is het ook niet zo gek dat hij zijn geheugen vol laat lopen als hij niet meer heeft haha.
Tot nu toe werkt het goed, inderdaad bij het wisselen tussen films lijkt het net alsof hij even stil staat maar het werkt wel gewoon.
Verder draait het super tot nu toe.
Mijn et9000 ontvanger komt donderdag als het goed is weer hier dus dan heb ik daar geen last meer van.

 Hardware: Clarke Tech ET9200 & Xtrend ET5000- Triax 78cm - 28.2E/23.5E/19.2E/13E
Software : Laatste Pli 4.0 Nightly Build - CCcam 2.2.1 - Settings van Hans
 


Re: Et5000 mediaplayer loopt steeds vast #82 BuGless

  • Senior Member
  • 539 posts

+16
Neutral

Posted 5 September 2012 - 14:26

Maar de kernel (nfs...) heeft soms wat aaneengesloten fysiek geheugen nodig, en dat is op dat moment gewoon "op".


Normaliter zou dat toch niet veel meer moeten zijn dan 2 pages (8KB) oid, 2MB aaneengesloten voor NFS (her)ken ik niet.

Als je een swap device hebt, dan kan de kernel pages van user space processes uitswappen om zo voldoende aaneengesloten stukken geheugen te verkrijgen. Op het moment dat dat nodig is, zal enigma even heel traag zijn en misschien wel even stil staan, maar hij kan tenminste wel blijven draaien, terwijl enigma anders gewoon wordt afgeschoten om meer geheugen te verkrijgen. In dat opzicht ben ik het dus niet met Pieter eens dat swap alleen maar uitstel is. Het bewijs is dat het bij mij nu achter elkaar gewoon draait.


Als het de fragmentatie is, ja, dan heb je gelijk, en is het een echte oplossing.
Alhoewel ik dan ook gelijk me afvraag waarom Linux niet zelf al in geval van geen-swap een defragmentatie intern uitvoert, want dat zou feitelijk net zo goed moeten kunnen, en sneller moeten zijn dan daadwerkelijk naar swap swappen en terug. Beetje inefficient dat perse een swap device nodig is alleen om defragmentatie te faciliteren.

Re: Et5000 mediaplayer loopt steeds vast #83 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 5 September 2012 - 15:55

Yep, klagen bij Linus :D Ik denk dat de achterliggende gedachte is dat bijna iedereen wel iets van swap heeft. Hoewel... er zijn genoeg embedded apparaten waar linux op draait, meestal zonder swap. Ik denk dat enigma in die zin wel "bijzonder" is, omdat die heel veel geheugen in één proces gebruikt (wel meerdere threads, maar dat is niet van belang). Zeker als je een week vooruit EPG gaat inlezen. Daar moeten we ook echt eens wat aan doen, dat moet gewoon op schijf blijven staan.

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #84 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 5 September 2012 - 16:01

het is geen geval van fragmentatie lijkt mij, als er nog een aaneengesloten blok van 1MB en eentje van 512kB beschikbaar (op totaal 2MB vrij)

Re: Et5000 mediaplayer loopt steeds vast #85 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 5 September 2012 - 16:39

De hamvraag is dan, waarom gaat de OOM dan aan de gang?

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #86 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 5 September 2012 - 16:55

De hamvraag is dan, waarom gaat de OOM dan aan de gang?


omdat er ergens een blok van 2MB of groter gealloceerd wordt.
Ofwel in een context die geen disk io toestaat (anders was er wel cache geflushed), of omdat er simpelweg geen cache te flushen is (omdat het geheugen echt tot de rand volgestouwd zit met epg)

Re: Et5000 mediaplayer loopt steeds vast #87 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 5 September 2012 - 17:40

Die EPG zal zeker meespelen, bij mij zit-ie er ook goed vol mee. En daarvoor helpt swap dan precies. De ervaring leert dat minder gebruikte pagina's preventief uitgeswapt worden, dus zou deze situatie minder vaak / niet meer moeten voorkomen. En vooralsnog komt dat ook zo uit. De ultieme oplossing is dan toch epg op schijf, maar swap komt in de buurt.

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #88 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 5 September 2012 - 18:03

Die EPG zal zeker meespelen, bij mij zit-ie er ook goed vol mee.


jouw log was anders, dat was wel degelijk fragmentatie (er was niks groters dan 4kB beschikbaar)

Re: Et5000 mediaplayer loopt steeds vast #89 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 5 September 2012 - 18:11

Misschien dat NFS meer dan 1 MB aaneengesloten nodig heeft, of meer dan 1 keer 1 MB?

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #90 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 5 September 2012 - 19:50

Misschien dat NFS meer dan 1 MB aaneengesloten nodig heeft, of meer dan 1 keer 1 MB?


vandaar dat we TS hebben aangeraden om eens zonder nfs te proberen, en toen trad het nog steeds op, ook weer met een 1MB en 512kB blok beschikbaar.

Re: Et5000 mediaplayer loopt steeds vast #91 BuGless

  • Senior Member
  • 539 posts

+16
Neutral

Posted 6 September 2012 - 16:51

Misschien een domme vraag (want ik weet niet precies hoe de EPG intern gebruikt wordt), maar waarom wordt de EPG data niet gewoon ge-mmap()ed? Kost bijna geen programmeereffort, en gelijk voordeel van ruimte die vrijkomt in het geheugen (en geen swap nodig).

Overigens, wat betreft swap, dat kan (dacht ik) ook via NFS (aparte swappartitie; of kon dat alleen onder SunOS/Solaris?).

Oja, en nogmaals, NFS alloceert AFAICR nooit veel meer dan 8KB (of max. 64KB) aaneengesloten.

Re: Et5000 mediaplayer loopt steeds vast #92 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 6 September 2012 - 17:01

In principe is swap over NFS mogelijk, maar daar krijg je in dit geval een kip-ei-situatie mee. Ik heb het ooit wel gedaan, op totaal-diskless clients, maar de performance is vreselijk, ik kan het niet aanraden.

Het probleem met epg is dat het niet zomaar een file is die je kunt mmappen, dan was het wel heel makkelijk geweest. EPG data komt uit allerlei bronnen en wordt op dit moment als eit data (als ik het goed heb) in geheugen opgeslagen. Alles wat geen eit data is, wordt daarnaar geconverteerd. Je zou zoiets in een database-file moeten stoppen, zoals sqlite o.i.d, dat zou ideaal zijn. Alleen is dat een hele operatie en er zijn totnogtoe nog geen vrijwilligers geweest om deze flinke klus op zich te nemen. Hoor ik hier een vrijwilliger? :D

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #93 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 6 September 2012 - 17:10

in e1 hebben we sqlite gebruikt om epg op te slaan. Maar dit gaf veel performance verlies (blocking file io), conclusie je kan niet de epgcache implementatie veranderen zonder de epg users ook om te schrijven.

Re: Et5000 mediaplayer loopt steeds vast #94 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 6 September 2012 - 17:52

Misschien dat de performance op e2 beter zal zijn door meer geheugen vrij voor caching?

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #95 dAF2000

  • PLi® Ex-Leden
  • 14,151 posts

+52
Good

Posted 6 September 2012 - 17:55

Beetje on-topic blijven, graag ;)
Many answers to your question can be found in our wiki: http://openpli.org/wiki

Re: Et5000 mediaplayer loopt steeds vast #96 BuGless

  • Senior Member
  • 539 posts

+16
Neutral

Posted 6 September 2012 - 18:35

Het probleem met epg is dat het niet zomaar een file is die je kunt mmappen, dan was het wel heel makkelijk geweest. EPG data komt uit allerlei bronnen en wordt op dit moment als eit data (als ik het goed heb) in geheugen opgeslagen. Alles wat geen eit data is, wordt daarnaar geconverteerd.

In principe is het mogelijk om zo'n eit structuur op een dusdanige manier op te slaan (in het geheugen) dat het nagenoeg gemmapped kan worden. Ik heb dat in het verleden wel met squid cache index structuren gedaan.

Je zou zoiets in een database-file moeten stoppen, zoals sqlite o.i.d, dat zou ideaal zijn. Alleen is dat een hele operatie en er zijn totnogtoe nog geen vrijwilligers geweest om deze flinke klus op zich te nemen. Hoor ik hier een vrijwilliger? :D

Ik wil er wel eens naar kijken, no promises though. Het probleem is dat ik de sources wel al uitgepakt heb liggen, maar nog niet zo ver ben gekomen dat ik daadwerkelijk een van m'n 3 grootste ergernissen heb kunnen vinden in de source, en daarmee dus ook de rest van de toolchain nog niet geinstalleerd heb. Als de omgeving eenmaal werkt, zijn iets grotere aanpassingen ook geen probleem meer.

in e1 hebben we sqlite gebruikt om epg op te slaan. Maar dit gaf veel performance verlies (blocking file io), conclusie je kan niet de epgcache implementatie veranderen zonder de epg users ook om te schrijven.

Als je iets in een DB gooit, is het noodzakelijk om de structuur van de DB (en de indexen) aan te passen op het gebruik; dat zou voor EPG ook moeten kunnen.

Wat betreft "on topic"; het gaat hier uiteindelijk om het terugdringen van het geheugengebruik, en EPG is een redelijk wezenlijke factor daarin (lijkt me).

Re: Et5000 mediaplayer loopt steeds vast #97 Erik Slagter

  • PLi® Core member
  • 46,969 posts

+541
Excellent

Posted 6 September 2012 - 18:47

Dat laatste ben ik het zeker mee eens, EPG is een enorme verbruiker en dat komt de stabiliteit niet ten goede. Ooit was ik ook nog heel enthousiast om vanalles aan enigma(2) te gaan hersleutelen, maar e.e.a. blijkt toch behoorlijk complex. Je hebt bijvoorbeeld te maken met plugins van derden die allerlei "internals" enigma verwachten die je niet zomaar om kunt gooien. Niet om je te ontmoedigen natuurlijk ;)

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Et5000 mediaplayer loopt steeds vast #98 BuGless

  • Senior Member
  • 539 posts

+16
Neutral

Posted 7 September 2012 - 13:58

Ooit was ik ook nog heel enthousiast om vanalles aan enigma(2) te gaan hersleutelen, maar e.e.a. blijkt toch behoorlijk complex. Je hebt bijvoorbeeld te maken met plugins van derden die allerlei "internals" enigma verwachten die je niet zomaar om kunt gooien. Niet om je te ontmoedigen natuurlijk ;)


Ik pas wel eens dingen aan in gcc of de Linux kernel, dus zo snel krijg je me niet ontmoedigd (tenzij het net zo erg is als de Asterisk broncode; dat is de eerste source waar ik na heel even gekeken te hebben, de bestanden snel weer dichtgegooid heb, om nooit meer te openen :-/).

Wat betreft overcommit, je zegt dat dat al uit staat op een openpli box. Toch lijkt het alsof ik zie dat op een box meer virtueel geheugen gealloceerd wordt dan dat er fysiek aanwezig is (op een DM500HD zonder swap). Dat zou dan toch eigenlijk niet mogen kunnen?

Re: Et5000 mediaplayer loopt steeds vast #99 BuGless

  • Senior Member
  • 539 posts

+16
Neutral

Posted 10 September 2012 - 11:28

Wat betreft overcommit, je zegt dat dat al uit staat op een openpli box. Toch lijkt het alsof ik zie dat op een box meer virtueel geheugen gealloceerd wordt dan dat er fysiek aanwezig is (op een DM500HD zonder swap). Dat zou dan toch eigenlijk niet mogen kunnen?


Hmmm, ik denk dat OpenPLi hier een duidelijk verbeterpunt heeft. Bij nalezen van de kernel docs blijkt dat de voor embedded/dedicated devices (zoals een OpenPLi systeem) de meest optimale instelling is:

echo 99 >/proc/sys/vm/overcommit_ratio
echo 2 >/proc/sys/vm/overcommit_memory

Dit is nl. de enige instelling die ervoor zorgt dat Linux niet speculatief meer geheugen toelaat om te alloceren. Aangezien het hier een gecontroleerde omgeving betreft (hoofdzakelijk enigma2), lijkt het me voor de hand liggen dat de kernel niet hoeft te liegen tegen enigma over de hoeveelheid beschikbare geheugen. Bijkomend gevolg is dat je verlost bent van het soort problemen dat "na een bepaalde tijd" zorgen dat de boel hangt, opnieuw start oid.

Een ander gevolg van deze instelling is dat, als je te weinig geheugen hebt om over langere tijd te blijven functioneren, je daar in een vroegtijdig stadium bericht van krijgt (omdat malloc() NULL teruggeeft, of omdat een programma bij het opstarten reeds zich beeindigd met de mededeling dat er te weinig geheugen is). Het is op dat moment dan duidelijk dat er swap bij moet, en hoeft dan dus ook niet meer geraden te worden naar een mogelijke oplossing van geheugentekorten die al naar gelang gebruik sporadisch en ogenschijnlijk random voorkomen.

Ik ga dit op m'n eigen systemen aanpassen in ieder geval.

Re: Et5000 mediaplayer loopt steeds vast #100 Stephan296

  • Senior Member
  • 948 posts

+8
Neutral

Posted 10 September 2012 - 11:54


Wat betreft overcommit, je zegt dat dat al uit staat op een openpli box. Toch lijkt het alsof ik zie dat op een box meer virtueel geheugen gealloceerd wordt dan dat er fysiek aanwezig is (op een DM500HD zonder swap). Dat zou dan toch eigenlijk niet mogen kunnen?


Hmmm, ik denk dat OpenPLi hier een duidelijk verbeterpunt heeft. Bij nalezen van de kernel docs blijkt dat de voor embedded/dedicated devices (zoals een OpenPLi systeem) de meest optimale instelling is:

echo 99 >/proc/sys/vm/overcommit_ratio
echo 2 >/proc/sys/vm/overcommit_memory

Dit is nl. de enige instelling die ervoor zorgt dat Linux niet speculatief meer geheugen toelaat om te alloceren. Aangezien het hier een gecontroleerde omgeving betreft (hoofdzakelijk enigma2), lijkt het me voor de hand liggen dat de kernel niet hoeft te liegen tegen enigma over de hoeveelheid beschikbare geheugen. Bijkomend gevolg is dat je verlost bent van het soort problemen dat "na een bepaalde tijd" zorgen dat de boel hangt, opnieuw start oid.

Een ander gevolg van deze instelling is dat, als je te weinig geheugen hebt om over langere tijd te blijven functioneren, je daar in een vroegtijdig stadium bericht van krijgt (omdat malloc() NULL teruggeeft, of omdat een programma bij het opstarten reeds zich beeindigd met de mededeling dat er te weinig geheugen is). Het is op dat moment dan duidelijk dat er swap bij moet, en hoeft dan dus ook niet meer geraden te worden naar een mogelijke oplossing van geheugentekorten die al naar gelang gebruik sporadisch en ogenschijnlijk random voorkomen.

Ik ga dit op m'n eigen systemen aanpassen in ieder geval.


Je bent goed bezig :P
Heb je ook een oplossing voor de EPG?

 Hardware: Clarke Tech ET9200 & Xtrend ET5000- Triax 78cm - 28.2E/23.5E/19.2E/13E
Software : Laatste Pli 4.0 Nightly Build - CCcam 2.2.1 - Settings van Hans
 



5 user(s) are reading this topic

0 members, 5 guests, 0 anonymous users