Strange results
I've noticed that Geekbench 2 sometimes measures more (!) than
twice the performance using two processor cores compared to one
core.
Shouldn't the scores with two cores be exactly twice as much or
(most of the time) less compared to one core ?!
Comments are currently closed for this discussion. You can start a new one.
Keyboard shortcuts
Generic
? | Show this help |
---|---|
ESC | Blurs the current field |
Comment Form
r | Focus the comment reply box |
---|---|
^ + ↩ | Submit the comment |
You can use Command ⌘
instead of Control ^
on Mac
1 Posted by C. Krebs on 31 Aug, 2012 08:38 AM
PS: This behaviour becomes visible especially with some tests as e.g. Blowfish.
Support Staff 2 Posted by John on 01 Sep, 2012 05:43 AM
Could you provide a link to results that demonstrate this problem?
Thanks,
John
3 Posted by C.Krebs on 05 Sep, 2012 09:47 AM
Sorry it took so long!
Here is one result where e.g. Blowfish shows multi-core results (with 2 cores, no hyperthreading) higher than twice the single-core results:
http://browser.primatelabs.com/geekbench2/1005486
Blowfish single-core: 1207
Blowfish 2-core: 2578 (whereas 2*1207=2414)
Image decompression shows for example the same behaviour.
Thanks!
4 Posted by C.Krebs on 16 Sep, 2012 12:11 PM
Any ideas yet?!!
5 Posted by fenom on 18 Sep, 2012 09:05 PM
dude, you can't expect those numbers to be exact science, 2578 is close enough to two times 1207, there're other things going on in your computer during the tests, even random luck would have those numbers vary a bit
6 Posted by C.Krebs on 19 Sep, 2012 02:53 PM
I thought so too, but on the other hand the results are quite reproducable and even though I run GeekBench several times the single 2-core-results were never less then twice the 1-core-result...
Support Staff 7 Posted by John on 19 Sep, 2012 07:53 PM
Thanks for sending the link with the results.
I looked at the results and while the multi-core scores are higher than the single-core scores (2578 vs 1207) the multi-core results are not higher than the single-core results (53.1 MB/sec vs 106.0 MB/sec). The baseline system (whose results are used to calculate the scores) is a single-core system. Single-core systems often run multi-core tests slower than single-core tests because single-core systems lack the extra cores that help alleviate the threading overhead imposed by the multi-core tests. This overhead is reflected in the baseline result, which is why multi-core test scores (but not the multi-core test results!) are "higher than expected" on multi-core systems.
Please let me know if you have any additional questions regarding this issue and I'd be happy to help out.
Best,
John
8 Posted by C.Krebs on 23 Sep, 2012 07:34 AM
Could you please explain to me the difference between "scores" and "results"? Thank you.
9 Posted by fenom on 23 Sep, 2012 07:45 AM
scores are relative, results are absolute
10 Posted by C.Krebs on 23 Sep, 2012 12:13 PM
That makes no sense. Relative to what?
11 Posted by fenom on 23 Sep, 2012 06:44 PM
http://support.primatelabs.com/kb/geekbench/interpreting-geekbench-...
12 Posted by C.Krebs on 23 Sep, 2012 07:22 PM
Ok, I'm beginning to understand, please correct me if I'm wrong:
The actual results on two cores are NOT higher than twice those on one core (e.g. 106MB/s vs. 53.1MB/s), so no problem there.
You then compare those results to some other reference CPU deriving a number called "score".
Now let's pretend this reference CPU can compute 1.5 times as fast with two cores as with one core. You might now (arbitrarily) set the multi core scores of this reference CPU as beeing twice as high as the single core scores.
Now my CPU comes into play:
If my CPU happens to be about equally fast as the reference CPU with one core it gets the same single core score.
Let's pretend furthermore that my CPU with two cores is 1.8 times as fast as with one of its cores (which is easily possible with architectural improvements).
In this case my CPU with two cores must score higher than the reference CPU with two cores.
Consequently it must have a higher score than twice its single core score!
Is that about it?
13 Posted by fenom on 23 Sep, 2012 08:48 PM
uh, no, the reference cpu doesn't have two cores, that's why multi core scores can even be any higher than unicore ones, you can't compare scores of different tests, scores can only be compared with those of other machines, if you wanna compare different tests, you have to look at results
14 Posted by C.Krebs on 23 Sep, 2012 09:05 PM
Ok, let's put it differently:
Geekbench just throws a number of tests at a CPU and lets it a) use one core and b) as many cores as it wants. It then compares it to a reference CPU with just one core, which is ok.
But then it's still illogikal:
In the link I postet the CPU should be 1.2 times as fast as the reference CPU (1200 vs. 1000 points) if it is allowed to use one core.
Now if I had 2 of exactly those CPUs sinde by side they should score 2.4 times the reference score (or less).
And we are back where we started: Why should two core score 2.5 times as fast as the reference CPU?!?
The only solution would be that the reference CPU scores actually lower than 1000 points if you throw the multi core test at it!
Is that so, and if yes, why?!
PS: Thanks for the effort! :)
15 Posted by fenom on 23 Sep, 2012 09:13 PM
john already explained it, multicore result is worse than unicore result on a unicore cpu, because of threading overhead
parallelism isn't free, if you spend time multithreading on a system that only has one thread anyway, then that time is completely wasted, you're better off not worrying about multithreading
16 Posted by C.Krebs on 23 Sep, 2012 11:19 PM
OK, now I got it! Thanks!
On the other hand I believe that most software by far has optimizations for one- and multi-core CPUs and does not show such a behaviour.
Anyway...
Support Staff 17 Posted by John on 05 Oct, 2012 06:54 AM
I'm glad fenom was able to answer your questions.
Geekbench measures multi-threaded performance on single-core systems because all modern operating systems have multiple threads running at the same time (e.g., several single-threaded applications). Performance in these scenarios is still important, and fortunately there's very little overhead imposed by the operating system (but it's still enough that it's reflected in the baseline performance!)
18 Posted by C.Krebs on 05 Oct, 2012 12:05 PM
Yes, that's understandable.
Maybe it would allready be clearer if you named the tests e.g. "multi-thread scalar" instead of "multi-core scalar"!
There are used multiple threads but there may be only one core present, so the word "multi-cores" is somewhat misleading!
Support Staff 19 Posted by John on 05 Oct, 2012 04:51 PM
Good point! I'll look into changing the names of the tests.
20 Posted by Infarx on 17 Dec, 2012 03:28 PM
2 totally stock and 1 week old galaxy note 2.
1 shows 2080-2138 score
Second shows 1400-1450, why???
Support Staff 21 Posted by John on 18 Dec, 2012 03:46 PM
Have you uploaded your results to the Geekbench Browser? I'd like to take a closer look at the results for the tablets.
Best,
John
22 Posted by Danila Aleksand... on 06 Jan, 2013 03:10 PM
Sorry, but problem was solved. Energy saving was on :)))
06.01.2013 17:05 пользователь "mrdan2001" <
[email blocked]> написал:
Support Staff 23 Posted by John on 07 Jan, 2013 12:43 AM
I'm glad to hear the problem is solved, and thank you for letting me know how you solved it!
Best,
John
John closed this discussion on 07 Jan, 2013 12:43 AM.