SVD Differences - Single/multi Core CPU

2 visualizaciones (últimos 30 días)
Milos
Milos el 16 de Dic. de 2011
In data analysis I have 2 pre-processing steps that involve singular value decomposition (SVD). The final step is performing hierarchical cluster analysis (HCA), and this is where things get "interesting". On two different machines I get different results. It turns out that one machine fires on all CPU cores when performing SVD, while the other one chugs along using a single CPU core. Has anybody experienced this type of behavior?

Respuestas (2)

Andreas Goser
Andreas Goser el 16 de Dic. de 2011
There are many reasons why results can be different on different machines. The most frequent reason I see is 32 bit vs. 64 bit architecture. Let me know if this can be a factor here.
  3 comentarios
Milos
Milos el 16 de Dic. de 2011
Both machines are 64-bit, running Windows 7 64-bit Professional, and running 64-bit MATLAB R2011b. The only difference is that one is Core 2 Duo (uses only one core) and the other is 2nd gen. Core i7 (uses all cores).
Milos
Milos el 16 de Dic. de 2011
Not numerical precision issue. If [U,S,V] = svd(X); differences in U and V are ~ 0.00xxxxx (if I remember correctly, will have to check later since my colleague is not on the office and the computer is locked).

Iniciar sesión para comentar.


Jan
Jan el 16 de Dic. de 2011
The Core 2 Duo uses one core only?! What a pitty.
Such difference are caused by numerical the limited accuracy. Although 0.001 absolute difference in U and V sounds large, consider, that this actually means a very tiny angle. Such differences can be expected, when the same task is computed on a different number of cores.

Categorías

Más información sobre Linear Algebra en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by