Matlab 64bit on Rocks Linux cluster with AMD processors

1 visualización (últimos 30 días)
Herwig Peters
Herwig Peters el 5 de Oct. de 2011
I've been trying to run Matlab (64bit) 2009b, 2010b and 2011a on Rocks Linux cluster with AMD processors (the bigger cluster). It does run, but only using a single thread which is not very effective as there are 48 cores per node available.
I'm no expert with clusters and luckily I had some help from a more computer literate person at our university. Here's what we have figured out so far:
Running Matlab on another, much smaller cluster, which has 2 x Intel X5675 (6-core) cpus per node, the code runs multithreaded with MATLAB 2009b, single threaded with MATLAB 2010b, and multithreaded with MATLAB 2011a. The best performance of all was MATLAB 2011a. But no matter what I do, it always runs single threaded on the bigger cluster with the AMD processors. (This difference might be relevant to the BLAS library used by MATLAB for vector operations. There is also logic within these libraries for determining whether or not it is worth using the multithreaded version of the operation.)
Any ideas what would cause Matlab to run singlethreaded on the bigger cluster?
  1 comentario
Herwig Peters
Herwig Peters el 5 de Oct. de 2011
The code that I've tried on the cluster:
% expansion point
w0 = 2*pi*s0;
KK = K - (w0^2)*M;
% LU factorization
[M1,M2,P1,Q1,R1] = lu(KK);
% initialize v for speed
v = zeros(size(M,1),n);
% compute Krylov basis
v0 = Q1*(M2\(M1\(P1*(R1\f1))));
v(:,1) = v0/norm(v0);
for j = 2:n
v(:,j) = Q1*(M2\(M1\(P1*(R1\(M*v(:,j-1))))));
for k = 1:j-1
hv = v(:,k)'*v(:,j);
v(:,j) = v(:,j) - hv*v(:,k);
end
v(:,j) = v(:,j)/norm(v(:,j));
end

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Parallel Computing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by