eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › matlab taki wydajny?
Ilość wypowiedzi w tym wątku: 89

  • 1. Data: 2010-01-18 12:15:07
    Temat: matlab taki wydajny?
    Od: Mariusz Marszałkowski <m...@g...com>

    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;

    Gdzie v i a to wektory double po 1000 elementów, a
    m1 i m2 to macierze po 1000 na 1000 elementów.

    Zainicjalizowane były losowymi liczbami.

    Program wykonywał się około 100 sekund.

    Na tym samym sprzęcie odpaliłem podobny
    program napisany w C, skompilowany gcc.
    Program w C był podobny, a nie taki sam,
    gdyż robił ciut więcej obliczeń. No i w C
    wykonywało to 70s.

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

    Pozdrawiam




  • 2. Data: 2010-01-18 12:37:44
    Temat: Re: matlab taki wydajny?
    Od: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid>

    On 2010-01-18, Mariusz Marszałkowski <m...@g...com> wrote:
    > 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;
    >
    > Gdzie v i a to wektory double po 1000 elementów, a
    > m1 i m2 to macierze po 1000 na 1000 elementów.
    >
    > Zainicjalizowane były losowymi liczbami.
    >
    > Program wykonywał się około 100 sekund.
    >
    > Na tym samym sprzęcie odpaliłem podobny
    > program napisany w C, skompilowany gcc.
    > Program w C był podobny, a nie taki sam,
    > gdyż robił ciut więcej obliczeń. No i w C
    > wykonywało to 70s.
    >
    > Więc to tylko plotki że matlab jest taki wydajny?

    Jak się nie wie do czego Matlab jest przewidziany to potem się robi
    głupie testy i niepoprawnie interpretuje wyniki. Matlab dobrze sobie
    radzi z operacjami na macierzach, ale źle znosi pętle (w końcu to język
    interpretowany). Poza tym ile czasu spędziłeś na pisaniu programu
    w C i ile mu poświęcisz przy ewentualnej zmianie obliczeń wewnątrz
    pętli?

    --
    Secunia non olet.
    Stanislaw Klekot


  • 3. Data: 2010-01-18 13:52:19
    Temat: Re: matlab taki wydajny?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 18 Sty, 13:37, "Stachu 'Dozzie' K."
    <d...@g...eat.some.screws.spammer.invalid> wrote:
    > On 2010-01-18, Mariusz Marsza kowski <m...@g...com> wrote:
    >
    >
    >
    > > 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;
    >
    > > Gdzie v i a to wektory double po 1000 element w, a
    > > m1 i m2 to macierze po 1000 na 1000 element w.
    >
    > > Zainicjalizowane by y losowymi liczbami.
    >
    > > Program wykonywa si oko o 100 sekund.
    >
    > > Na tym samym sprz cie odpali em podobny
    > > program napisany w C, skompilowany gcc.
    > > Program w C by podobny, a nie taki sam,
    > > gdy robi ciut wi cej oblicze . No i w C
    > > wykonywa o to 70s.
    >
    > > Wi c to tylko plotki e matlab jest taki wydajny?
    >
    > Jak si nie wie do czego Matlab jest przewidziany to potem si robi
    > g upie testy i niepoprawnie interpretuje wyniki.

    Naprawdę uważasz że matlab robi 20tys pętli przez ponad 30
    sekund, czy robisz sobie jaja ze mnie?

    Pozdrawiam


  • 4. Data: 2010-01-18 14:19:03
    Temat: Re: matlab taki wydajny?
    Od: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid>

    On 2010-01-18, Mariusz Marszałkowski <m...@g...com> wrote:
    > On 18 Sty, 13:37, "Stachu 'Dozzie' K."
    ><d...@g...eat.some.screws.spammer.invalid> wrote:
    >> On 2010-01-18, Mariusz Marsza kowski <m...@g...com> wrote:
    >>
    >>
    >>
    >> > 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;
    >>
    >> > Gdzie v i a to wektory double po 1000 element w, a
    >> > m1 i m2 to macierze po 1000 na 1000 element w.
    [...]
    >> > Wi c to tylko plotki e matlab jest taki wydajny?
    >>
    >> Jak si nie wie do czego Matlab jest przewidziany to potem si robi
    >> g upie testy i niepoprawnie interpretuje wyniki.
    >
    > Naprawdę uważasz że matlab robi 20tys pętli przez ponad 30
    > sekund, czy robisz sobie jaja ze mnie?

    Naprawdę testowałeś Matlaba puszczając coś krótkiego w długiej pętli czy
    sobie jaja ze mnie robisz?

    Użyj jakiegoś czytnika news, bo pliterki rozpieprzasz.

    --
    Secunia non olet.
    Stanislaw Klekot


  • 5. Data: 2010-01-18 14:31:04
    Temat: Re: matlab taki wydajny?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 18 Sty, 15:19, "Stachu 'Dozzie' K."
    <d...@g...eat.some.screws.spammer.invalid> wrote:
    > On 2010-01-18, Mariusz Marszałkowski <m...@g...com> wrote:
    >
    >
    >
    > > On 18 Sty, 13:37, "Stachu 'Dozzie' K."
    > ><d...@g...eat.some.screws.spammer.invalid> wrote:
    > >> On 2010-01-18, Mariusz Marsza kowski <m...@g...com> wrote:
    >
    > >> > 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;
    >
    > >> > Gdzie v i a to wektory double po 1000 element w, a
    > >> > m1 i m2 to macierze po 1000 na 1000 element w.
    > [...]
    > >> > Wi c to tylko plotki e matlab jest taki wydajny?
    >
    > >> Jak si nie wie do czego Matlab jest przewidziany to potem si robi
    > >> g upie testy i niepoprawnie interpretuje wyniki.
    >
    > > Naprawdę uważasz że matlab robi 20tys pętli przez ponad 30
    > > sekund, czy robisz sobie jaja ze mnie?
    >
    > Naprawdę testowałeś Matlaba puszczając coś krótkiego w długiej pętli czy
    > sobie jaja ze mnie robisz?

    Dwukrotne mnożenie macierzy [1x100] * [1000x1000] używasz za coś
    krótkiego? Przecież to 2mln mnożeń, 2mln dodawań i 2mln kopiowań
    liczb podwójnej precyzji. Jakie znaczenie ma jedna pętla na 6mln
    innych
    operacji? Uważasz że w matlabie tak schrzanili ten język
    interpretowany
    że jena pętla działa wolniej niż 6mln operacji, bo pętla jest
    interpretowana?
    Ja matlabem nigdy się nie interesowałem i go nie znam, ale Ty to
    chyba
    masz zupełnie błędne wyobrażenie o nim i o programowaniu w ogóle.

    > Użyj jakiegoś czytnika news, bo pliterki rozpieprzasz.
    W tej kwestii pretensje do ludzi z google i(lub) fire fox.



  • 6. Data: 2010-01-18 14:43:34
    Temat: Re: matlab taki wydajny?
    Od: "Grzegorz Niemirowski" <g...@p...onet.pl>

    Mariusz Marszałkowski <m...@g...com> napisał(a):
    > > Użyj jakiegoś czytnika news, bo pliterki rozpieprzasz.
    > W tej kwestii pretensje do ludzi z google i(lub) fire fox.

    Ktoś Cię zmusza do używania Google?

    --
    Grzegorz Niemirowski
    http://www.grzegorz.net/
    OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
    Uptime: 17 days, 20 hours, 34 minutes and 31 seconds


  • 7. Data: 2010-01-18 14:47:20
    Temat: Re: matlab taki wydajny?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 18 Sty, 15:43, "Grzegorz Niemirowski" <g...@p...onet.pl>
    wrote:
    > Mariusz Marszałkowski <m...@g...com> napisał(a):
    >
    > >  > Użyj jakiegoś czytnika news, bo pliterki rozpieprzasz.
    > > W tej kwestii pretensje do ludzi z google i(lub) fire fox.
    >
    > Ktoś Cię zmusza do używania Google?
    Najwyrazniej czytnik google taki dobry jak
    matlab wydajny.



  • 8. Data: 2010-01-18 14:58:14
    Temat: Re: matlab taki wydajny?
    Od: Krzysiek Kowaliczek <k...@g...com>

    Użytkownik Mariusz Marszałkowski napisał:
    > Ja matlabem nigdy się nie interesowałem i go nie znam, ale Ty to
    > chyba
    > masz zupełnie błędne wyobrażenie o nim i o programowaniu w ogóle.

    Nie pomyślałeś, że Matlab ma *uniwersalną* implementację mnożenia
    macierzy? Więc nie dziw się, że twoja skrojona na miarę implementacja
    jest szybsza.

    Pozdrawiam
    KK


  • 9. Data: 2010-01-18 15:09:13
    Temat: Re: matlab taki wydajny?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 18 Sty, 15:58, Krzysiek Kowaliczek
    <k...@g...com> wrote:
    > U ytkownik Mariusz Marsza kowski napisa :
    >
    > > Ja matlabem nigdy si nie interesowa em i go nie znam, ale Ty to
    > > chyba
    > > masz zupe nie b dne wyobra enie o nim i o programowaniu w og le.
    >
    > Nie pomy la e , e Matlab ma *uniwersaln * implementacj mno enia
    > macierzy? Wi c nie dziw si , e twoja skrojona na miar implementacja
    > jest szybsza.

    Powiedzialbym ze nie jest szybsza, ale duzo szybsza. I nie jest
    skrojona na miare, bo jak juz nadmienialem, moja procedura w C
    realizuje troche inny algorytm , ale mnozenie takich samych dwoch
    wektorow przez dwie macierze sa w niej czescia dominujaca. Stawiam
    ze czas matlaba do jezya C i gcc jest jak 10:6 w tym tescie.

    Dlaczego mam sie nie dziwic? Matlab chyba jest cholernie drogi?
    Za te pieniadze chlopaki od matlaba z pewnoscia mieli mozliwosc
    napisania stu wersji procedur mnozenia macierzy. Kazda wersje
    na inna architekture i na inne rozmiary macierzy. Srodowisko za
    takie pieniadze powinno rozpoznac jaki jest procesor, ile ma pamieci
    cache, jakie sa rozmiary macierzy i wskoczyc do skrojonych
    na miare i zoptymalizowanych na dana platforme procedur.

    Pozdrawiam serdecznie






  • 10. Data: 2010-01-18 18:55:15
    Temat: Re: matlab taki wydajny?
    Od: bartekltg <b...@g...com>

    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.

strony : [ 1 ] . 2 ... 9


Szukaj w grupach

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: