MATLAB Answers


Poor Matlab performance on AMD-based computer

Asked by Ondrej
on 29 Mar 2012
Recently, we purchased a new computation server for our department with 4x Opteron 6128 processors and 64 GB RAM, running Windows 2008 Server R2. We wanted to maximise number of physical cores in order to ensure that several users will be able to use the computer at a time without influencing performance of other users' computing tasks.
However, there is one serious problem. Users complain that Matlab is really slow compared to our previous (dated) server.
I've run the Matlab built-in benchmark utility with alarming results:
The individual benchmark scores in Matlab R2011b are (64bit, though 32bit scores are almost the same):
LU: 1.2580
FFT: 0.3110
ODE: 0.3148
Sparse: 35.3353
2-D: 3.1159
3-D: 1.3190
Is it really so, that Matlab on 4 8-core Opterons is worse than on Atom processor?
Is there anything that can be done in order to improve the performance? Since Matlab obviously uses Intel MKL BLAS even for AMD processors, I tried to find alternative BLAS libraries such as ACML, but I wasn't successful in getting them to work with Matlab.
I would be grateful for any suggestions.


The bench function can change from release to release and it definetly changed from 7b to 11b. See matrices which are used for testing are much smaller in 7b than in 11b. Thats probably why you get better results in 7b.
I found an intersting benchmark for the Opteron 6174:
The Opteron performance vary from pretty good to totally bad.
I doubt that there is much one can do here.
The differences in matrices sizes would explain a lot.
However, we knew that the per-core performance will be worse than with an Intel platform, but seriously - even in the benchmark you linked to, the performance of the Opteron 6174 was not that bad at all. It should certainly be a lot better than the Intel Atom processor...
I still do think that there is something rotten either in Matlab or Windows installation...

Sign in to comment.

1 Answer

Answer by Anders Munk-Nielsen on 9 Oct 2012

I have the exact same problem :( I think AMD ought to take this very seriously! I would certianly recommend ANYONE to avoid buying an AMD based server if they're going to do Matlab computation stuff on it.


Anders - what type of AMD processors did you buy? I am now reconsidering whether an AMD Opteron 6200 based server is a good idea! However, there will only be a single user running parallel computations using all available cores rather than lots of users at once.
It's an AMD Opteron 6176, 2.30 GHz (4 processors; 48 virtual cores). I would STRONGLY recommend against getting an AMD processor unless you can somehow test that it will work first.
However, Stata runs perfectly, even when many many users are using it simultaneously.
Sorry that I didn't see your reply until now, apparently there's no email follow-up on these forums.

Sign in to comment.