I searched quite a lot about my problem, found people with similar issues but I couldn't find a solution. I recently bought an HP Z600 to a professional seller on eBay. It is equipped with 2 Xeon X5670 and 24GB 10600R RAM, Windows 10 Pro 64 bits. I bought it to run extensive simulations on R for my PhD. The seller has approximately 100% satisfaction.

Here is my problem: the computer has very LOW performances. For comparison, I ran the same program (not using parallel computing) on my laptop equipped with an i7-5600U and 8GB RAM. On the laptop, it takes about 150 seconds, and 250 seconds on the dual Xeon computer. The CPU never seem to be overworking or anything else, according to the task manager (at most 10% CPU usage, more or less 10% for RAM usage too). I know the Xeon X5670 is not supposed to be a Ferrari (at least according to latest big CPUs), but isn't it a little too much ?

I tried running some programs in parallel. I could see the CPU and RAM usage increasing to around 90-95%. In some cases the RAM usage increased to 100% so I tried an upgrade, changing the 24GB to 64GB 10600R. The upgrade seems successful (I see the 64GB in the BIOS as well as in the task manager), but it's not faster. The Intel Turbo Boost is enabled, I tried enabling/disabling the hyperthreading, but it didn't change anything. The computer is on high performance mode (it was on the standard mode initially but anyway it had no effect to change it). I checked HWMonitor, everything seems fine. The computer in itself runs fine otherwise.

I will be very thankful to anyone who can help me with this, I am quite worried that I might have thrown my money away, and that I might be unable to run my simulations for my PhD.

  • You can edit your questions anytime but please don't do it to add "fluf". It's much better to keep it as a question - this is a Q&A site after all - and not a forum post. – user931000 May 27 '19 at 9:37
  • 2
    If your code is not multithreaded, you will only use one of the 12 physical (24 virtual) cores, effectively throwing away most of your calculation power. Scaling to single threaded perofrmance is way more expensive than scaling to more cores. You might want to adapt your code to a higher degree of parallel processing to make use of those cores. – Eugen Rieck May 27 '19 at 9:38
  • I know about multithreading and single threaded performance, but compared to the i7-5600U the single thread performance of the Xeon is way lower, which is what I don't understand. According to the specs, it should not be almost twice lower... – user1041749 May 27 '19 at 9:45
  • 1
    It's a 2010 CPU and user benchmarks would indicate it has about the same single core speed. Unless you go into detail as to how you measure your performance there isn't going to be an answer for this and even then it might simply be due to the age of the components or similar. – Seth May 27 '19 at 9:58
  • It's the same R program I run on both computers, I measure the computing time using the system.time or microbenchmark function. – user1041749 May 27 '19 at 10:03

There.is lIkely more.then 1 thing going on, but it would seem the main issue is the use of a single thread.

The Xeon iCPU is from 2010, and has 6 cores and a CPUBenchmark score of 7856 - so about 1300 per core.

The i7 is only dual core, but is 5 years newer , with a CPUBenchmark score 4317 - so a score of about 2150 per core.

So yes, the result is reasonably what you would expect for a single threaded, CPU bound process. Another possible factor (depending on what that CPU % means - could be disk IO. Your post did not comment on this, but if your laptop has an SSD and the server has spinning disks, if there is significant disk IO that could be a major bottleneck. (I dont use R so dont know the relevance if disk IO)

  • Both computers have HDD, no SSD. I don't really know either if it has a major influence on R performances, couldn't find much information on it. Depends on what one does I assume. – user1041749 May 27 '19 at 10:17
  • In fact, it seems that multithreading does not even improve things. I compared the two following things on my dual Xeon machine: first I ran 60 times the same R program in parallel on 10 threads, then I ran it 60 times on 20 threads (theoretically I could go up to 24 - 60 times is the total number of executions). I do not expect that the execution time would be divided by 2, but an improvement is expected. It took approximately 650 seconds with 10 threads, against 750 with 20 threads. CPU usage was only about 50% and RAM usage about 30% with 10 threads. Seems very weird to me. – user1041749 May 27 '19 at 11:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy