Same code poor performance on different server with same RAM and processors

Why same matlab code shows different performance on different server with same RAM and processors?
Below are the server configuration: Code runs 10 times faster on Serve1 than on Server2.
Server1: Windows Server 2008 R2 Enterprise, Intel® Xeon® CPU ES-2697 v2 @2.70GHz 2.70 GHz(8 processors),128GB RAM
Server2: Windows Server 2016 R2 Enterprise, Intel® Xeon® CPU ES-2670 v3 @2.30GHz 2.29 GHz(8 processors),128GB RAM

Answers (1)

The processors are different. The E5-2670 v3 has AVX2, but the ES-2697 v2 has not. But this should not result in a factor of 10.
How did you test the performance? Does any other application run on the slower server? Can you identify the bottlenecks of your code and post them?

1 Comment

Used profile to check performance. The concerned portion of code (see below) is using matlab built-in function createTask. No other application is running on the slower server(Server2).
j = createJob(c);
StartIndex = 1;
tic
fprintf(' Task Creation Started \n');
for count = 1 : NumOfCluster
EndIndex = StartIndex + NoOfvaluablesperCluster - 1;
if EndIndex >= size(arrValuableArray,1)
EndIndex = size(arrValuableArray,1);
flagtemp = 0;
end
NoOfUsedClusters(counter,1) = NoOfAveraging(1,averaging);
NoOfUsedClusters(counter,2) = models(modelnumbers);
NoOfUsedClusters(counter,3) = count;
createTask(j, functionhandle, 1, {input parameters...});
if flagtemp == 0
break;
end
StartIndex = EndIndex+1;
end
toc
fprintf(' Task Creation Finished\n');

Sign in to comment.

Categories

Asked:

on 16 Apr 2018

Edited:

on 18 Apr 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!