InvalidError :
qlum :
I am no apple fan but even if their cpu's are still relatively low clock speed dual cores they do perform pretty well.
Having lots of cores does you no good when most software makes little to no meaningful use of threading.
In the Android Development Kit guidelines, they tell developers to use threaded objects to do things like load images to avoid bogging down the main thread so applications can feel more responsive. This is fine as far as responsiveness is concerned but in terms of CPU performance scaling, those extra threads will be waiting on IO most of the time so overall performance remains mostly the same and perceived performance is dominated by single-threaded performance: how quickly the main thread can manage the UI's layout and parsing.
So I have no trouble believing a lower-clocked CPU with fewer cores but higher IPC can end up generally more responsive than CPUs with more cores and higher clocks.
This is getting a bit technical, but a lot of what you are discussing is very Android specific. (And I'm not disagreeing with you.) It helps when the OS and platform/model is assisting with the threading, where Android offers almost nothing.
One tiny example specific to your post would be WP/Windows - grabbing an image using the OS APIs not only automatically creates the thread for the developer, it also uses whatever hardware is available, even using the GPU for decoding if it would be faster and is available. (This is why Win7/8 on the desktop would be able to load media and images so much faster than XP, as it was using the WDM/WDDM driver and shoving the decode through the GPU and threading the loadimage APIs.)
The development on WP and Android is night and day, and where most of the performance difference of WP comes from when people talk about Apps and the UI being more responsive and faster, as the OS is managing these things for developers and using more of the hardware than Android uses.
Side Note - This is why Microsoft required dual core devices for WP8, as the App platform it uses is highly threaded - even if the developers don't use/consider/understand threading, as it automatically gives developers a lot of background concurrency that Android and even iOS don't have.
The main CPU bump Apple had with the 5s was due to the ARMv8 differences that incorporates more CISC functionality into the ARM RISC model. (Being 64bit had little difference, especially with virtually no OS level support for 64bits.)
The GPU differences they are touting for the iPhone 6 are more than just iOS optimizations, but they are not huge.
I even if you take the percentages that Apple gives out at face value, they are a 50% gain, which is easily consumed in pushing the extra pixels on the screen.
The iPhone GPU isn't some major new revolution.
If you look at the numbers it barely beats the Adreno 330 GPU with the 801 Qualcomm. Even the Nokia 1520/Icon with the older Qualcomm 800 is in the same performance range as the new iPhone 6. So the iPhone 6's new GPU is just keeping up with a Win8 phone that was released in November of 2013.
(The Nokia 1520 and Icon both held the 3D/gaming title until the new HTC came out, and that is still questionable, as the HTC was found to be using tricks when it detected benchmarking software.)