Ram & eMMC costs / power drain


With the ability to hotplug RAM and some users really planning on using it for VMs, 4GiB could be a lot more useful. How great would it be to just deactivate 2 or 3 RAM chips for standby or a Pandora port and then reactivate it for loading full GD-ROM ISOs into RAM to play Dreamcast games without any loading times? And if that could be done automatically with a daemon, I just don't see any reason except for the price for not using more RAM.
Or is there any error in my reasoning? Doesn't Linux already do this autmatically?
 
Thanks @WizardStan it's good to have some idea of what the actual battery impact of 2GB vs 4GB would be.

Also from @Exophase in the it's yummy thread :

It shouldn't work that way... DRAMs consume the most power when accessed heavily, not when they're idle. When idle they only have to be refreshed occasionally to keep charge and these days that refresh can happen internally on the DRAM chip. Doubling the capacity doesn't come anywhere close to doubling the power consumption unless you also double the width so the extra DRAMs are all being operated at the same time.

Plus being able to use LPDDR3 helps with power consumption so it's not going to be as bad as with DDR3L.

Of course some real world tests & confirmation if a power saving mode that disables unused Ram is feasible would be nice....

What we really need now is for @EvilDragon to let us know the cost implications of 2GB vs 4GB and then people can make a sensible decision about what they'd like to see.

Unless anyone else knows what the likely costs of Ram for the Pyra SOC would be?
 
Do you really want to redesign the board?

In my opinion we should release the Pyra as fast as possible.
Let's then focus on getting a more recent processor and more RAM.
For the OMAP 5 the 2 GB should be sufficient for most users.
 
It's not. It's a very big approximation under the assumption that you're actually using the RAM. If you're using a web browsers with a dozen tabs open, that's probably close to what it'll be. If you're playing, like, an SNES emulator or something else low RAM, the impact shouldn't be anywhere near that, half that at most.
Not convinced. Unless you can turn modules off and invalidate their contents, you'll need to keep them powered up. I suspect if they're powered up the current needed to refresh the bits is the dominant load, so will be invariant depending on whether you're actually using it or not, assuming we're talking DRAM.

Edit: Ooops, looks like I need to defer to Exo in the other thread. Aparently refresh costs aren't all that when it's busy actually being used.
 
On my Pandora I don't tend to run much at the same time (except occasionally doing a PNDManager update while testing out games),

Side note: How do you do this? I wish I could minimize PNDmanager. The only thing I can do is hit the Pandora button and open something else from the menu, but no way to open something that is only a desktop entry.
[doublepost=1458144396,1458144021][/doublepost]
So using some hand wavy math, 2GB = 10 hours of usage, 4GB = 8.3 hours of usage.

Based on this, I say we go with 2GB. Pandora has 12 hours of usage, but you turn on wifi or start browsing/torrenting and that time decreases quite a bit down to ~6-8 hours.

So with 2GB and heavy usage that 10 hours could turn into ~5-6. Similarly the 4GB and heavy usage would turn 8 hour into ~4 hours....that is normal laptop territory
 
Do you really want to redesign the board?

In my opinion we should release the Pyra as fast as possible.
Let's then focus on getting a more recent processor and more RAM.
For the OMAP 5 the 2 GB should be sufficient for most users.
Why would it be necessary to change the board?

From ED in the yummy thread : Each DRAM we have on the Pyra eats 200mW, and we got 4

Not sure how these could be filled, but 4 lots of 1GB seems possible.

When there was a survey over half the respondents were interested in over 2GB.

See earlier in the thread for why I'd want 4GB.

Not sure if this will be a deal breaker for me but it might be for some....
 
Not sure how these could be filled, but 4 lots of 1GB seems possible.

When there was a survey over half the respondents were interested in over 2GB.

If 4x 1GB is possible, then yes.
I thought it was 4x512MB or 8x 512MB.

If it doesn't matter too much battery wise or we can turn off the RAM we don't need, then I'd vote for 4 GB for sure.
Price is no argument for me.
It won't be 50$.
 
Last edited:
Side note: How do you do this? I wish I could minimize PNDmanager. The only thing I can do is hit the Pandora button and open something else from the menu, but no way to open something that is only a desktop entry.

