eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › no to ile czasu matlab mnozy te duze macierze?
Ilość wypowiedzi w tym wątku: 34

  • 21. Data: 2010-01-25 16:44:03
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: bartekltg <b...@g...com>

    On 25 Sty, 15:45, Mariusz Marszałkowski <m...@g...com> wrote:
    >
    > Na niektórych architekturach, na niektórych programach,
    > obserwowałem, że gcc wypada znacznie lepiej niż VC. Może

    Hmm, szlyszalem odwrotnie;)

    > własnie z powodu gcc mam lepszy wynik. Jutro może

    Masz lepsze wyniki bo masz lepszy komputer;)
    Jesli mowisz o porownywaniu do matlaba, to podejrzewam
    ze nie dales mu sie wykazac (daj najzyzszy piorytet i testuj
    w petli for j=1:10,tic;c=a*b;toc,end;)

    Najlepsza procedura zchodze do 1.86 przy 1.48 matlabem
    dla n=960 i 15.45s przy 11s matlabem.
    Uwazasz, ze gcc znacznie wiecej wyciagnie;>

    > zajdę chwilę czasu, to spróbuję skompilować w GCC Twoje
    > procedury.

    gcc mam nieswieze, z devcpp.
    Opcje
    -fexpensive-optimizations -O3 -march=athlon-xp -msse

    I wyniki tragiczne:( ikj z 10 -> 6
    bolkowa spadla do 6s (z ) :(
    Blokowa, ktorej tu nie podawalem, z zabawa wskaznikami etc,
    zeby podpowiedziec kompilatorowi, jak sie nie napracowac,
    a ktora daje pewne przyszpieszenie w VC tu tez spadla,
    ale nie tak znacznie z 1.86 zroblo sie 2.57.
    Widac, ze optymalizuje znacznie gorzej.

    Ale jak mowilem, gcc prehistoryczne.

    Probowalem sciagnac cos nowszego, ale mingw wyskakuje mi
    tez z gcc 3.4, devcpp juz zdechlo. Podpowiedz, czego szukac
    tak, zeby sie nie narobic;)

    pozdrawiam
    bartekltg


  • 22. Data: 2010-01-25 17:40:20
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: thrunduil <t...@w...pl>

    On 25 Sty, 17:27, marszi <w...@g...com> wrote:

    > Ja mam pod windows 4.4.0, i to juz od jakiegoś czasu. Różnica w


    skad wziac nowsza wersje gcc?
    wlasnie sprawdzilem, ze nawet w cygwinie jest tylko 3.4.


  • 23. Data: 2010-01-25 19:24:14
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 25 Sty, 18:40, thrunduil <t...@w...pl> wrote:
    > On 25 Sty, 17:27, marszi <w...@g...com> wrote:
    >
    > > Ja mam pod windows 4.4.0, i to juz od jakiegoś czasu. Różnica w
    >
    > skad wziac nowsza wersje gcc?
    > wlasnie sprawdzilem, ze nawet w cygwinie jest tylko 3.4.

    Tak jak pisalem, pod windows najprosciej wraz z qtcreator.
    W googlach poszukac qtcreator.
    Pozdrawiam serdecznie


  • 24. Data: 2010-01-25 19:44:35
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 25 Sty, 17:44, bartekltg <b...@g...com> wrote:
    > On 25 Sty, 15:45, Mariusz Marszałkowski <m...@g...com> wrote:
    >
    >
    >
    > > Na niektórych architekturach, na niektórych programach,
    > > obserwowałem, że gcc wypada znacznie lepiej niż VC. Może
    >
    > Hmm, szlyszalem odwrotnie;)
    Roznie to jest. Kiedys (3-4 lata temu) z najczesciej VC wypadal
    nieznacznie (5-7%) lepiej. Od owych 3-4 lat, w moich testach znacznie
    czesciej
    wypada lepiej GCC. Bywa ze jeden kompilator generuje kod 2 razy
    szybszy
    niz drugi. Oczywiscie to zalezy od kodu i od maszyny docelowej. GCC
    ma duzo opcji do kompilacji, dobrac te opcje to wyzwanie. Jest nawet
    program ktory metoda prob i bledow dobiera opcje kompilacji.

    > Masz lepsze wyniki bo masz lepszy komputer;)
    Mowie o wzglednym wyniku. Moj kod dziala 3.3 razy
    wolniej niz matlab na tym samym sprzecie. Procedura
    ktora Ty wkleiles dziala 1.5 raza wolniej niz matlab, ale
    Twojej juz nie testowalem tak dokladnie. Mam tone innego
    kodu do testowania/optymalizowania i nie mam czasu :)

    > Jesli mowisz o porownywaniu do matlaba, to podejrzewam
    > ze nie dales mu sie wykazac (daj najzyzszy piorytet i testuj
    > w petli for j=1:10,tic;c=a*b;toc,end;)
    Tak to polecilem komus zrobic. Jeszcze musze zapytac o
    wersje matlaba, moze macie nowszego matlaba i dlatego
    wypada u Was lepiej?


    > Najlepsza procedura zchodze do 1.86 przy 1.48 matlabem
    > dla n=960 i 15.45s przy 11s matlabem.
    > Uwazasz, ze gcc znacznie wiecej wyciagnie;>
    Kwestia szczescia :) Np. najlepsza Twoja procedura po
    dolaczeniu kodu dla profilera (a wiec obciazona dodatkowym
    kodem) dzial szybciej niz skompilowana normalnie! Zeby
    dobrze kompilowac gcc trzeba miec duzo doswiadczenia i
    intuicji :)


    > > zajdę chwilę czasu, to spróbuję skompilować w GCC Twoje
    > > procedury.
    >
    > gcc mam nieswieze, z devcpp.
    > Opcje
    >  -fexpensive-optimizations -O3 -march=athlon-xp -msse
    Ja daje bez -march i bez -mtune, uznalem ze to byloby
    nie w porzadku wobec matlaba, bo jego kod zadziala na
    kazdym kompie :) Po mtune i march program moze nie
    dzialac na innym kompie.


    > I wyniki tragiczne:( ikj z 10 -> 6
    > bolkowa spadla do 6s (z ) :(
    > Blokowa, ktorej tu nie podawalem, z zabawa wskaznikami etc,
    > zeby podpowiedziec kompilatorowi, jak sie nie napracowac,
    > a ktora daje pewne przyszpieszenie w VC tu tez spadla,
    > ale nie tak znacznie z 1.86 zroblo sie 2.57.
    > Widac, ze optymalizuje znacznie gorzej.
    Chwilka :) Wkskazniki nie podpowiadaja kompilatorowi
    jak optymalizowac, tylko uniemozliwiaja optymalizacje. Jesli
    uzywa sie wskaznikow, trzeba wykonac cala prace samemu
    za kompilator. Czasami to sie oplaca, a czasami nie.

    > Ale jak mowilem, gcc prehistoryczne.
    >
    > Probowalem sciagnac cos nowszego, ale mingw wyskakuje mi
    > tez z gcc 3.4, devcpp juz zdechlo. Podpowiedz, czego szukac
    > tak, zeby sie nie narobic;)
    Jesli pod winde, to najnowszy QtCreator. Pod linuxa robi ktos
    to za mnie i nie umiem polecic, zawsze mam podstawiona najnowsza
    wersje pod nos :)


    > pozdrawiam
    Rowniez :)



  • 25. Data: 2010-01-25 21:10:37
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Wojciech Jaczewski <w...@o...pl>

    Mariusz Marszałkowski wrote:

    > [...]
    > Jest nawet
    > program ktory metoda prob i bledow dobiera opcje kompilacji.

    Pamiętasz może jego nazwę?


  • 26. Data: 2010-01-25 22:13:39
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 25 Sty, 22:10, Wojciech Jaczewski <w...@o...pl> wrote:
    > Mariusz Marszałkowski wrote:
    > > [...]
    > > Jest nawet
    > > program ktory metoda prob i bledow dobiera opcje kompilacji.
    >
    > Pamiętasz może jego nazwę?

    Niestety zapomnialem, sleroza.
    Kiedys nazwe i linka do strony podawalem na tym forum:

    http://tech.groups.yahoo.com/group/progszach/

    ale juz nie pamietam.

    Trzeba by przeszukac :/

    Pozdrawiam


  • 27. Data: 2010-01-25 23:02:48
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Wojciech Jaczewski <w...@o...pl>

    Mariusz Marszałkowski wrote:

    > On 25 Sty, 22:10, Wojciech Jaczewski <w...@o...pl> wrote:
    >> Mariusz Marszałkowski wrote:
    >> > [...]
    >> > Jest nawet
    >> > program ktory metoda prob i bledow dobiera opcje kompilacji.
    >>
    >> Pamiętasz może jego nazwę?
    >
    > Niestety zapomnialem, sleroza.
    > Kiedys nazwe i linka do strony podawalem na tym forum:
    >
    > http://tech.groups.yahoo.com/group/progszach/

    Dzięki.
    Poszukam sobie. Nie jest to dla mnie jakoś szczególnie pilne, ale kiedyś
    poeksperymentuję i może zdobędę trochę dodatkowej wiedzy, przydatnej do
    dyskutowania na mój ulubiony temat na grupie pl.comp.lang.java - czyli na
    temat optymalizacji, jakie to może wykonać kompilator statyczny, a jakie to
    niby cuda wyczynia JVM...


  • 28. Data: 2010-01-26 00:37:22
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: bartekltg <b...@g...com>

    On 25 Sty, 20:44, Mariusz Marszałkowski <m...@g...com> wrote:
    > On 25 Sty, 17:44, bartekltg <b...@g...com> wrote:> On 25 Sty, 15:45, Mariusz
    Marszałkowski <m...@g...com> wrote:

    > ktora Ty wkleiles dziala 1.5 raza wolniej niz matlab, ale
    > Twojej juz nie testowalem tak dokladnie.

    1.86 do 1.46
    i 15.4 do 11.6
    Czyli sie zgadza (no, moze sugerowac jednak przewage VC;))

    > Tak to polecilem komus zrobic. Jeszcze musze zapytac o
    > wersje matlaba, moze macie nowszego matlaba i dlatego
    > wypada u Was lepiej?

    Czyli robisz testy na sprzecie podobnym, a nie tym samym?

    > Kwestia szczescia :) Np. najlepsza Twoja procedura po
    > dolaczeniu kodu dla profilera (a wiec obciazona dodatkowym
    > kodem) dzial szybciej niz skompilowana normalnie! Zeby

    Cuda jakies;>

    > dobrze kompilowac gcc trzeba miec duzo doswiadczenia i
    > intuicji :)

    Ale ja kompilowalem VC. Tez bawiac sie opcjami.
    Wszelkie info dla profilera wywalone. asm wyglada dosc ladnie.

    > Ja daje bez -march i bez -mtune, uznalem ze  to byloby
    > nie w porzadku wobec matlaba, bo jego kod zadziala na

    Jego strata. To jest wlasnie przewaga kodu nad gotowcem,
    mozna skompilowac go pod wlasna maszyne.

    > kazdym kompie :) Po mtune i march program moze nie
    > dzialac na innym kompie.

    Jest mi z tego powodu niezmiernie przykro - bedzie
    trzeba przebudowac kod na tamtym kompie.

    > Chwilka :) Wkskazniki nie podpowiadaja kompilatorowi
    > jak optymalizowac, tylko uniemozliwiaja optymalizacje. Jesli

    To sa 'sztuczki' typu: w ostatniej petli C[N*i+j] zamieniamy
    na CC[j] a 'CC=C+N*i;' spychamy pare poziomow nizej.
    Takie optymalizacje moglby robic kompilator, jednak
    oba (VC i gcc) przyszpieszyly po takiej operacji.


    > Jesli pod winde, to najnowszy QtCreator. Pod linuxa robi ktos
    > to za mnie i nie umiem polecic, zawsze mam podstawiona najnowsza
    > wersje pod nos :)

    Cos sciagnalem, okazalo sie, ze to _wymaga_ minwg:)
    teraz sciaga sie qt-sdk-win-opensource-2010.01, moze tam jest..

    pozdrawiam
    bartekltg


  • 29. Data: 2010-01-26 01:12:40
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Mariusz Marszałkowski <m...@g...com>

    On 26 Sty, 01:37, bartekltg <b...@g...com> wrote:
    > On 25 Sty, 20:44, Mariusz Marszałkowski <m...@g...com> wrote:
    >
    > > On 25 Sty, 17:44, bartekltg <b...@g...com> wrote:> On 25 Sty, 15:45,
    Mariusz Marszałkowski <m...@g...com> wrote:
    > > ktora Ty wkleiles dziala 1.5 raza wolniej niz matlab, ale
    > > Twojej juz nie testowalem tak dokladnie.
    >
    > 1.86 do 1.46
    > i 15.4 do 11.6
    > Czyli sie zgadza (no, moze sugerowac jednak przewage VC;))
    >
    > > Tak to polecilem komus zrobic. Jeszcze musze zapytac o
    > > wersje matlaba, moze macie nowszego matlaba i dlatego
    > > wypada u Was lepiej?
    >
    > Czyli robisz testy na sprzecie podobnym, a nie tym samym?
    Identyczny sprzęt.


    > > Kwestia szczescia :) Np. najlepsza Twoja procedura po
    > > dolaczeniu kodu dla profilera (a wiec obciazona dodatkowym
    > > kodem) dzial szybciej niz skompilowana normalnie! Zeby
    >
    > Cuda jakies;>
    To jeszcze nic... Wlasnie obserwuje jak na innym programie,
    jak po dodaniu statycznej tablicy do ktorej nie ma jeszcze
    zadnego odwolania w kodzie, program z 300sekund spowolnil
    do 358s :) Inaczej rozlozone dane i juz taki spadek wydajnosci. I
    co mam na to poradzic?


    > > dobrze kompilowac gcc trzeba miec duzo doswiadczenia i
    > > intuicji :)
    >
    > Ale ja kompilowalem VC. Tez bawiac sie opcjami.
    > Wszelkie info dla profilera wywalone. asm wyglada dosc ladnie.
    Ok, mowie tak na zas ze kompilacja GCC nie jest trywialna :)


    > > Ja daje bez -march i bez -mtune, uznalem ze  to byloby
    > > nie w porzadku wobec matlaba, bo jego kod zadziala na
    >
    > Jego strata. To jest wlasnie przewaga kodu nad gotowcem,
    > mozna skompilowac go pod wlasna maszyne.
    Moze i racja. Ale akurat na tej maszynie na ktorej byl mierzony
    czas matlaba -march i mtune zupelnie nic nie dalo. A kod
    przyspieszal z danymi dla profilera :) Moze profiler wplywa
    jakos na dzialanie funkcji clock? Nie wiem... zglupialem
    gdy zobaczylem ze kod z info dla profilera dziala krocej.

    > > kazdym kompie :) Po mtune i march program moze nie
    > > dzialac na innym kompie.
    >
    > Jest mi z tego powodu niezmiernie przykro - bedzie
    > trzeba przebudowac kod na tamtym kompie.
    >
    > > Chwilka :) Wkskazniki nie podpowiadaja kompilatorowi
    > > jak optymalizowac, tylko uniemozliwiaja optymalizacje. Jesli
    >
    > To sa 'sztuczki' typu: w ostatniej petli C[N*i+j] zamieniamy
    > na CC[j] a 'CC=C+N*i;' spychamy pare poziomow nizej.
    > Takie optymalizacje moglby robic kompilator, jednak
    > oba (VC i gcc) przyszpieszyly po takiej operacji.
    GCC robi bardzo duzo, ale trudno jest sie posluzyc
    jego opcjami. W helpie do GCC widzialem bardzo podobny
    przyklad do mnozenia macierzy, z ktorego wynika ze GCC umie
    sam zaminiec dwie petle:

    for i = 1, N
    for j = 1, N

    na cztery:

    for i = 1, N, step
    for j = 1, N, step
    for ii=1,step
    for jj=1,step

    Podobnie jest opcja w ktorej podaje sie ilosc pamieci
    cache. Moze ktos lepiej poslugujacy sie GCC czyta
    ten watek i nam troche opowie o mozliwosciach GCC?


    > > Jesli pod winde, to najnowszy QtCreator. Pod linuxa robi ktos
    > > to za mnie i nie umiem polecic, zawsze mam podstawiona najnowsza
    > > wersje pod nos :)
    >
    > Cos sciagnalem, okazalo sie, ze to _wymaga_ minwg:)
    > teraz sciaga sie qt-sdk-win-opensource-2010.01, moze tam jest..

    Ah tak, sa wersje z kompilatorem i bez.

    Pozdrawiam



  • 30. Data: 2010-01-27 11:24:46
    Temat: Re: no to ile czasu matlab mnozy te duze macierze?
    Od: Kicer <...@...c>

    Mariusz Marszałkowski wrote:

    > On 25 Sty, 17:44, bartekltg <b...@g...com> wrote:
    >> On 25 Sty, 15:45, Mariusz Marszałkowski <m...@g...com> wrote:
    >>
    >>
    >>
    >> > Na niektórych architekturach, na niektórych programach,
    >> > obserwowałem, że gcc wypada znacznie lepiej niż VC. Może
    >>
    >> Hmm, szlyszalem odwrotnie;)
    > Roznie to jest. Kiedys (3-4 lata temu) z najczesciej VC wypadal
    > nieznacznie (5-7%) lepiej. Od owych 3-4 lat, w moich testach znacznie
    > czesciej
    > wypada lepiej GCC. Bywa ze jeden kompilator generuje kod 2 razy
    > szybszy
    > niz drugi. Oczywiscie to zalezy od kodu i od maszyny docelowej. GCC
    > ma duzo opcji do kompilacji, dobrac te opcje to wyzwanie. Jest nawet
    > program ktory metoda prob i bledow dobiera opcje kompilacji.

    było kiedys na którejs grupie, nie pamietam na której;)
    http://www.linux-
    kongress.org/2009/slides/compiler_survey_felix_von_l
    eitner.pdf

    --
    Michał Walenciak
    Kicer86 at gmail dot com
    http://kicer.elsat.net.pl
    gg: 3729519

strony : 1 . 2 . [ 3 ] . 4


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: