Crunching energy efficiency: PCs vs Smartphones

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6,550
Credit: 288,972,740
RAC: 89,621

RAC stabilised out at ~ 190,

RAC stabilised out at ~ 190, now seven weeks in @ 24/7. So I'll drop right down to one core ( after NNT to clear cache ) then compare.

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6,550
Credit: 288,972,740
RAC: 89,621

RE: RAC stabilised out at ~

Quote:
RAC stabilised out at ~ 190, now seven weeks in @ 24/7. So I'll drop right down to one core ( after NNT to clear cache ) then compare.


OK, it's RAC is now at ~ 225 so dropping to one core clearly hasn't hurt ! :-)

Still has a perfect record ( no invalids and none in error ) so all is well. When I find a good power meter I'll compare power consumption ....

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

mmstick
mmstick
Joined: 6 Jun 12
Posts: 14
Credit: 2,066,411
RAC: 0

Might want to add Windows vs

Might want to add Windows vs Linux to the equation on the PC side of things in regards to power usage. Although Windows runs mostly with obfuscated, outdated, and horribly slow code, Linux is quite the opposite. Smartphones also benefit from this too since, well, Android is Linux, and iOS is FreeBSD.

ExtraTerrestrial Apes
ExtraTerrestria...
Joined: 10 Nov 04
Posts: 770
Credit: 545,417,359
RAC: 185,384

So.. how much more efficient

So.. how much more efficient is Einstein under Linux compared to Win?

MrS

Scanning for our furry friends since Jan 2002

mmstick
mmstick
Joined: 6 Jun 12
Posts: 14
Credit: 2,066,411
RAC: 0

That would depend on which

That would depend on which Linux distro you use and what your system/user configuration and hardware is. From what I know, AMD CPUs get the most benefit since all of the software compiled with GCC is significantly more 'fair' to AMD CPUs. Then with AMD GPUs, they run faster with OpenCL than in Windows. Finally, you can factor in how Linux uses significantly less system resources due to better optimized/efficient code and GCCs natural ability to produce highly optimized binaries.

The latest Ubuntu, 13.10, even with the Unity interface, is actually running well on some really low end machines. Someone posted this earlier on 'Ask Ubuntu!':

Quote:
Ok I have an old dell inspiron 1525 with a single core celeron [mobile] 2ghz processor, 2gb ram 20gb hard drive, I just put 13.10 on it for the fun of it, and believe me, I could not believe it, for that old thing, it is super fast!

I've personally tried it out on an old Pentium IV with 512MB RAM and it did run pretty well, the bottleneck being the slow IDE hard drive in that machine.

mmstick
mmstick
Joined: 6 Jun 12
Posts: 14
Credit: 2,066,411
RAC: 0

Well now, looks like MIT

Well now, looks like MIT knows what's best -- Ubuntu: https://www.youtube.com/watch?v=caVZZYbZV_4

ExtraTerrestrial Apes
ExtraTerrestria...
Joined: 10 Nov 04
Posts: 770
Credit: 545,417,359
RAC: 185,384

Thanks for not answering my

Thanks for not answering my question ;)

Being able to present a snappy GUI on older hardware is surely nice, but of no interest for number crunching, as the old hardware is far too inefficient anyway.

To ask a bit more directly: why should I care about all this "so much better", "more fair", "windows is horrible and outdated" etc. if the end result from my user perspective (E@H performance) is just the same? (on not-ancient hardware)

MrS

Scanning for our furry friends since Jan 2002

mmstick
mmstick
Joined: 6 Jun 12
Posts: 14
Credit: 2,066,411
RAC: 0

RE: Thanks for not

Quote:

Thanks for not answering my question ;)

Being able to present a snappy GUI on older hardware is surely nice, but of no interest for number crunching, as the old hardware is far too inefficient anyway.

To ask a bit more directly: why should I care about all this "so much better", "more fair", "windows is horrible and outdated" etc. if the end result from my user perspective (E@H performance) is just the same? (on not-ancient hardware)

MrS

The end result is not the same considering it's capable of generating more points per day on modern hardware than Windows. I did state the performance was significantly higher in the OpenCL benchmarks thread as well as on MilkyWay@Home earlier this year. Put simply, because it runs fast on old hardware, it runs faster on new hardware. There are much less bottlenecks to consider.

Another great benefit of Linux is that instead of buying licenses for each of your machines, you can spend that money on more graphics cards or better hardware. From a software perspective, Linux is already capable of completely replacing Windows as use for a desktop OS, so all the more reason not to use Windows. All that remains left for Linux right now is to get SteamOS released and time for AMD and NVIDIA to perfect their drivers which they are hard at work on at the moment.

ExtraTerrestrial Apes
ExtraTerrestria...
Joined: 10 Nov 04
Posts: 770
Credit: 545,417,359
RAC: 185,384

Well, then let me make an

Well, then let me make an educated estimate for CPU crunching:

On Win the OS scheduler runs every 1 ms, let's assume the same for Linux. Let's also assume that the super-efficient Linux needs 10000 instructions for one run, whereas.. let's give Win a factor of 2 more. That would result in 10^3*10^4 = 10^7 instructions per second for linux scheduling and 10^3*2*10^4 = 2*10^7 instructions per second for Win scheduling.

At 4 GHz a CPU core has 4*10^9 cycles per second available. So Linux task scheduling would require 10^7/(4*10^9) = 0.25%, whereas Win would need 2*10^7/(4*10^9) = 0.5%. That's a whopping overhead reduction of 0.25%. In between these scheduling cycles the same scientific app would run on both systems and be just as efficient.

There have been examples of projects being faster in the range of 5 - 10%, but as far as I understand that can usually be attributed to different compilers / libraries being used, not the OS itself. You can argue that better compilers are cheaper / free on Linux - but if you have a good compiler for Win it's just as good as the one for Linux; that's not a fundamental difference. And there probably have been examples the other way around with Win being faster.. which is usually also related to differences in drivers or libraries, but not the OS itself.

So.. do you have hard numbers which say otherwise? And I don't mean some artificial OpenCL benchmark, which is as useful as a general "C++ benchmark" for Einstein or any other BOINC project. Those Milkyway numbers might be interesting.. back when I was still running it, there certainly was no major OS difference for the GPU apps.

BTW: driver overhead for GPUs is a more relevant point. At GPU-Grid XP scores ~4% lower than Linux and since Vista and the WDDM driver model the newer Windows fell behind by ~11%. Here we're already in the real where Linux makes sense for dedicated crunching rigs. But when comparing the energy efficiency of PC vs. smartphones 10% are completely irrelevant.

Quote:
From a software perspective, Linux is already capable of completely replacing Windows as use for a desktop OS


From a user perspective, Linux is not even close to being a complete replacement for Win as a desktop OS - unless you like to spend hours fiddling around and perfecting your command-line-Fu. But let's not getting into that discussion here. If it works for you - great. For me the effort to make things work far outweights any possible benefits over Win.

MrS

Scanning for our furry friends since Jan 2002

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.