Performance of iPad simulator vs iPad 2
I am working on a Core Audio app using Audio Units. Performance is important with render callbacks occurring tens of thousands of times per second. I already know that the processor isn't perfectly emulated in the simulator (mach_timebase_info in the sim returns numerators and denominators which match values from my laptop's Core 2 Duo chip), so it's reasonable to expect the performance to be different too.
- Should I expect the Simulator to run slower or faster than an iPad 2?
- Does the simulator emulate a dual core A5, or the old single core chip from the iPad 1? (Device lists only iPad, iPhone and retina iPhone)
- Does it (horror) just expose whatever chip is in my computer to iOS, meaning I could have as many cores as my host computer available to my simulated app?
Obviously I do my testing and profiling on the iPad itself. However, for those moments when I'm on a plane, or coding in my lunch break, or my wife is watching Netflix and I can't use the iPad, I'd like to know whether I'm getting optimistic or pessimistic performance from the simulator.
In my experience the simulator is faster than the device (varies accordingly to your processor). And since the binary is built on the architecture of your processor my guess would be that it directly exposes the host's processors (but i can't confirm it).
Perfomance of the Simulator does not relate to the performance of device. You can never compare them in any way.
Some parts of your application may be significantly slower on a device, some will be significantly faster.
Obviously CPU performance will be different, and the Simulator pretty much never runs out of memory.
Another difference I've noticed is faster disk performance on a device, due to its solid state disk.
So yeah, performance varies, and if it matters to you, you must test on a device.