2010-07-21 12 views
5

Ciao a tutti. Sto cercando di capire come far funzionare MATLAB nel miglior modo possibile. Ho una nuova macchina abbastanza decente.MATLAB e utilizzo di più core per eseguire calcoli

12 GB RAM Core i7 3.2 Ghz Cpu e molto spazio libero. e una scheda grafica potente.

Tuttavia, quando eseguo il test di benchmark di MATLAB (banco di comando), il computer si avvicina al peggio, attorno a una macchina 1.7Ghz single core Windows XP.

Qualche idea, perché e come posso migliorare questo ??

Grazie molto

risposta

10

In primo luogo, consiglierei di rieseguire il comando di banco alcune volte per assicurarsi che MATLAB abbia caricato tutte le librerie ecc. Di cui ha bisogno. Gran parte di MATLAB è caricato su richiesta, quindi è sempre meglio cronometrare la seconda o la terza corsa.

MATLAB sfrutta automaticamente più core durante l'esecuzione di determinate operazioni che sono multithread. Ad esempio, molte operazioni elementwise come +, .* e così via, nonché operazioni supportate da BLAS (e probabilmente altre). This page elenca quelle cose che sono multithreaded.

Parallel Computing Toolbox è utile quando il multithreading intrinseco di MATLAB non può essere d'aiuto (se possibile, di solito è il modo più veloce per fare le cose). Questo ti dà il parallelismo esplicito tramite PARFOR, SPMD e distributed arrays.

2

è necessario il Parallel Processing Toolbox. Molte funzioni di MATLAB sono multithreaded ma per parallelizzare il tuo codice, ne avrai bisogno. Un trucco stupido è di aprire diverse istanze di MATLAB a riga di comando. Potresti anche scrivere in multithreading MEX files ma il modo giusto per farlo sarebbe l'acquisto e utilizzare la cassetta degli attrezzi di cui sopra.

2

Ciò può essere ovvio, ma assicurarsi di aver abilitato il calcolo multithread nelle preferenze (File> Preferenze> Generali> Multithreading). In alcune versioni di MATLAB, non è abilitato per impostazione predefinita.

Problemi correlati