I usually just launch something from inside PNDManager (hit enter), but you can also alt-tab out of PNDManager to another app or back to the desktop. If I remember rightly, there's even a button to run PND Manager in windowed mode, rather than fullscreen, but I don't know off the top or my head what that is.
 
Not convinced. Unless you can turn modules off and invalidate their contents, you'll need to keep them powered up. I suspect if they're powered up the current needed to refresh the bits is the dominant load, so will be invariant depending on whether you're actually using it or not, assuming we're talking DRAM.

Edit: Ooops, looks like I need to defer to Exo in the other thread. Aparently refresh costs aren't all that when it's busy actually being used.

To expand a little.. a refresh is functionally like a read operation. From what I can find, DRAM refresh these days is around 64ms. So if you 4GB of memory that would mean you need around 65.5 million cell refreshes a second. Meanwhile, if the peak read rate is 12.8GB/s like on Pyra, that's 102400 million cell reads per cycle. It's a much larger number.
 
If I remember rightly, there's even a button to run PND Manager in windowed mode, rather than fullscreen, but I don't know off the top or my head what that is.
I think it is also a setting. Either mine launches in a window or I have my little bar thingy with the start button that I can't recall the name of right now set to not be permitted to be covered, or something.

Wow, this post is worthless...oh, well.
 
Last edited:
To expand a little.. a refresh is functionally like a read operation. From what I can find, DRAM refresh these days is around 64ms. So if you 4GB of memory that would mean you need around 65.5 million cell refreshes a second. Meanwhile, if the peak read rate is 12.8GB/s like on Pyra, that's 102400 million cell reads per cycle. It's a much larger number.

Hmm, okay, so it does depend on just how heavily it's being used. I'm not able to reproduce your maths, so I can't figure out how much you'd need to use it to outweigh the refresh cost (or just to equal it), but I'd suggest using all 12.8GB/s for one complete battery drain is not a likely scenario. More likely over the cost of a full battery run battery refresh costs still come into play, especially if you're not using all that much bandwidth, like using it as an MP3 player.

If you mean 102400 million cell reads per second there, rather than per cycle, then it's numerically comparable with the 65.5 million cr/s, and mean you'd have to be using the RAM at full pelt roughly 15% of the time to equal the refresh cost. On a ten hour run that would presumably equivalent to reading 72TB of data.

Of course, we don't know what the write cost is, but it's likely to be a bit slower as it needs to select the right row and column before applying a voltage to a transistor, but assuming you write as much as you read, I can't see that getting much below 1TB of data over a 10 hour battery run, which is filling a 4GB RAM bank 256 times over ten hours, or once every two and a bit minutes by my reckoning.

If you can't use it that much, the refresh cost becomes dominant, if I've understood what you've written at all (which, admittedly, is looking increasingly unlikely the longer I keep writing this). Sigh ;)
 
Hmm, okay, so it does depend on just how heavily it's being used. I'm not able to reproduce your maths, so I can't figure out how much you'd need to use it to outweigh the refresh cost (or just to equal it), but I'd suggest using all 12.8GB/s for one complete battery drain is not a likely scenario. More likely over the cost of a full battery run battery refresh costs still come into play, especially if you're not using all that much bandwidth, like using it as an MP3 player.

If you mean 102400 million cell reads per second there, rather than per cycle, then it's numerically comparable with the 65.5 million cr/s, and mean you'd have to be using the RAM at full pelt roughly 15% of the time to equal the refresh cost. On a ten hour run that would presumably equivalent to reading 72TB of data.

Of course, we don't know what the write cost is, but it's likely to be a bit slower as it needs to select the right row and column before applying a voltage to a transistor, but assuming you write as much as you read, I can't see that getting much below 1TB of data over a 10 hour battery run, which is filling a 4GB RAM bank 256 times over ten hours, or once every two and a bit minutes by my reckoning.

If you can't use it that much, the refresh cost becomes dominant, if I've understood what you've written at all (which, admittedly, is looking increasingly unlikely the longer I keep writing this). Sigh ;)

I meant reads per second. But it's not 15%, it's 0.0639%. Yes, that's for full load and you won't normally use that much while it's active (but you will normally use a lot more than 1%). Nonetheless, heavy load is where ED's 200 mW come from. Adding each additional DIMM without increasing the access width probably adds in the tens of mW (and for reasons beyond just refresh), not hundreds. So a relatively marginal if not completely insignificant cost.

