Question For The Pandora Owners


ahahah

Active Member
Joined
Feb 13, 2010
Messages
592
hello

for those who already have the pandora, could you tell me if you see any difference in the emulation speed (especially with the more powerfull machines such as psx or nintendo64 emulators) when you run games with minimenu and when you run them with the complete OS.

theorically they should be more fast with minimenu, shouldn't them?
 
I personally have a mash up of XFCE taskbar and matchbox WM for my UI. Before that I used minimenu. I haven't noticed any real performance difference.
 
I chop and change between the full desktop and minimenu, depending on my mood! I can't say I have noticed any difference whatsoever in perfomance. :)
 
damn!

so 2 other questions

1 - is it normal that there is no impact whereas the memory is less loaded?

2 - how many time is needed to boot the pandora with minimenu and with the complete OS?

thanks
 
^ The pandora switches between the GUIs in a matter of seconds. And it is very logical that there is no performance difference for a single application when:
* the entire on-disk working set of the app** fits into the disk cache.
* there are no other applications needing CPU.

** which for an emulator is usually only savegames (not performance limited) and the ROM (usually small and loaded entirely into RAM, except PSX for which the SD speed is much faster than the original CDROM speed).


Duh...
 
and what about the comparaison of the times to boot for the 2 systems?

i mean, the number of seconds between the moment you switch on the pandora and the moment the minimenu appears.
the number of seconds between the moment you switch on the pandora and the moment the desktop displayed in full os mode.

just by curiosity: the minimenu is a mini-OS with only few services loaded isn't it?
it isn't an application that needs the full OS to be first loaded, is it?
 
Currently mmenu is much of the full OS; yes you can disable much more to speed up boot, or go all the way and ditch X11 altogether... We just dont go all the way nuts like that yet

Can explain but on my phone :)

Jeffphone
 
^  [EDIT: :ph34r:'d by skeezix, meant for ahahah (had to check that, wrote ahahahahah... when I realized that I didnt remember it :p)]
Boot to XFCE (until the desktop is visible): ~49s
Boot to minimenu (until the menu is loaded): ~40s
Switch to XFCE from minimenu: ~14s
Switch to Minimenu from XFCE: ~5s

I'd wish to have a proper picture of the linux software stack here. Obviously they cant include two entirely different full featured operating systems in the 512M NAND.
In short the difference comes after Xorg. One loads minimenu, the other loads XFCE4 with all of its bells and whistles (incl. networkmanager etc...).
 
I've built 'boot to minimenu, load nothing else' and it was a damned fast boot, but then you limit what you can run as well.

the pnd system is clever enough actually to fire up X11, if X is not up when an app needs it (if PXML is properly done, anyway.) So in theory you can boot to mmenu (with no X), and still have pretty high functionality; this can save a bunch of boot time (no X, but mostly, none of the widgets that go with xfce etc.)

But its all a sliding scale -- do you go absolutely minimal (some pnds may not work due to missing dependancies), or go 'reasonably minimal', which is what we have; mmenu can go pretty barebones, it depends on nothing else, but so far we've elected it to be 'boot most stuff, then xfce or mmenu at the end', so that you can still do everything.

But certainly can tune things tightly.

Something also to consider is .. libpnd currently is set to scan on boot, since its entirely possible that SD cards were swapped around or switched or ejected etc during off-time, so it pretty much has to do a 'reset' of the pnd catalog on boot; it also doesn't cache too much for the same reason .. things can change a lot ofr various reasons, so syncing a cache is goofy (and also probably has to be on NAND since SDs can change a lot), and writing to NAND is generally bad (ie: dont' want to use it up, since it has limited write-cycles.)

But if you want to go nuts, you can turn down most system services (not that theres too many on the pandora anyway, but some can be ditched), and disable 'rescan on boot' for pnds, and tweak things just so, and skip X11 and everything with it, and no extraneous kernel modules and so on, and you can get it booting in just a few seconds.. but with limited functionality.

It does get you a few more fps in various apps as well.

jeff
 
i see that there are several parameters to manage.

so could it be possible to gather all these parameters in a single interface (something like "tweakui" for windows) that offers the possibility to the user to activate or disactivate options/services to optimize his pandora as a function of his use of the pandora?

of course this user will know the consequences of each activation/desactivation.
 
are you sure?
he has not mentionned that in his precedent reply.
 
ahahah said:
so could it be possible to gather all these parameters in a single interface (something like "tweakui" for windows) that offers the possibility to the user to activate or disactivate options/services to optimize his pandora as a function of his use of the pandora?
sebt3 said:
Done since HF3 ;)
ahahah said:
are you sure?
he has not mentionned that in his precedent reply.
There is no control center.
But the only thing you can do to optimize your pandora is determining which service you want to start at boot time. There is indeed a single app to manage that (introduced in HF3)

So technically it is done imho, but sure it's a matter of opinion ;)
 
Last edited by a moderator:
sebt3 said:
But the only thing you can do to optimize your pandora is determining which service you want to start at boot time. There is indeed a single app to manage that (introduced in HF3)

So technically it is done imho, but sure it's a matter of opinion ;)
In my not so humble opinion :)P), it is not "done". There is a UI which shows a number of services that can be started, but it is only the major services: there's a lot of little things (LED manager, serial terminals, parts of the wifi driver, the battery monitor, bunch of not necessary xfce stuff) that can be tweaked out to give a little more power without sacrificing too much.
 
