What would the world and his dog think if P2 used an x86 SOC? (but not mini SD) ;)


Mr_Loon

Can't Remember
Joined
Aug 30, 2010
Messages
2,332
Q) What would Pandora Developers think if P2 used an x86 SOC?

____________________

It strikes me that with the soon to be released x86 based Bay Trail Socs from Intel that there is a genuine question to be answered as to whether P2 should aim to use an ARM based or X86 based SOC.

For the sake of the question please assume that the choice is purely about x86 vs ARM, i.e. both possible P2 SOCs would have near identical performance / cost / power usage etc.

From my perspective as a user it strikes me that the main reason for sticking with ARM (in the above scenario) would be that a lot of work done by the Pandora Dev's would have gone to waste / not be used as much as it deserves to be. However I'm no dev, I've no real idea what motivates people to develop for Pandora, I'm just damn glad they do.

It would be great to hear from any developer of Pandora software / firmware as to what they think of a possible move to x86 as keeping the core Pandora community together should be a major goal of P2 IMHO.

____________________

This has been discussed a little in this thread but I think it's worth a dedicated discussion.
 
Last edited by a moderator:
I bet this is (partially) to reply to this point :

- Devs around here have heavyly invested into the ARM plateform (read that new DSP thread, or all the NEON code) Switching plateform would be akin to a slap in their face
For my part :1) I havent release anything since over a year, so my voice doesnt count much

2) I havent writen a single line of Neon code, so no investment for me there

3) no DSP code either for me

4) I did have invest time into GLES, but with wayland coming I will be able to use that on intel too

So for me I dont care as long as the battery last as long as the current pandy (I bet Exophase, Notaz, MH-T and a few others wont be on the same side of the fense)

EDIT: @Shlee, this actually a good question. And he isnt trying to force his opinion but requesting for comment
 
Last edited by a moderator:
Of course the PNDs on the repo would not work with x86 - they contain binaries for ARM.

But it wouldn't be a huge problem to have a new repo for a Pandora successor.

Most Pandora devs code in programming languages (not assembler), or port programs coded in programming languages. Switching to x86 is not a lot of effort, it's basically just a recompile. Unless you do assembler optimization: that includes a lot of notaz' and Exophase's work - their NEON optimized emulators would need a complete rewrite if the target platform is no longer ARM.

Performance, cost, power consumption (perf/Watt), availability of FOSS drivers, availability of the SoC (in low quantities): those are important to me. If Bay Trail can be competitive in all of those, then why not have it. But I need to see solid benchmark data on performance and power consumption first.
 
Of course the PNDs on the repo would not work with x86 - they contain binaries for ARM.

But it wouldn't be a huge problem to have a new repo for a Pandora successor.

Most Pandora devs code in programming languages (not assembler), or port programs coded in programming languages. Switching to x86 is not a lot of effort, it's basically just a recompile. Unless you do assembler optimization: that includes a lot of notaz' and Exophase's work - their NEON optimized emulators would need a complete rewrite if the target platform is no longer ARM.

Performance, cost, power consumption (perf/Watt), availability of FOSS drivers, availability of the SoC (in low quantities): those are important to me. If Bay Trail can be competitive in all of those, then why not have it. But I need to see solid benchmark data on performance and power consumption first.
I have made these points so many times in my threads to only be called a liar and that I am disrespectful to the devs...
 
only be called a liar and that I am disrespectful to the devs...
Well your reputation builds up over time. When you say BS 100 times, the 101st time you may not be saying BS but people are used to what you said before. Many of your older posts were pure "opinion without any data to support it" pieces. You can't fire a gun unless it's loaded.

availability of the SoC (in low quantities): those are important to me.
Supply is the key problem for a project like the Pandora. That's the first thing that comes to even consider the feasibility. If you can't get it in small numbers, don't even think about it. Even for ARM SOCs it's sometimes difficult to get low quantities.
 
Ok, this may seem dumb, but if we went x86, could we emulate the P1 for compatability? So you have the P2 specific things, but when you want to use anythning for the P1, just launch the P1 emu
 
I guess the point is: there is no big inherent advantage to x86, but there's also no big inherent disadvantage. I would object to sacrificing or compromising anything (e.g. battery life) just in order to get x86.

The main advantage of ARM for us would be: you can have PNDs (i.e. binary packages) that work on both the Pandora and its successor, which allows full backwards compatibility. It's also a technically nicer architecture in terms of design (instruction set, registers, etc) and some of our finest devs (in particular, notaz) have experience with ARM and NEON assembly code, so I can imagine that they would prefer to stay with ARM.

