killadark wrote:There was a time when i quickly pressed ran multi thread after the results came and it ran on 3 threads and still continues to....This was the result 3075 MFlopNeed to fix this bug will try restarting

What the .. ? 3 threads?Will see what I did wrong. Maybe I am using the wrong API to query number of cores.

Jigar wrote:I can do that on my LG Optimus 2X - Currently using Cynogenmod 7.2.

Unfortunately, it will currently not run on Gingerbread devices. I will look into it sometime.

OT - Thanks to LG and Nvidia, i am unable to upgrade to ICS or jellybean, although ICS and Jellybean unofficial roms are available for Optimus 2x, they don't have the HW acceleration that is required for playing HD videos and capture video.

killadark wrote:There was a time when i quickly pressed ran multi thread after the results came and it ran on 3 threads and still continues to....This was the result 3075 MFlopNeed to fix this bug will try restarting

What the .. ? 3 threads?Will see what I did wrong. Maybe I am using the wrong API to query number of cores.

Updates:1. Gingerbread compatibility added. Also made app look uglier 2. Switched to using official android compilers. May affect performance slightly.3. Fixed screen orientation to portrait to avoid problems with screen orientation change.4. Number of processors issue should be fixed now. 5. Issue with HTC One S should be fixed now.6. Dropped compatibility with ARM11 processors due to some strange bugs. Sorry gerbils who use that

I am disabling the link now. Thanks everyone for testing. Will let everyone know when the test is public. I have also emailed TR folk to see if they are interested in picking up the benchmark for testing. Thanks again gerbils!

Scaling on a Tegra 3 is a little weird - 779 for 1 thread, 2093 for 2, and 3709 for 4. Without a lot of knowledge of what's going on, I wonder if it's bouncing the 1 thread between cores? Does the Tegra 3 boost one core and leave the rest at lower clock speeds?

I do not understand what I do. For what I want to do, I do not do. But what I hate, I do.

Well, the way I have setup multithreading, threads can share some data. Instead of having to load data twice, second thread can benefit from data loaded already in cache. So you can get superlinear speedup on some hardware.

As for scheduling on Tegra 3, it is hard to say. Certainly, in the mobile SoC world, there are lots of hardware scheduling tricks going on that SoC vendors don't tell you unless you sign an NDA . Firmware versions also differ in how aggressively they schedule threads and throttle cores, so that can affect performance.

derFunkenstein wrote:Scaling on a Tegra 3 is a little weird - 779 for 1 thread, 2093 for 2, and 3709 for 4. Without a lot of knowledge of what's going on, I wonder if it's bouncing the 1 thread between cores? Does the Tegra 3 boost one core and leave the rest at lower clock speeds?

Perhaps it's at least partly because Tegra3 actually has 5 cores and not four. That is, it has 4 full speed cores and one low-speed "companion" core.

This companion core is built using a more energy efficient process but cannot scale to as high frequencies (500MHz). Tegra3 will use this core for lighter loads (presumably like single-threaded activities) transparently to the operating system (which only sees a quad core). 779 is still too high for an A9 CPU at 500MHz but assuming your Tegra3 is switching over to or even bouncing with the full 1.4GHz, then it's within reason.

From looking at this thread, I'd estimate a 1.4GHz A9 (like the Tegra3) should get about 1000 while at 500MHz, the score should be about 360. Thus his 2 threaded score seems just about bang on while the 4 thread version is starting to see diminishing returns.