iOS and Cocos2d: my app REALLY slow on simulator but is FINE on device

..I am wondering whether there is some setting I should change to get my iOS 5.0 app running fine on an iPhone IOS 5.0 simulator. It runs at only 12fps instead on my device runs at 60fps. Any help? I would have expected the simulator to work fine..

I am using XCode 4.3 and Mac OS X 10.7.3.

Answers


Simulator performance is completely and utterly irrelevant. The Simulator runs on your Mac's CPU, that's multiple times faster than the fastest iOS device. The Simulator does however not use hardware graphics accelerations, so it's easily maxed out even though your Mac is so much faster. Lastly, which of your app's users are going to run your app on the Simulator? Answer: no one!

That said, there is still reason to be alarmed. You get 60 fps on the device, that's great. But which device? If it is an iPhone 4S or iPad 3, that device is a lot faster than older devices like iPhone 3GS (or even older yet) or iPad 1. So depending on which device is the oldes device you're developing for, you might still have a problem. Try to find or borrow such a device, and test it on that oldest-supported device, and do test only with a release build.

Consider the facts:

  • Simulator performance sucks
  • Retina Simulator performance sucks even more
  • iPad Retina Simulator performance is beyond good & android
  • You're most likely the only person ever to run your app in the iOS Simulator

Therefore:

  • Simulator performance is irrelevant
  • Simulator performance can not be compared to device performance
  • The Simulator is for quicker testing of your app's business logic, nothing else. Not even Samsung copied it.

In addition:

  • Debug build performance is largely irrelevant. At least verify performance measurements in release builds.
  • Test on oldest supported device. Otherwise you have no way of knowing whether the previous generation device from the device you're testing on may still render 60 fps or only renders 20 fps. That's quite possible.

Lastly, to answer your actual question: the only thing you could do is to make sure you run the standard (ie non-Retina) resolution Simulator. There's really nothing else you can do besides getting a Mac with a (much) faster CPU.


Need Your Help

Respond.js not working in Internet Explorer 7, but H5BP example works

html5 internet-explorer-7 responsive-design base respond.js

This responsive example from H5BP works well in Internet Explorer 7, Internet Explorer 8 and Internet Explorer 9, but when I use H5BP in my own project, it doesn't wor...

For a library, GDB does only see source in header files, whereas source in .cpp files is not available

c++ debugging gdb header-files

I am using gdb to debug a program compiled against a static library. Both the library and the program were compiled with debug symbols. For this library, gdb does only see the source code implement...

Copying Xml comments for implemented intefaces

xml documentation comments

When you use a tool like Resharper to implement an interface, you can choose to copy the Xml documentation markup. Of course there are times when the comments are going to be different for the conc...

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.