How to Determine Safe Max Memory Limit?

From what I understand, the amount of memory available to your AIR game on a device will vary depending on how many other apps the user is running, the type of device, etc. 
So with this in mind, how does one define a safe max memory limit for a given device? What percentage of a device's total RAM can we assume we have access to? 
Here are the iOS RAM Specs
iPod (4th Gen): 128Mb.
iPad 1: 256 MB
iPad 2, iPod Touch (5th Gen): 512 MB
iPad3: 1 GB 
I already have highly optimized texture atlases using PVRTC ATF for best use of memory, but if you've ever worked with a passionate creative department, you'll know they always want more. I need to be able to tell them exactly how many spritesheets they have to work with for a given device - how would I do this? 
NOTE: iPhones/iPod Touches/iPads all have a Unified Memory Architecture which mean that both the CPU and GPU share system memory, which means there is no dedicated GPU GRAM on these devices. So the RAM listed above, I assume, is shared by both the game logic and the GPU.

Update, I've found an Objective C post on Stack Overflow that answers this question
Here are the (rough) max memory limits to expect before an out-of-memory crash will occur:
iPad1: 127MB/256MB (crash amount/total amount)
iPad2: 275MB/512MB
iPad3: 645MB/1024MB
iPhone4: 325MB/512MB
Note that max memory limit will vary depending on how many apps a user is running, but these figures are a good rough guide. See the Stack Overflow post for more details.

