Šta je novo?

kako ubrzati matlab

pseto

Čuven
Učlanjen(a)
15.12.2001
Poruke
83
Poena
609
koristim ga za diplomski
nisam bas familijaran sa ostalim programskim jezicima
Radim neke proracune ali je strasno spor pa ako neko zna moze li to
da se ubrza
cuo sam da postoji kompajler ali ne znam ima li neke vajde od toga
pozdrav
 
Na shta konkretno mislis? To prvenstveno zavisi od metoda,a zatim i od algoritama koje si primenjivao za resavanje problema. Postoji masa problema za koje postoje vec optimalni algoritmi (generalno metodi) za resavanje. Kao primer ti mogu navesti (a mozda si vec i cuo) metod (za koji je razvijeno vise algoritama) za trazenje inverzije retke matrice dimenzija reda 10 000 x 10 000 (LU dekompozicija i ostala chuda)! Znaci bez ikakvih dodatnih operacija.... samo inverzija. Bez razvijenih algoritama ovo bi bio po prilicno bolan zahvat :). No nevezano za ovo ipak mislim da te neke petlje muche, jer obichno one znaju duuuugo da traju.
 
Postoje sledece operacije
trazenje matrice koja sadrzi sve
kombinacije skupa od 21 elemenat klase 11
ima ih oko 250000
naredba combntns(1:21,11)
ovo traje oko 5 minuta
Za svaku kombinaciju treba jednu matricu
dimenzije 7*7 dici na prvi,drugi,..,sedmi stepen
zatim ima par petlji
Program nije komplikovan samo je problem sto ima mnogo
kombinacija
Nasao sam u helpu da postoji kompajler
Nisam jos uspeo da provalim kako se koristi taj kompajler
Da li mozda moze da se od ovog m fajla napravi neki exe fajl
koji ce ovo brze da odradi.
Pozdrav
 
eMe je napisao(la):
.... No nevezano za ovo ipak mislim da te neke petlje muche, jer obichno one znaju duuuugo da traju.

Upravo tako petlje tipa "for i=...." i sl. gdje god mozes izbjegavaj i koristi mogucnost generisanja sa ":". Mislim da ces ako pazljivo povedes racuna o naredbama koje guse u algoritmu, moci bez kompajlera.
Koju verziju Matlab-a koristis i koje su naredbe u algoritmu dominantne?
 
Ne verujem da ce ti kompajler nesto preterano pomoci, iako ga nisam nikad koristio. Ono sto sam ti zaboravio reci ranije, jeste da se pod optimalnim algoritmima podrazumevaju algoritmi sa najmanjim brojem matematichkih operacija u toku resavanja nekog problema. Znachi sustina je da ti optimizujes kod.... izbacis neke stvari, nesto dodas,itd. kako bi imao sto manje slozenih matematickih izraza. Secam se jos davno sam pokusavao da napisem algoritam za trazenje prostih brojeva.... to je bio strasan promasaj :) ostavis masinu da trazi 24 sata i ono... ujutro pogledas kad ono svega shest pronadjenih brojeva :).... a sve to zato sto algoritam nije bio dobar.
 
Sa matricama bi Matlab trebao da bude najbrzi, ali ako ti treba veca brzina uzmi neku stariju verziju Mathematica386 paketa, pa odradi sve iz DOS-a.

PS
Pravo ubrzanje za Matlab ti je Pentium umesto AMD-a ili Celerona.
 
Sto se tice AMD-a i Intel-a, zormanic je skroz u pravu.
 
imam matlab r12 celeron na 400mhz 256mb
za ovaj proracun treba mu oko 8 minuta
petlju nikako ne mogu da izbacim
evo m fajla
je li brzi matlab 13? da ga trazim?
pozdrav
 
Vreme je izgleda OK.

Moj savet ti je da izbegnes nekako STEPENOVANJE,

probaj sve da svedes na MNOZENJE. Recimo A*A umesto A^2... itd manje se alocira na stack-u. Spasave te same experiment.


Puno srece.
 
pseto je napisao(la):
imam matlab r12 celeron na 400mhz 256mb
za ovaj proracun treba mu oko 8 minuta
petlju nikako ne mogu da izbacim
evo m fajla
je li brzi matlab 13? da ga trazim?
pozdrav

XP1700@2GHz, 512MB, NF7-S, R13 ~ 50 sekundi. Proceni sam...
 
Jesi li probao da ukloniš operacije stepenovanja?

Možda treba da se optimizuje i operacija matričnog množenja ukoliko su dimenzije matrica zgodne za polovljenje?!?

poz
 
izbacio sam stepenovanje sad mu treba 5 minuta
 
'si probao R13? again


Dopuna:


Duron 1GHz, 256MB, WinXP, Matlab R13

Vreme: 2min 15sec
 
Josh jedno pitanje:

Da li je neko uspeo da instalira R13 u Program Files...
 
Nazad
Vrh Dno