Last edited by a moderator:
(PM for me to reply; I'm tired out right now, big crunchtime in RL so permit me to babble incoherently)

Its a complicated question I think -- there are a zillion things that can be tweaked, and it really varies per person. Now mind you I've not gone and made an itemized list of thigns you might want to customize to see how nasty a UI it would have to be, but feel free ;)

ie; the one goal was 'gamey UI' and the other was 'full desktop'; those are 'too broad', and in the interest of reducing complexity for firmware and firmware devs and devs writing/porting apps, we ended up making them more or less similar, with the last bit being different. Still, as urjaman points out, we knock off a decent chunk of boot time by using mmenu. And it gives that UI which some people really like, so thats great.

But to tweak it _more_, suddenly there strikes me as a lot of options...

Do you make it so its..

- full desktop
- minimenu
- <whatever other menus are set up>
- minimal tweak level 1 to tweak level 10

That could work, where you define a different batch of tweaks in each tweak level, where lower number is faster boots or something. But that doesn't give fine tuned control.. what if you want this on, that off, or this and such set up a certain way?

And how to convey to the user what the implications are? ie: You could skip X11 entirely and still run straight to mmenu (things boot fast when you do that!); our pnd system will even (I think, we designed it to but didn't test lately since it wasn't our core path) start X for an X-requiring app and then kill X again afterwards .. but then running X-requiring apps is slow with all the X startup/shutdown business. Anyway, if you disable X and a pile of startup widgets to make things boot fast, then your machine might be sufficiently different to normal that some pnds won't work. Is that up to the user to sort out, or if we start offering fine grained config panels to control boot speed, than suddenly the pnd system has to be aware of those options and tell the user 'hey, this pnd won't work right?' -- then suddenly its a lot more work for fw dev, and for the pnd developers to flag required features right, and so on...

The big distros don't even get into this, its a PITA problem; hence why most linux distros include dozens of little config panels and options and piles of command line tweaks :)

Builkding a 'tweak UI' to toggle this or that feature on or off or to a setting coudl be done; or you coudl use the command line. But theres bigger implications here :)

We may get there once we get momentum going again; but nothing stops anyone from tweaking rheir own setup, or even rolling a tweaked firmware and just distributing that; I know at one point I had a kernel + minimenu + all the libs from firmware (so stuff woudl link and run right) + libpnd and was able to boot i liek 10 or 15 seconds or something, but it was long ago; someone could roll up somethign like that and just boot from SD and good to go :) I have often thought about setting up a bitbake for that or somethign, but just RL is nuts this year and got too many projects, so have to stick to just a few.

jeff
 
Skeezix do you think you will ever get a chance to at least enhance MM to what was stated before (user selectable catagories, subcats etc)? Yes I know that turn based thing sucked up any free time you had, but maybe when you are done with that? To me I think more probably use MM than a turn-based strategy internet only text game, but that could just be my take on it.

I to would like a version that strips out all of the unused X11 crap out for faster boot times and smoother emus. If I want all the X11 bells and whistles I just load XFCE.
 
DaveC said:
I to would like a version that strips out all of the unused X11 crap out for faster boot times and smoother emus. If I want all the X11 bells and whistles I just load XFCE.

+1

my thought is summarized in these few words, thanks :p


i have a dingoo A320, and the system loads in about 1 sec.
On dingoo A320 there is an other way to boot on. It is called "dingux". The boot time is a little bit longer than with the default menu but it is sufficient (about 5 sec).

i dream about a mini-menu for pandora that has equivalents boot time, just for playing with emulators and nothing more :)
(a sort of level 1 mini-menu)

and if you want to run apps, just load the part for it. (a sort of level 2 mini-menu)
i know that "behind" the word "just" it isn't so easy, but maybe having the "level 1" would be so great, and there will be a real interest to use mini-menu. :)
 
Last edited by a moderator:
I guess, Programms could be much much faster if they would be able to run onto "bare metal" of the Pandora. :) No heavy OS underneeth but hardcore-optimized "driver-stuff" that uses everything, the OMAP can offer. Maybe In a way it works onto the PSP or NDS. I guess these Machines also have some kind of OS between Hardware and Software. But I'm sure there is not much useless and performance eating stuff in, otherwise we wouldn't have that great (3D) graphics onto a compared slow Hardware like the NDS (NDSi: only 133MHz!!!) is if you compare the pure HW with the Pandora HW. ^^
So I guess the Pandora OS itself (or components of it) still eats an incredible ammount of HW Power so the Games/Emulators n stuff are not as fast as they could be onto high optimized conditions.

I really wonder what the Pandora is capable of if we would have overall better Drivers, newer Kernel and a more optimized Firmware and Programs would run closer to the hardware than they do at the moment.. ^^"
 
fusion_power said:
So I guess the Pandora OS itself (or components of it) still eats an incredible ammount of HW Power so the Games/Emulators n stuff are not as fast as they could be onto high optimized conditions.
No, that's not how it works. The OS doesn't get in the way and eat CPU usually, all it does is provide a set of tools to access memory, input, and output. If there were no OS to do these thing, the program itself would still have to do them. If a certain way of doing something isn't efficient, if it gets fixed in the OS everything that uses that function automatically benefits. If you strip out the OS and do it directly, it's still as inefficient just now you need to update each program that does it when an improvement is found. The OS is rarely the source of problems, especially in this case.
That being said, it is actually pretty easy to get such a bare metal program going on the Pandora: once you've written and compiled the program, you can follow the steps for booting the OS from an SD card, except instead of loading uImage (the Linux kernel that starts the rest of the OS) you simply tell it to load your program.
The hard part, of course, is writing the program. No X window or SDL means you need to directly write things to the framebuffer. No OS means no filesystem unless you write it yourself. You can't even "printf("Hello World");" until you've implemented printf. Not an easy thing to do, and you really wouldn't gain anything by it.
 
Last edited by a moderator:
Back
Top