Similar Messages

  • Finding CachedRowSet max. memory limit

    Hi,
    I am using a CachedRowSet for storing data got from a ResultSet. I understand that there is a memory limit on the amount of data the CachedRowset can hold.
    I would like to know how to determine the maximum size of data the CachedRowSet can hold ?
    Thanks,
    Shashi.

    That depends on many things. Experiment with it if you must.
    But if your result sets are so large memory use is an issue, try to find a better approach.
    The best way is not to need the results in memory at the same time. Process each row as it comes in if you can.
    Or if you need the result set in memory (try not to need it!) don't use CachedRowSet. Instead convert the rows into real Java objects. They are likely to be smaller, faster, you get object oriented programming, access control, looser coupling, independence of data source which can help reusability, ...
    I've never used CachedRowSet. My gut reaction to it is "hmm, is that a code smell..."

  • How to set JVM max memory setting in JBoss?

    We have an old deployment of LiveCycle 7.2 running on Windows 2003 / JBoss.  The max memory is reported as 508mb on the JBoss Management Console.   Anyone have any idea how to change this value.   I tried modifying the jvm.cfg file as well as run.conf in JBoss and modify JAVA_OPTS but it didn't seem to make a difference. 

    Seems its in the Windows registry at
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\JBoss for Adobe LiveCycle\Parameters

  • How to determine the java memory cosumption

    Hi.
    In our system Netweaver7.1, (on windows)
    I want to know java heap memory consumption.
    We can see the memory consumption from windows task manager, but the AS JAVA caught the memory heap memory size during startup.
    So itisn't correct.
    In NWA, many paerformance monitors are, but I don't know which tool is useful.
    I want to sizing the memory size with following logic.
    8:00~9:00 50% load
    The java memory is conusmed 3GB.
    11:00~12:00 100% load
    The java memorry will "may" be consumed 6GB.
    regards,

    I found the directory with java.exe on my XP client. After updating my Path and then typing 'java -versions' I still see a 'java not found message'. No problem though - a README.TXT says that I have JRE 1.1.7B.
    One final question - a co-worker who also has XP just starting seeing a pop-up window saying 'Runtime' error when running a Java applet. His java.exe is in a path that includes the sub-directory 'JRE' On my XP client, java.exe is in a path which includes a 'JRE11' sub-directory. We therefore seem to have different versions of the JRE. Since I don't see the Runtime error when running the same applet, should my co-worker try upgrading his JRE?
    Thank you.

  • How to change JVM max memory size in R3 ?

    Hi, I want to change JVM parameters in R3. Can I do that by em console?

    Seems its in the Windows registry at
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\JBoss for Adobe LiveCycle\Parameters

  • Max application memory Limit in iPad 4th?

    Is there material to talk about it? what is max memory limit for application running on iPad 4th?

    If you have to ask, you're doing it wrong.

  • How to determine max netstreams before failure

    Hi
    Everything on Adobe's website is listed as "unlimited" and scalable but I would like to know approximate actual numbers to estimate server hardware required
    I can't find out how to determine how many live audio/video netstreams per instance, specifically
    1) How many broadcasters per instance?
    2) How many subscribers/viewers per  broadcast?
    3) Does seperate application/instance provide better performance?
    I understand the exact number is based on the publish settings so everyone's setup is different, but is it just bandwidth consideration?
    Is there any server side functions and/or metrics besides general OS cpu/ram stats?

    • How do I determine how many songs will fit on a CD?
    Already answered by others.
    • I heard that the LAME encoder is the best out there, is there an easy way to use that encoder to convert AAC files?
    I don't think LAME is part of itunes. You need to find a different encoder. I think Max CDripper uses LAME. It's pretty common in other encoding tools so you need to search for one that you like and at a price you like.
    • Can I use the LAME encoder to convert the files and then use those files in iTunes instead of using iTunes to convert them?
    Yes. Understand though that nothing will convert iTunes AAC format DRM protected files except iTunes and then only to audio CD.
    • I have a play list I want to burn to an MP3 CD for the car. The playlist is composed of songs with both AAC and MP3 formats. Is there an easy way to convert an then use the AAC files for this playlist?
    iTunes will do this, or other audio encoders. The DRM limitation still applies, even to iTunes.
    Is there a high quality way of recording streamed songs along with the title/artist info?
    It depends upon the source. Different sources stream different ways, so what works with one will not always work with another. The one exception is something that captures any audio output from your computer. That doesn't capture with artist and song information, just any sound that happens to be coming from your computer. If it isn't easy to do it is probably because the people streaming the music really don't want to you do it, probably because of licensing, in which case the Terms of Use of this website don't let us discuss how to do it.

  • How can max memory be undefined ?

    Im trying to monitor memory usage of my app. The memoryUsage class says that max memory can be undefined (see http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/MemoryUsage.htm), how can this be, isnt it always
    -XMx (or 64MB) if not defined.

    paultaylor wrote:
    tschodt wrote:
    You are thinking of a specific implementation of Java (the Sun implementation).Are then any implementations that actually use the physical memory availble as required ?The beautiful things is that it doesn't matter if there are actually any implementations that behave differently. The standard clearly defines what such a implementation should do and therefore it is legal. If you want to write code that works on all implementations you should probably handle that case as well.
    Personally I use only the Sun JDK, the IBM JDK and the OpenJDK (IcedTea) and those three have a maximum at all time, as far as I know. But there are other implementations out there where I wouldn't be so sure.

  • How to determine memory usage?

    Is there something built into OSX that permits me to monitor and/or log memory usage?
    I use Logic Pro and FCP and would like to know if I reaching the limits of my memory (4GB) with the type of work I do.
    Thanks, Rob.

    How To Determine Your Memory Needs >>
    -Bmer
    Mac Owners Support Group
    Join Us @ MacOSG.com
    ITMS: MacOSG Podcast
     An Apple User Group 
    Disclaimer required by Apple Discussions Terms of Use: MacOSG - a non-profit Apple User Group - may receive some form of compensation, financial or otherwise, from my recommendation or link.

  • How to arrive at Flex warning memory limit

    Hi - Is there any logic to arrive at the warning memory limit? since the memory limit essentially depends on OS, browser, no of browser windows open etc, I want to understand how to arrive at the warning memory limit. We want to display friendly message to the user when the memory exceeds certain threshold (after which response will be sluggish). So we want to know how to arrive at that threshold limit. We are planning to use System.totalMemory to find out the total memory used currently.

    Hi PeterIong,
    Welcome to the community! Since you're new please be sure that you have checked out our Discussion guidelines.
    You could try performing a reset to defaults with the apps.
    Menu > Settings > Apps > Press 3 little squares on top right > select reset app preferences
    I hope it helps.
     - Official Sony Xperia Support Staff
    If you're new to our forums make sure that you have read our Discussion guidelines.
    If you want to get in touch with the local support team for your country please visit our contact page.

  • I have an ipod I want to sell, but I don't know how to determine the specs, which one it is, how much memory, etc. Where can I find this information?

    I have an ipod I want to sell, but I don't know how to determine the specs, which one it is, how much memory, etc. Where can I find this information?

    See this Apple support document.
    http://support.apple.com/kb/ht1353
    B-rock

  • How is the native memory limit (malloc) computed?

    On Windows (32 bits), with the SUN JVM, the memory space that can be allocated in native code (e.g. with malloc in C) is limited and depends on the maximum heap size, specified with the -mx JVM argument. The larger the heap size, the smaller the native code memory limit.
    With JRockit, this limit is higher: it is possible to allocate more memory in native code than with the Sun JVM.
    However, on some machines the memory limit is not higher. The problem is that I see no difference in the configuration of these machines. They also have 2GB of RAM, with the same amount of free memory (virtual and physical), the same OS and the same OS version. On both machines, the same application is used, with the same JVM arguments.
    On some machines, we can use a -mx600m and allocate a given amount of memory in native code, and on other machines, for the same amount of native memory, we can only use a -x300m.
    Do you have an idea, what the difference can be? Is it possible on these other machines to use a higher -mx value?
    Thanks,
    Laurent
    We are using jrockit-R27.2.0-jre1.5.0_10 on windows XP.

    It's possible that some DLL is eating up process address space. Start JRockit with -Xverbose:memdbg to get an ascii graphic over the address space. Or use something like Process Explorer to see what is loaded into memory and where.
    -- Henrik

  • MS 6147 max memory and disk sizes

    For the MS 6147 can anybody confirm the max Hard disk size and max memory.  
    It will not recognise the 40Gb HD I am trying to fit, and only recognises half of the 256Mb memeory simm I have fitted.
    The BIOS version is 1.9 but I think that is a 'special' by Packard Bell.  The MSI BIOS download site makes no mention of disk problems rectified right up to V1.8 which is the latest, with the exception of one for the ZX chipset only which addresses EDMA 66 problem.
    Anybody got a definitive answer on this?

    Supports a maximum memory size of 256MB (8M x 8) or
       512MB (16M x 4) registered DIMM only
    how many chips on dimm is what counts with older boards
    go to drive makers web site get jumper settings to limit it to 32gb and try

  • How do I increase the thread limit on Linux?

    OS: Linux (or Sun Linux)
    Kernel: 2.4.9-31enterprise
    Memory: 2GB
    CPUs: 2
    Java: 1.4.1_01
    I have a dual processor Cobalt LX50 and I am running
    into a thread limit with Java. No matter what I do
    with the Java JVM parameters (heap and stack), I
    cannot get any more than 949 threads. My "top" and "vmstat" output
    shows that I am no where near my memory capacity.
    Below is a simple Java program (28 lines long) I have
    used to test this limit. My question is simply how do
    I go about increasing this limit. Is there some kernel
    parameter I can set or maybe have to recompile into
    the kernel? My /proc/sys/kernel/threads-max is 16383.
    I do not believe my ulimit settings are the problem,
    but I will post them anyway. The problem also occurs
    on non-Cobalt (plain old PCs) uniprocessor machines
    maxxing at about 1018 threads. The other interesting thing is that when I run the same program through the Kaffe VM with -Xms64M and -Xmx512M I do not run into the thread limit problem. Does anyone know what I need to change to get my thread limit up? Also, rewriting the way the program uses threads is not an option.
    [root]# ulimit -a core file size (blocks) 0
    data seg size (kbytes) unlimited
    file size (blocks) unlimited
    max locked memory (kbytes) unlimited
    max memory size (kbytes) unlimited
    open files 1024
    pipe size (512 bytes) 8
    stack size (kbytes) 8192
    cpu time (seconds) unlimited
    max user processes 8191
    virtual memory (kbytes) unlimited
    /*******************************Sample java program
    testing thread
    limits***********************************************/
    import java.util.Timer;
    import java.util.TimerTask;
    public class Reminder {
    Timer timer;
    static int cnt;
    public Reminder(int seconds) {
    timer = new Timer();
    timer.schedule(new RemindTask(), seconds*1000);
    class RemindTask extends TimerTask {
    public void run() {
    System.out.println("Time's up!");
    timer.cancel(); //Terminate the timer thread
    public static void main(String args[]) {
    System.out.println("About to schedule task.");
    cnt = 0;
    while (true) {
    new Reminder(90);
    System.out.println("Thread #" + ++cnt + "
    scheduled.");

    Confer also:
    http://forum.java.sun.com/thread.jsp?forum=37&thread=358276

  • CF10 VFS Max Size Limit?

    It there a maximum amount of Ram that can be allocated the the virtual file system?  When I specify more than 1 GB size, the system returns a negative number for the remaining free space, and any attempt to store a file resuts in storage limit exceeded errors.
    I've been unable to locate much detail about the VFS configuration via web searches.  Any details are appreciated.
    Ronnie

    AustinValley wrote:
    It there a maximum amount of Ram that can be allocated the the virtual file system?  When I specify more than 1 GB size, the system returns a negative number for the remaining free space, and any attempt to store a file resuts in storage limit exceeded errors.
    Well, you will also get that when you have $25 in your pocket, but spend $32. It is easy to find out how much memory you have. Search for Coldfusion java.lang.Runtime on the web. You will find something like
    <cfscript>
      rt = CreateObject("java","java.lang.Runtime").getRuntime();
      memory = StructNew();
      memory.freeAllocated = rt.freeMemory() / 1024^2;
      memory.total = rt.totalMemory() / 1024^2;
      memory.max = rt.maxMemory() / 1024^2;
      memory.used = memory.total - memory.freeAllocated;
      memory.freeTotal = memory.max - memory.total + memory.freeAllocated;
      memory.heapMemory = memory.used;
    </cfscript>
    <cfdump label="Memory in MB" var="#memory#">

Maybe you are looking for