0
I'm running some scientific simulation code on a cluster which has nodes containing Intel Xeon E5-2630 v3 cpus. The cluster uses CentOS 7.2.1511, the gcc version I'm using is 5.1.0, and the assembler is 2.23.52.0.1-55.
Now, I tried to run the same code on a friend's workstation, which has two Xeon E5-2697 v3 cpus. It has Ubuntu 16.04 LTS installed. On this machine, my code runs 2-2.5 times slower than on the cluster. I was expecting at least the same performance as on the cluster.
The strange thing is that on the friend's workstation, of the 30 jobs i'm running, 2 of them are running 3 times faster (or 1.5 times faster than on the cluster). There are 2x28 threads on the system so I was thinking that has something to do with it, but my friend is also running a few jobs (there are 32 in total).
The assembly code was also compared on the two systems and was nearly identical, despite using different versions of gcc. The code is also not IO intensive, and uses only ~5MB RAM.
What could cause such big performance differences, and what can I do to find out why this happens?
EDIT: Also here you can find a performance comparison of the two CPUs. Since my code is single-threaded, the single-threaded rating is the more important one here.
Could it be your friend is simply using his system while your cluster is dedicated? – djsmiley2k TMW – 2016-07-23T10:42:03.287
1
Link to both CPUs: http://ark.intel.com/compare/81059,83356.
– Hennes – 2016-07-23T12:52:39.167@djsmiley2k as I mention, my friend's workstation uses Ubuntu 16.04 LTS, i.e. the desktop version, and is indeed also using it as a normal desktop, but not at this time. My suspicion would be that the difference in performance has something to do with the OS, but if that's the case, I would like to know the exact reason. – Grieverheart – 2016-07-23T14:39:45.660