-
1. Data: 2009-06-10 09:28:27
Temat: Octave
Od: Marcin E. Hamerla <X...@X...Xonet.Xpl.removeX>
Witam,
Mam szybkie pytanie odnosnie Octave. M-file czyta z pliku dane zebrane
przez analizator stanow logicznych, laduje je do duzej, macierzy, robi
jakas obrobke tego (zadne fft, itd). Nie bardzo kapuje dlaczego
pracochlonnosc obliczeniowa konsekwentnie rosnie nieliniowo. Danych
jest na przyklad dwa razy wiecej, a czas wykonywania programu jest 4
razy dluzszy. Moze mnie ktos oswiecic o co chodzi?
--
Pozdrowienia, Marcin E. Hamerla
"Every day I make the world a little bit worse."
-
2. Data: 2009-06-10 10:56:19
Temat: Re: Octave
Od: Waldemar Krzok <w...@z...fu-berlin.de>
Marcin E. Hamerla schrieb:
> Witam,
>
> Mam szybkie pytanie odnosnie Octave. M-file czyta z pliku dane zebrane
> przez analizator stanow logicznych, laduje je do duzej, macierzy, robi
> jakas obrobke tego (zadne fft, itd). Nie bardzo kapuje dlaczego
> pracochlonnosc obliczeniowa konsekwentnie rosnie nieliniowo. Danych
> jest na przyklad dwa razy wiecej, a czas wykonywania programu jest 4
> razy dluzszy. Moze mnie ktos oswiecic o co chodzi?
nie wiem jak z Oktave bo pracuję z Matlabem, ale tu masz podobne
zjawisko (czasami). Już samo wczytywanie ASCII nie jest całkiem liniowe.
Myślę, że to sprawa buforów, które nie są w 100% trzymane w pamięci
tylko wywalane na dysk. Jak duże są te twoje macierze? Ja miałem np. coś
takiego, że wczytywanie i przetwarzanie w kawałkach 10MB było mniej
więcej 10x szybsze od przetwarzania w całości na raz (max 2GB), choć
musiałem trochę uważać na stykach (filtry potrzebowały max 100 punktów z
przeszłości i przyszłości). Nie wiem czy Oktave też ma możliwość
konfiguracji pamięci, jak Matlab.
Waldek
-
3. Data: 2009-06-10 11:00:05
Temat: Re: Octave
Od: Mirek <p...@d...zind.ikem.pwr.wroc.pl>
On śro, 10 cze 2009 11:28:27 in article
news:<buuu259oihh0d82m3n99qeilv7c0b6d04q@4ax.com>
Marcin E. Hamerla wrote:
> Witam,
>
> Mam szybkie pytanie odnosnie Octave. M-file czyta z pliku dane zebrane
> przez analizator stanow logicznych, laduje je do duzej, macierzy, robi
> jakas obrobke tego (zadne fft, itd). Nie bardzo kapuje dlaczego
> pracochlonnosc obliczeniowa konsekwentnie rosnie nieliniowo. Danych
> jest na przyklad dwa razy wiecej, a czas wykonywania programu jest 4
> razy dluzszy. Moze mnie ktos oswiecic o co chodzi?
<złosliwość>
Moja magiczna kula mówi mi, że masz pętlę w pętli ;)
</złosliwość>
Tak naprawdę przypuszczam, że masz problem wynikający z dynamicznego
rozszerzania tablic. Właśnie niedawno na liście dyskusyjnej octave
stwierdzono, że algorytm jest o złożoności kwadratowej :(
Jedyne jak na razie (zanim poprawią) rozwiązanie, to prealokacja
tablicy do finalnego lub nadmiarowego rozmiaru.
-
4. Data: 2009-06-10 13:30:24
Temat: Re: Octave
Od: "bartekLTG" <b...@o...ciach.pl>
Marcin E. Hamerla wrote:
> Witam,
>
> Mam szybkie pytanie odnosnie Octave. M-file czyta z pliku dane zebrane
> przez analizator stanow logicznych, laduje je do duzej, macierzy, robi
> jakas obrobke tego (zadne fft, itd). Nie bardzo kapuje dlaczego
Powiedz dokladniej, jak laduje (najlepiej kod)
i co robisz z ta macierza.
> pracochlonnosc obliczeniowa konsekwentnie rosnie nieliniowo. Danych
> jest na przyklad dwa razy wiecej, a czas wykonywania programu jest 4
> razy dluzszy. Moze mnie ktos oswiecic o co chodzi?
Poza tym, o czym mowil mirek moze tez n razy przesylasz do funkcji
przez wartosc cala macierz. W amtalbie, jesli dobrze pamietam,
dzieje sie tak wtedy, gdy modyfikujesz zmienna wewnatrz funkcji,
w przeciwnym wypadku kopia nie jest tworzona.
Jeszcze raz: daj odpowiednie fragmenty kodu.
pozdrawiam
--
bartekltg
...aby UseNet rósl w sile a trolle siedzialy cicho
-
5. Data: 2009-06-10 16:34:19
Temat: Re: Octave
Od: Marcin E. Hamerla <X...@X...Xonet.Xpl.removeX>
Mirek napisal(a):
>Tak naprawdę przypuszczam, że masz problem wynikający z dynamicznego
>rozszerzania tablic. Właśnie niedawno na liście dyskusyjnej octave
>stwierdzono, że algorytm jest o złożoności kwadratowej :(
>
>Jedyne jak na razie (zanim poprawią) rozwiązanie, to prealokacja
>tablicy do finalnego lub nadmiarowego rozmiaru.
Ok, to jest to.
Najciekawsze jest to, ze podczas porannej dyskusji w firmie wysunalem
taka hipoteze i naet chcialem na poczatku stworzyc tablice przez
zeros(n,m), ale poniewaz gremialnie stwierdzilismy, ze to chyba
niemozliwe by tak sie Octave zachowywal, wiec skonczylo sie na niczym.
--
Pozdrowienia, Marcin E. Hamerla
"Every day I make the world a little bit worse."
-
6. Data: 2009-06-10 20:50:50
Temat: Re: Octave
Od: Waldemar Krzok <w...@z...fu-berlin.de>
Marcin E. Hamerla wrote:
> Mirek napisal(a):
>
>>Tak naprawdę przypuszczam, że masz problem wynikający z dynamicznego
>>rozszerzania tablic. Właśnie niedawno na liście dyskusyjnej octave
>>stwierdzono, że algorytm jest o złożoności kwadratowej :(
>>
>>Jedyne jak na razie (zanim poprawią) rozwiązanie, to prealokacja
>>tablicy do finalnego lub nadmiarowego rozmiaru.
>
> Ok, to jest to.
> Najciekawsze jest to, ze podczas porannej dyskusji w firmie wysunalem
> taka hipoteze i naet chcialem na poczatku stworzyc tablice przez
> zeros(n,m), ale poniewaz gremialnie stwierdzilismy, ze to chyba
> niemozliwe by tak sie Octave zachowywal, wiec skonczylo sie na niczym.
Matlab daje warning jak tego nie robisz i pisze, ze bedzie dzialac wolniej.
Waldek
-
7. Data: 2009-06-10 23:53:57
Temat: Re: Octave
Od: Marcin E. Hamerla <X...@X...Xonet.Xpl.removeX>
Waldemar Krzok napisal(a):
>>>Jedyne jak na razie (zanim poprawią) rozwiązanie, to prealokacja
>>>tablicy do finalnego lub nadmiarowego rozmiaru.
>>
>> Ok, to jest to.
>> Najciekawsze jest to, ze podczas porannej dyskusji w firmie wysunalem
>> taka hipoteze i naet chcialem na poczatku stworzyc tablice przez
>> zeros(n,m), ale poniewaz gremialnie stwierdzilismy, ze to chyba
>> niemozliwe by tak sie Octave zachowywal, wiec skonczylo sie na niczym.
>
>Matlab daje warning jak tego nie robisz i pisze, ze bedzie dzialac wolniej.
My jedziemy niskim kosztem: Open Office, Octave, itd.
--
Pozdrowienia, Marcin E. Hamerla
"Every day I make the world a little bit worse."