There is not really any advantage to x86 besides being able to run some binaries (but probably not being able to run them well nor to get a nice experience out of them because they're not designed for small screen handhelds with dual nubs and a relatively weak GPU). What you gain in being able to run closed-source x86 stuff, you lose in not being able to run closed-source ARM stuff. For handhelds, the latter is probably going to be the biggest loss. If closed-source binaries are your thing, that is. I personally don't really care.

Ok, this may seem dumb, but if we went x86, could we emulate the P1 for compatability? So you have the P2 specific things, but when you want to use anythning for the P1, just launch the P1 emu
That could be an option, but probably not full speed. A recompile would be a much better option though.
 
:angry:

Give it up chucklehead
I'm confused, not sure you've really read / understood the post if you've taken offence for some reason. Nor why asking the Dev's what they think about a possible move to x86 would cause offence. 
 
I have made these points so many times in my threads to only be called a liar and that I am disrespectful to the devs...
You were disrespectful to the devs. You were cursing at Exophase and equating him with some sort of tyrant.

Ok, this may seem dumb, but if we went x86, could we emulate the P1 for compatability? So you have the P2 specific things, but when you want to use anythning for the P1, just launch the P1 emu
No. You need sufficiently powerful hardware to emulate past systems. The increase in power of next generation ARM and Intel processors would not be enough for playable emulation of the P1. However, on ARM, you would not need to emulate, the most you would need is some sort of compatibility layer like Ginge.

@Mr_Loon, The points I quoted below are some important things to keep in mind:

The main advantage of ARM for us would be: you can have PNDs (i.e. binary packages) that work on both the Pandora and its successor, which allows full backwards compatibility. It's also a technically nicer architecture in terms of design (instruction set, registers, etc) and some of our finest devs (in particular, notaz) have experience with ARM and NEON assembly code, so I can imagine that they would prefer to stay with ARM.
Also, another advantage of ARM that no one seems to be mentioning is that we have access to software for the Wiz and GP2X that can be run through Ginge, which would not be available on x86. (Which means we would actually be losing access to an even larger software library than everyone thinks)

-God Ginrai
 
...unless when they are. You can have it run entirely on top of the VM, or you can go to the metal for performance reasons. And if you do that, you tie yourself to a particular architecture.
 
It strikes me that with the soon to be released x86 based Bay Trail Socs from Intel that there is a genuine question to be answered as to whether P2 should aim to use an ARM based or X86 based SOC.

For the sake of the question please assume that the choice is purely about x86 vs ARM, i.e. both possible P2 SOCs would have near identical performance / cost / power usage etc.
Hmmm... just some thoughts:

Ever since dropping XScale Intel has always promised and yet been beaten every time. And it's quite surprising really that this is the case, because theoretically they should be able to deliver... yet every advantage has always been due to process shrinks (which ARM vendors can eventually duplicate) or lowering performance so much it hurts too much (done all the time anyway...).

So yeah, once again they are promising, but personally I wouldn't give any weight to the promises until I see real world benchmarks of the latest and greatest from Intel and ARM (difficult, because they don't exactly have synced release cycles).

Having said this, they did outdo PowerPC from consumer space, so why not eventually, ARM too... maybe Pandora should just watch what Apple does and do the switch when they do, that's a pretty good indicator of tipping scales ;-).

However, this isn't supposed to be about tech, really, I just wanted to point this out...

Now for the software side:

Stuff that is heavily optimized for Intel is often not OSS. I cannot measure or justify this claim, however, so it is heavily IMHO and I might be wrong. Lightly optimized can still often be compiled without too much work. But performance might not be OK on a mobile CPU. Most code done for bigger CPUs won't run well anyways, so you end up optimizing in any case, whether for x86 or ARM makes little difference at that point...

Now, the reason people would like x86 is "because everything runs on it". But does it really, if you're then forced to (best case) use a bloated Linux distro or (worst case) run Windows anyway? Or accept Atom performance from apps written for Core i7!?

So, you'd get Wine, QEMU with the virtualization module (KQEMU or whatever it's called these days, I think I read somewhere it's been merged to QEMU now?)... and what else would you really, really gain as a user? Both of these are X86. Why not go all the way then and buy an old Sony Vaio UMPC or something?

You'd probably be able to speedily run W2000 - WXP era programs, but even most of them would suffer from really tiny fonts etc.

Devs who haven't optimized for ARM, just compiled, won't care much either way. So most devs probably won't care.

But in many ways X86 often invokes laziness in people these days :p , which is partially why ARM might even be more interesting, if you really want to write tight code and use assembly language. Maybe it's just me, but when an X86 program compiles and is slow, I just think "right... time to get a new laptop". There's so much crud there, layers upon layers of frameworks and whooplas. I remember back in the late 90's when OSS still felt "new" I often took the source and checked whether I could do something about speed and often I could.

So in  a way, in my experience, ARM, because of its mobile roots, encourages people to spare cycles, whereas Intel, because of its desktop roots encourages people to just get a better CPU. I don't know how well the latter thinking "fits" the Pandora world...

And now that I wrote that I realize most of this post was just rambling and I could just cut most of this out, but whatever...  the previous paragraph was My Point :blink:
 
How many worthwhile android apps would we loose by using x86?
 A lot. Pretty much anything that uses NDK is hitting the hardware. If you want an idea of how Android would feel without it, look at Google TV which is currently without NDK support. There's pretty much nothing worthwhile available.

So in  a way, in my experience, ARM, because of its mobile roots, encourages people to spare cycles, whereas Intel, because of its desktop roots encourages people to just get a better CPU. I don't know how well the latter thinking "fits" the Pandora world...
This is very true. Aside from emulators, no one thinks of optimization when they are writing code for x86, so none of the software that people want to run would be optimized.

-God Ginrai
 
Back
Top