It's really not a question of what's dominant among some share, it's a question of how much of an overall impact it'll have.
 
I usually just launch something from inside PNDManager (hit enter), but you can also alt-tab out of PNDManager to another app or back to the desktop. If I remember rightly, there's even a button to run PND Manager in windowed mode, rather than fullscreen, but I don't know off the top or my head what that is.

Awesome, didn't realize if you launched inside the manager it worked and kept PNDmanager running. Thanks!
 
Why would it be necessary to change the board?

From ED in the yummy thread : Each DRAM we have on the Pyra eats 200mW, and we got 4

Not sure how these could be filled, but 4 lots of 1GB seems possible.

When there was a survey over half the respondents were interested in over 2GB.

See earlier in the thread for why I'd want 4GB.

Not sure if this will be a deal breaker for me but it might be for some....

Why is there this pressure for scope creep when the project is so close to completion? At this point, for this version, I think we can consider it locked down at 2GB. That is plenty for the stated purposes of the device.

"But but my phone has 3GB of RAM and it's ARM and my buddy says the Pyra will suck if it doesn't have more RAM and Gigahertz than his phone/GPD/laptop and I don't want to be stuck 2 years from now with a machine with less spec goodness than his and my laptop has 8GB and that works well and blah blah blah..."

Where things go awry is when trying to compare 2GB of RAM on a Pyra to 2GB of RAM on a Windows machine. The Windows overhead will consume 2.5GB or thereabout. Linux, using the Pandora example, can run inside of something well short of 128MB.

So:
4GB of RAM on an X86 Windows machine leaves about 1.5GB for end user use with bloated applications.
2GB of RAM on an ARM Linux machine leaves about 1.8+GB for end user use with streamlined applications.

Comparing RAM needs to X86 Windows machines is a pile of silliness. A better comparison would be to the Pandora's 256/512MB and say, "Wow! 2GB is a s$%^ ton of RAM in this type of device!"
 
Why is there this pressure for scope creep when the project is so close to completion?
The poll indicating that over 50% of users would be interested in more than 2GB was taken quite some time ago.

