eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingmatlab taki wydajny? › Re: matlab taki wydajny?
  • Data: 2010-01-18 18:55:15
    Temat: Re: matlab taki wydajny?
    Od: bartekltg <b...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 18 Sty, 13:15, Mariusz Marszałkowski <m...@g...com> wrote:
    > Witam
    >
    > Od dość dawna słyszę opinie że procedury zaimplementowane w
    > matlabie są bardzo wydajne. Nie znam matlaba, ale wczoraj przez
    > przypadek miałem go pod ręką, no i tyle ile można się nauczyć
    > przez godzinę sprawdziłem.
    >
    > Program w matlabie robił coś takiego:
    > for i=1:20000
    >  v = a * m1;
    >  a = v * m2;
    > end;

    U mnie 520 (tzn petla do 2000 zajela 52).
    Natomiast rownowazne
    tic;a=a*(m1*m2)^(20000-1); v = a * m1; a = v * m2; toc

    zajelo 50s. Czyli 10 razy mniej:)

    > gdyż robił ciut więcej obliczeń. No i w C
    > wykonywało to 70s.

    100 do 70? cos mierna ta roznica.

    > Więc to tylko plotki że matlab jest taki wydajny?

    Po pierwsze, porownaj powazne procedury. Chocby mnozenie maciezy.

    Po drugie, czy matlab w tym miejscy nie korzysta z c blas/lapack?
    Ze napisales ogolne procedury wydajniejsze - nie wierze;)
    Sprawa zapewne rozbija sie o lepsze uzycie procesora,
    programiki z c je wykorzystuje, matlab raczej nie
    (czy daja wersje pod rozne procesory, nie wiem, moj jest uczelniany
    i bebecham malo mnie obchodza, ale watpie).
    Skontaktuj sie z nimi i zapytaj o podiane bibliotek na superprocek.

    Po trzecie. Wydajnosc matlaba to sprawa drugorzedna. 70% to
    niezly wynik. Procedura quad (adaptatywne calkowanie simpsonem),
    gdy uzyjesz jej na niedrogiej obliczeniowo funkcji bedzie koszmarnie
    wolna w porownaniu do jakiegokolwiek jezyka kompilowanego*).

    Matlab to taka pierwsza linia frontu:) Mozesz sobie poeksperymentowac,
    wszytko masz pod reka, a jesli dane do obliczen/symulacji/obrobki
    beda duze i zalezec Ci bedzie na tym czynniku rzedu 2, posiedzisz
    dwa tygodnia lub miesiace i napiszesz to w c/c++/fortranie.


    pozdrawiam
    bartekltg

    *) kolezanka sie na to naciela. Wynika to oczywiscie ze skryptowosci,
    w kazdym kroku procedura liczy wartosci funkcji w jedynie 3 (a moze
    pieciu) punktach i za kazdym razem ciagnie za soba cala nadbudowe
    (sprawdzanie rodzaju funkcji i poprawnosci wyrazenia..).
    Na szybko napisalismy romberga (kilkanascie linijek, grubo 20 minut)
    i dalo sie pracowac.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: