I have a math-intensive Android application here that does realtime audio generation. It generates sound data and this process is difficult if not impossible to modify to support multithreading.
The test systems are ARM-based quad core CPUs (Nexus 4, Nexus 7) and one dual core x86 Atom with hyperthreading (Asus Memo Pad FHD 10).
The problem that I'm facing is that the android scheduler keeps moving my thread around on multiple cores, I lose all my caches everytime and the performance could be much better. I get a huge performance boost when I set the affinity of the thread to a single core.
Would you recommend to do it that way on mobile devices or is this a "no go"?