There has never been an official announcement that Pyra would have 2GB. (that I've seen)

Surely the only sensible way to decide what would be a persons desired amount of Ram would be for them to understand the cost & battery implications.

You can only give those when it's known when the parts would be ordered & you have a prototype to test.

You can change the ram amount when manufacturing without any redesign of the board, just add 4 1GB modules to the 4 slots rather than 4 512MB or 2 1GB.

Comparing RAM needs to X86 Windows machines is a pile of silliness. A better comparison would be to the Pandora's 256/512MB and say, "Wow! 2GB is a s$%^ ton of RAM in this type of device!"

As a minor side issue, specs are important when marketing, we now have a competitor on the horizon in the form of the GPD win, which will probably be about half the price & twice the CPU power of the Pyra, why make the job of competing even harder by also having half the Ram if the additional costs are not prohibitive, when attempting to compete as a serious computing platform.

See my personal reasons for wanting 4GB earlier in this thread.
 
Marketing will not help one bit IMO if the competition is a half the price Windows device while the Pyra is running Debian. I assume that people that are interested in a Pyra will do the research and should find the pros and cons if they are well presented in this forum / site or wiki.
If there are real benefits to have 4 GB, will not add significant costs, delay production and it will not affect battery performance then fine, but I don't think it should be added just to have similar or better specs on paper than the competition.
 
Marketing will not help one bit IMO if the competition is a half the price Windows device while the Pyra is running Debian.

It depends what the potential customer wants to do with the device, if they would like to use their hand held mini PC for a tasks that requires a lot of Ram then this could be the deciding factor for some.

My understanding is that with the Pyra the Marketing goal is to sell enough units to fund development costs, cover other expenses & generate a bit of profit on top of that, the goal is not to sell more than the GPD Win or to take the handheld world by storm selling millions of units. So if there were 1000 people world wide who needed their device to run a ram intensive task or two, were looking for a Pyra type device and were generally favourable to the ethos of the Pyra, this could be a major help with sales / marketing goals, provided as you rightly say it does not 'add significant costs, delay production and it will not affect battery performance'.
 
It depends what the potential customer wants to do with the device

One of the largest benefits of the Pyra is how intelligently it is designed and structured. It is built for intelligent use - not a specifications race. The quantity of real RAM is not the en of the story on how the system can/could/should be utilized.

And yet you haven't given any actual reason for wanting 4GB over 2GB other than 4>2. Reiterating skewed poll results does not count. It just shows that 'over half' had little to no idea of what they actually need.

What do you think that you want to do with a Pyra that cannot effectively be done inside of 2GB of RAM augmented by a flash based /SWAP partition?

The three SD card slots on the Pyra should have 400-500% of the read/write speed of the Pandora. The NAND could, theoretically, be up to 1000% of the Pandora's SD slots read/write speed. NAND/FLASH is very energy efficient and fast enough to truly work as a RAM expansion when handled as a Linux /SWAP where inactive items loaded to RAM can be shuffled off to.

The odds are you won't be able to find more than 2-3 usage cases where more than 2GB is needed. For those few, using /SWAP to double or quadruple or more the RAM should fill the gap.

In fact, the only real usage case I have seen to justify more than 2GB of real RAM is for multiple Android Virtual Machines - if such a thing ever becomes possible. Even still, each of those Android VMs should be able to live within 256 MB or so of RAM assigned.

What, exactly, is your usage case that demands 4GB of real RAM that cannot be substituted with intelligent use 2GB RAM and a 4GB /SWAP partition riding on the tail end of a 16+GB 180MB/s NAND flash?
 
Personally, I'd rather not use my irreplaceable (without access to a reflow oven at least) NAND/eMMC flash as swap, no matter how fast it is. But I'm quite happy using an SD card for that purpose.
 
And yet you haven't given any actual reason for wanting 4GB over 2GB other than 4>2
From earlier in this thread : Why would I want 4GB of ram? Image editing, Running VM's, Future proofing, Desktop replacement use, Ram intensive gaming, Running a Ramdisk, etc.

NB Those are my personal reasons, I can think of some equally good reasons why other people might also want 4GB : Compiling, Video Editing, Audio Editing / Recording (using something like cubase),

@ Grench : You seem to misunderstand the purpose of this thread, it is not to say the Pyra must have 4GB of Ram rather than 2 GB of Ram, I have said that personally I would like that (depending on costs / battery impact) and that there was also a survey that indicated I might not be alone in this feeling.

The purpose of this thread is to attempt to understand the cost / battery implications of Ram / eMMC size to allow people to decide what they personally would like to see.

I can fully appreciate that you personally would never want to use more than 2GB so any more than that would be a waste for you, however what you should try and do is put yourself in the place of someone who might want to use more than 2GB.

Let's use a bit of Reductio ad absurdum to help you understand, consider these 2 (absurd) scenarios for the 4GB vs 2GB question :

1) There is no significant battery impact & the extra cost is €1

2) There is a significant impact on battery life & the extra cost is €100

After providing that info customers are then asked what they would want to see in terms of Ram size, I'd be willing to bet that a very large percentage would say yes to 4GB for option 1 but no to 4GB for option 2.

Without the cost & battery info an intelligent decision cannot be made IMHO.
What, exactly, is your usage case that demands 4GB of real RAM that cannot be substituted with intelligent use 2GB RAM and a 4GB /SWAP partition riding on the tail end of a 16+GB 180MB/s NAND flash?
The same reason you would not want the Pyra to have 1GB or 512MB of Ram & rely on a swap partition. i.e. from my experience one of the most cost effective ways to improve system performance is to have enough Ram for the intended task.

Let's use image editing as an example, you might erroneously believe that to edit a multi layered image file based around a 6MB / 15 Megapixel jpeg image you would require a maximum of 6MB per layer and for all the layers in the editing history, however it does not work that way. When you use a RGB bitmap based editor such as Gimp / Photoshop every one of those 15 Million pixels in every layer requires 24bits of colour info (when using 8bit RGB colour) add in the ram cost of keeping all those layers in the editing history and you'll see why more RAM is very useful for serious image editing, especially when attempting to preserve all colour info from a RAW image which means using 16bits per colour channel...

I could provide a similar example for the multitude of reasons given above, however let's not make this thread an argument about the minutiae but keep to the broad principle that before an intelligent decision can be made it would be very useful to know the cost / battery implication of different sizes of Ram / eMMC.
 
Back
Top