Sign in with
Sign up | Sign in

Linux-Bench Components And Test Setup

Intel Xeon E5-2600 V3 Review: Haswell-EP Redefines Fast
By

While Windows Server is still a popular platform, many Xeon E5-based servers are also going to run some flavor of Linux as an operating system. Server-oriented hardware also has relatively poor graphics capabilities. Most are able to render a single 2D terminal with a decent amount of latency, and that's about it. As a result, we are using a variety of Linux-based benchmarks to test the Xeon E5-2600 v3.

If you've manually configured and run benchmarks under Linux, then you know they can be an exercise in frustration. For this review, we are using a "simple" test script to automate running a few common Linux benchmarks. It's free and can be found at linux-bench.com or on GitHub. There is also a new Docker.io version of the script on GitHub, so it can be run using perhaps the hottest technology of the year. The bonus of using this type of script is that it is freely available to test on your own server.

It is designed to run off of a standard Ubuntu 14.04 LTS LiveCD using only three commands. As a result, it can even be run remotely on servers with no local disks installed via KVM-over-IP. We did run with a local LiveCD image, booting into a CLI environment before each iteration to ensure no artifacts were leftover from previous runs.

The Linux-Bench script itself does little other than install dependencies and run benchmarks. As a disclaimer, I am one of the community contributors to the script. However, I do not help maintain any of the individual benchmarks.

UnixBench 5.1.3

The byte-unixbench project can be found on Google Code here. However, it has roots dating back to 1983. It is an extremely popular suite that has a number of component tests like Dhrystone, Whetstone, and shell scripts. Specifically, we are interested in the CPU tests, so metrics for 2D/3D GPU and storage are excluded. Also, since these systems have many processing cores, we utilized the high CPU count patch.

c-ray 1.1

c-ray 1.1 is a popular and simple ray-tracing benchmark for Linux systems written by John Tsiombikas. It is designed so that, on most systems, it should not need to access RAM and therefore is highly sensitive to processor performance. You can find archived results, including those from SGI systems, here.

STREAM

STREAM is perhaps the seminal memory bandwidth application. The benchmark was created and is maintained by Dr. John D. McCalpin. More information can be found here.

OpenSSL

OpenSSL caused a stir with the now famous "Heartbleed" bug earlier in 2014. This is the technology that secures much of the Internet's data traffic, and is a common server application.

HardInfo

HardInfo is a simple benchmark that's popular in Linux-based environments. It is well known perhaps because the benchmark is installed by default on many Ubuntu desktop systems.

NAMD

NAMD is a molecular modeling benchmark. It was developed by the Theoretical and Computational Biophysics Group in the Beckman Institute for Advanced Science and Technology at the University of Illinois at Urbana-Champaign. More information can be found here.

NPB

NPB or NAS Parallel Benchmarks are a set of computational fluid dynamics applications originally intended to benchmark parallel supercomputers for NASA. We are using only one node for our testing, though today's multiprocessor systems in some ways mirror parallel computers from many years ago. You'll find more information on NASA's site, here.

p7zip

7-Zip is a popular open source compression application. Servers compress data for storage purposes and also before transmitting. It is an extremely common tool and common application.

Redis

redis is a popular new Web technology to help online applications scale. This is an in-memory key value store, making it memory bandwidth- and CPU performance-bound. It's an emerging technology with a strong developer base.

Sysbench CPU

Sysbench is another venerable benchmarking application. It is extremely easy to use and, for this test, we are only focusing on CPU performance.

You can easily replicate these tests by downloading and running them individually. Using the Linux-Bench script's parameters have been profiled across over 100 different systems, from low-end Atoms up to quad-socket Xeon and Opteron servers, thanks to an active community participating and posting edits in GitHub.

Add a comment
Ask a Category Expert
React To This Article

Create a new thread in the Reviews comments forum about this subject

Example: Notebook, Android, SSD hard drive

Display all 31 comments.
  • -2 Hide
    CaptainTom , September 8, 2014 9:44 AM
    Wonder how long it is until 18-core CPU's are utilized well in games...Maybe 2018 or 2020?
  • -4 Hide
    dovah-chan , September 8, 2014 10:23 AM
    [quote=Captain Tom]Wonder how long it is until 18-core CPU's are utilized well in games...Maybe 2018 or 2020?[/quote]

    Actually we should be trying to move away from traditional serial-styled processing and move towards parallel processing. Each core can handle only one task at a time and only utilize it's own resources by itself.

    This is unlike a GPU, where many processors utilize the same resources and perform multiple tasks at the same time. The problem is that this type of architecture is not supported at all in CPUs and Nvidia is looking for people to learn to program for parallel styled architectures.

    But this lineup of CPUs is clearly a marvel of engineering and hard work. Glad to see the server industry will truly start to benefit from the low power and finely-tuned abilities of haswell along with the recently introduced DDR4 which is optimized for low power usage as well. This, combined along with flash-based storage (aka SSDs) which also have lower power drain than the average HDD, will slash through server power bills and save companies literally billions of dollars. Technology is amazing isn't it?
  • 9 Hide
    2Be_or_Not2Be , September 8, 2014 10:55 AM
    There is still a lot in games that doesn't translate well into parallel processing. A lot of gaming action only happens as a direct result of the user's input, and it usually triggers items that are dependent upon the results from another item. So parallel processing doesn't help a lot there; single-threaded performance helps more.

    However, with multiple cores, now we can have better AI and other "off-screen" items that don't necessarily always depend upon the user's direct input. There's still a lot of work to be done there, though.
  • 2 Hide
    2Be_or_Not2Be , September 8, 2014 10:57 AM
    The new Haswell-EP Xeons are definitely going to help with virtualization. However, I see the high-price of DDR4 and the relative scarcity of it now as being a bit of a handicap to fast adoption, especially since that is one of the major limiting factors to how many servers you can virtualize.

    I think all of the major server vendors are going to suck up all of the major memory manufacturers DDR4 capacity for a while before the prices go down.
  • 0 Hide
    balister , September 8, 2014 1:00 PM
    Quote:
    The new Haswell-EP Xeons are definitely going to help with virtualization. However, I see the high-price of DDR4 and the relative scarcity of it now as being a bit of a handicap to fast adoption, especially since that is one of the major limiting factors to how many servers you can virtualize.

    I think all of the major server vendors are going to suck up all of the major memory manufacturers DDR4 capacity for a while before the prices go down.


    Whether it helps or hinders will ultimately depend on the VM admin. What most VM admins don't realize is that HT can actually end up degrading performance in virtual environments unless the VM admin took specific steps to use HT properly (and most do not). A lot of companies will tell you to turn off HT to increase performance because they've dealt with a lot of VM admins that don't set things up properly (a lot of VM admins over allocate which is part of the reason using HT can degrade performance, but there are other settings as well that have to be set in the Hypervisor so that the guest VMs get the resources they need).
  • 6 Hide
    InvalidError , September 8, 2014 1:38 PM
    Quote:
    Actually we should be trying to move away from traditional serial-styled processing and move towards parallel processing. Each core can handle only one task at a time and only utilize it's own resources by itself.

    This is easier said than done since there are tons of everyday algorithms, such as text/code parsing, that are fundamentally incompatible with threading. If you want to build a list or tree using threads, you usually need to split the operation to let each thread work in isolated parts of the list/tree so they do not trip over each other and waste most of their time waiting on mutexes and at the end of the build process, you have a merge process to bring everything back together which is usually not very thread-friendly if you want it to be efficient.

    In many cases, trying to convert algorithms to threads is simply more trouble than it is worth.
  • 2 Hide
    Rob Burns , September 8, 2014 3:44 PM
    Great to see these processors out, and overall good article. I only wish you used the same benchmark suite you had for the Haswell-E processors: 3DS Max, Adobe Premiere, After Effects, Photoshop. I'd also love to see Vray added to the mix. Not much useful benchmark data in here for 3D professionals. Some good detail on the processors themselves however.
  • 1 Hide
    The3monitors , September 8, 2014 4:27 PM
    Just take my money. Pls.
  • 0 Hide
    Drejeck , September 8, 2014 5:24 PM
    Quote:
    Wonder how long it is until 18-core CPU's are utilized well in games...Maybe 2018 or 2020?

    Simply never.
    A game is made by sound, logic and graphics. You may dedicate this 3 processes to a number of cores but they remain 3. As you split load some of the logic must recall who did what and where. Logic deals mainly with FPU units, while graphics with integers. GPUs are great integers number crunchers. They have to be fed by the CPU so an extra core manage data through different memories, this is where we start failing. Keeping all in one spot, with the same resources reduces need to transfer data. By implementing a whole processor with GPU, FPU, x86 and sound processor all in one package with on board memory makes for the ultimate gaming processor. As long as we render scenes with triangles we will keep using the legacy stuff. When the time will come to render scenes by pixel we will need a fraction of today's performance, and half of the texture memory (just scale the highest quality) and half of models memory. Epic is already working on that.
  • 1 Hide
    pjkenned , September 8, 2014 6:39 PM
    Quote:
    Great to see these processors out, and overall good article. I only wish you used the same benchmark suite you had for the Haswell-E processors: 3DS Max, Adobe Premiere, After Effects, Photoshop. I'd also love to see Vray added to the mix. Not much useful benchmark data in here for 3D professionals. Some good detail on the processors themselves however.


    Great points. One minor complication is that the NVIDIA GeForce Titan used in the Haswell-E review would not have fit in the 1U servers (let alone be cooled well by then.) Onboard Matrox G200eW graphics are too much of a bottleneck for the standard test suite.

    On the other hand, this platform is going to be used primarily in servers. Although there are some really nice workstation options coming, we did not have access in time for testing.

    One plus is that you can run the tests directly on your own machine by booting to a Ubuntu 14.04 LTS LiveCD, and issuing three commands. There is a video and the three simple commands here: http://linux-bench.com/howto.html That should give you a rough idea in terms of performance of your system compared to the test systems.

    Hopefully we will get some workstation appropriate platforms in the near future where we can run the standard set of TH tests. Thanks for your feedback since it is certainly on the radar.
  • 0 Hide
    Rob Burns , September 8, 2014 7:30 PM
    Makes sense, hope to see more about these in the future, good work.
  • 1 Hide
    Xajel , September 8, 2014 11:08 PM
    Quote:
    Great to see these processors out, and overall good article. I only wish you used the same benchmark suite you had for the Haswell-E processors: 3DS Max, Adobe Premiere, After Effects, Photoshop. I'd also love to see Vray added to the mix. Not much useful benchmark data in here for 3D professionals. Some good detail on the processors themselves however.


    Agree, the conclusion says "Server and Workstation" while the benchmarks only shows Server application.. I came here only to saw Workstation performance specially 3ds max rendering ( and I hope to see vray and mental ray benchmarks also ) and Adobe applications also as mentioned above
  • 0 Hide
    dovah-chan , September 9, 2014 9:33 AM
    Quote:
    Quote:
    Actually we should be trying to move away from traditional serial-styled processing and move towards parallel processing. Each core can handle only one task at a time and only utilize it's own resources by itself.

    This is easier said than done since there are tons of everyday algorithms, such as text/code parsing, that are fundamentally incompatible with threading. If you want to build a list or tree using threads, you usually need to split the operation to let each thread work in isolated parts of the list/tree so they do not trip over each other and waste most of their time waiting on mutexes and at the end of the build process, you have a merge process to bring everything back together which is usually not very thread-friendly if you want it to be efficient.

    In many cases, trying to convert algorithms to threads is simply more trouble than it is worth.



    Then wouldn't a smart move be to move towards an HSA oriented architecture that combines the parallel compute abilities with the serial-oriented task managing? I believe that is essentially what AMD did with Kaveri actually. It is more befitting towards consumer/workstation workloads that can utilize OpenCL.

    Although that wouldn't really be the best option for a server setting. There are usually two scenarios: you'll either need huge amounts of raw compute ability for services such as OnLive

    Or the streamlined style of multiple CPUs performing just general server tasks such as accepting a large amount of packet requests and ping queries which is what the run of the mill server is built for.

    In relation to what I was speaking about concerning Nvidia, it was this little piece:

    http://www.nvidia.com/object/what-is-gpu-computing.html

    Forgive me if I am incorrect about anything. I'm certainly not an engineer or a talented programmer by any means.
  • 2 Hide
    InvalidError , September 9, 2014 10:14 AM
    Quote:
    Then wouldn't a smart move be to move towards an HSA oriented architecture that combines the parallel compute abilities with the serial-oriented task managing? I believe that is essentially what AMD did with Kaveri actually. It is more befitting towards consumer/workstation workloads that can utilize OpenCL.

    In theory, yes. In practice, not necessarily - algorithms like parsing are full of non-linear and highly context-sensitive branch-driven code which makes those sorts of algorithms effectively impossible to thread no matter how close you bring the extra compute power. That is what I mean by fundamental algorithms that are also fundamentally non-threadable.
  • 0 Hide
    2Be_or_Not2Be , September 9, 2014 10:29 AM
    Quote:
    Quote:
    The new Haswell-EP Xeons are definitely going to help with virtualization. However, I see the high-price of DDR4 and the relative scarcity of it now as being a bit of a handicap to fast adoption, especially since that is one of the major limiting factors to how many servers you can virtualize.

    I think all of the major server vendors are going to suck up all of the major memory manufacturers DDR4 capacity for a while before the prices go down.


    Whether it helps or hinders will ultimately depend on the VM admin. What most VM admins don't realize is that HT can actually end up degrading performance in virtual environments unless the VM admin took specific steps to use HT properly (and most do not). A lot of companies will tell you to turn off HT to increase performance because they've dealt with a lot of VM admins that don't set things up properly (a lot of VM admins over allocate which is part of the reason using HT can degrade performance, but there are other settings as well that have to be set in the Hypervisor so that the guest VMs get the resources they need).


    Ummm... buddy... I didn't mention HT (hyper-threading) at all... just memory.
  • 0 Hide
    mapesdhs , September 9, 2014 1:39 PM

    Xajel,

    An AE test will only be useful if the system has a lot of RAM (64GB+),
    and that could be hard to set up atm, given the cost involved (unless a
    kind RAM maker can provide a whole pile of kits to toms).

    Ian.

  • 1 Hide
    mapesdhs , September 9, 2014 2:07 PM
    Patrick,

    "c-ray 1.1 is a popular and simple ray-tracing benchmark for Linux systems ..."

    Blimey, wasn't expecting to see that in the benchmark list. :D  Funny how
    c-ray has taken on a life of its own (I didn't know it was being so widely used
    until about a year ago). I took it over from John because he didn't have time
    for it anymore.

    One thing though, can you change the link to the results page please? The
    Blinkenlights site is a mirror (I have no control over its persistence) and may
    not be around in the future. The primary location is here, my own domain.

    I'm glad you didn't use the simple test, it is indeed really small, and on any
    kind of modern hardware it completes way too fast for useful measurement.
    It's a pity though that the other tests don't use the settings I've used, since
    the results can't be compared, but never mind.

    The other tests do impose a degree of main memory access, but not much.
    I created them mainly to have something which lasted long enough to be
    useful for testing multicore systems. Even then, the slowest test takes just
    11s to complete on an old 8-core XEON. Maybe I should start a separate
    new table for something like 'sphfract' at 7500x3500 with 8X oversampling...

    Btw, c-ray's threading is by scanline, so there's no gain from having more
    threads than the no. of lines in an image.

    Ian.

    PS. Just a thought - any chance you could manually run the C-ray tests
    using the settings on my page? I'll add them to the tables. 8) Include the
    'simple' test aswell, just for the hell of it.



  • 0 Hide
    balister , September 9, 2014 3:56 PM
    Quote:
    Quote:
    Quote:
    The new Haswell-EP Xeons are definitely going to help with virtualization. However, I see the high-price of DDR4 and the relative scarcity of it now as being a bit of a handicap to fast adoption, especially since that is one of the major limiting factors to how many servers you can virtualize.

    I think all of the major server vendors are going to suck up all of the major memory manufacturers DDR4 capacity for a while before the prices go down.


    Whether it helps or hinders will ultimately depend on the VM admin. What most VM admins don't realize is that HT can actually end up degrading performance in virtual environments unless the VM admin took specific steps to use HT properly (and most do not). A lot of companies will tell you to turn off HT to increase performance because they've dealt with a lot of VM admins that don't set things up properly (a lot of VM admins over allocate which is part of the reason using HT can degrade performance, but there are other settings as well that have to be set in the Hypervisor so that the guest VMs get the resources they need).


    Ummm... buddy... I didn't mention HT (hyper-threading) at all... just memory.


    You mentioned virtualization in the very first line, that's the crux of my post.
  • 0 Hide
    Xajel , September 9, 2014 11:35 PM
    Quote:
    Quote:
    Quote:
    Actually we should be trying to move away from traditional serial-styled processing and move towards parallel processing. Each core can handle only one task at a time and only utilize it's own resources by itself.

    This is easier said than done since there are tons of everyday algorithms, such as text/code parsing, that are fundamentally incompatible with threading. If you want to build a list or tree using threads, you usually need to split the operation to let each thread work in isolated parts of the list/tree so they do not trip over each other and waste most of their time waiting on mutexes and at the end of the build process, you have a merge process to bring everything back together which is usually not very thread-friendly if you want it to be efficient.

    In many cases, trying to convert algorithms to threads is simply more trouble than it is worth.



    Then wouldn't a smart move be to move towards an HSA oriented architecture that combines the parallel compute abilities with the serial-oriented task managing? I believe that is essentially what AMD did with Kaveri actually. It is more befitting towards consumer/workstation workloads that can utilize OpenCL.

    Although that wouldn't really be the best option for a server setting. There are usually two scenarios: you'll either need huge amounts of raw compute ability for services such as OnLive

    Or the streamlined style of multiple CPUs performing just general server tasks such as accepting a large amount of packet requests and ping queries which is what the run of the mill server is built for.

    In relation to what I was speaking about concerning Nvidia, it was this little piece:

    http://www.nvidia.com/object/what-is-gpu-computing.html

    Forgive me if I am incorrect about anything. I'm certainly not an engineer or a talented programmer by any means.


    It's a great concept, and AMD was brilliant thinking about it. the two main problems I saw at that time ( times of Kaveri launch ) was the not that great serialised performance and the almost lack of Software support. not to mention the weak OpenCL implementation... I mean weak by comparing it to CUDA, don't think that I prefer CUDA over OpenCL, infact I love OpenCL more ( I always loved open standard where every company can adopt it and the users will have the choice of whatever hardware they want )

    Most pro-applications now like 3d rendering prefer CUDA over OpenCL for at least for the time being, I saw GPU accelerated beta's for vray but it only support CUDA duo to weak OpenCL implementation ( on both sides NVIDIA and AMD )
    I'm not saying that OpenCL is weak, but from a software standpoint there's a still a lot of work to do, OpenCL by it self is very promising, but it should work good at first..


    Quote:

    Xajel,

    An AE test will only be useful if the system has a lot of RAM (64GB+),
    and that could be hard to set up atm, given the cost involved (unless a
    kind RAM maker can provide a whole pile of kits to toms).

    Ian.



    RAM manufacturing really need to promote their products you know, and one of promoting ways is giving these RAM to hardware sites... so If requested by the site I bet there will be some companies that will be interested in this promising new market ( DDR4 + ECC DDR4 )
  • 0 Hide
    stoatwblr , September 10, 2014 7:33 AM
    Quote:
    I think all of the major server vendors are going to suck up all of the major memory manufacturers DDR4 capacity for a while before the prices go down.


    At UK wholesale prices there's less than 15% difference between DDR3 and DDR4 for the same speed/size. This has as much to do with DDR3 having gone up ~50% in the last 12 months as with ready availability of DDR4 if you look in the right places.

Display more comments
React To This Article