-
1. Data: 2009-07-04 15:22:48
Temat: liczby dużej (nie dowolnej) precyzji
Od: "Mariusz Marszałkowski" <b...@g...SKASUJ-TO.pl>
Witam
Pierwsze pytanie: Jak sądzicie, jaka jest różnica w wydajności pomiędzy
biblioteką liczb dowolnej precyzji, a biblioteką liczb dużej precyzji. Np.
w bibliotece dowolnej precyzji ustalamy dokładność na 40 liczb znaczących
(w systemie dziesiątkowym), a bibliotekę liczb dużej precyzji implementujemy
tylko i wyłącznie do obsługi liczb 40 cyfrowych. Jeśli biblioteka ma obsługiwać
tylko i wyłącznie jedną precyzję, to wydaje się że może być znacznie
wydajniejsza. No i właśnie jak sądzicie, czy taka implementacja może być
dużo wydajniejsza?
Drugie pytanie: czy są dostępne biblioteki do obsługi typu zmiennoprzecinkowego
o rozmiarze np. 30-60 cyfr znaczących?
Pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
2. Data: 2009-07-04 15:36:49
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: A.L. <a...@a...com>
On Sat, 4 Jul 2009 15:22:48 +0000 (UTC), "Mariusz Marszałkowski"
<b...@g...SKASUJ-TO.pl> wrote:
>Witam
>
>Pierwsze pytanie: Jak sądzicie, jaka jest różnica w wydajności pomiędzy
>biblioteką liczb dowolnej precyzji, a biblioteką liczb dużej precyzji. Np.
>w bibliotece dowolnej precyzji ustalamy dokładność na 40 liczb znaczących
>(w systemie dziesiątkowym), a bibliotekę liczb dużej precyzji implementujemy
>tylko i wyłącznie do obsługi liczb 40 cyfrowych. Jeśli biblioteka ma obsługiwać
>tylko i wyłącznie jedną precyzję, to wydaje się że może być znacznie
>wydajniejsza.
Tak.
Program ktory obsluguje macierze 5 na 5 jest, jak wiadomo, znacznie
wydajniejszy od programu ktory obsluguje macierze N na N
A.L.
-
3. Data: 2009-07-04 16:05:26
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: "Mariusz Marszałkowski" <b...@W...gazeta.pl>
A.L. <a...@a...com> napisał(a):
> On Sat, 4 Jul 2009 15:22:48 +0000 (UTC), "Mariusz Marszałkowski"
> <b...@g...SKASUJ-TO.pl> wrote:
>
> >Witam
> >
> >Pierwsze pytanie: Jak sądzicie, jaka jest różnica w wydajności pomiędzy
> >biblioteką liczb dowolnej precyzji, a biblioteką liczb dużej precyzji. Np.
> >w bibliotece dowolnej precyzji ustalamy dokładność na 40 liczb znaczących
> >(w systemie dziesiątkowym), a bibliotekę liczb dużej precyzji implementujemy
> >tylko i wyłącznie do obsługi liczb 40 cyfrowych. Jeśli biblioteka ma obsługiwa
> ć
> >tylko i wyłącznie jedną precyzję, to wydaje się że może być znacznie
> >wydajniejsza.
>
> Tak.
>
> Program ktory obsluguje macierze 5 na 5 jest, jak wiadomo, znacznie
> wydajniejszy od programu ktory obsluguje macierze N na N
>
Jest ktoś w stanie oszacować co oznacza owe "znacznie"? Np. trzeba pomnożyć
macierze. Raz elementem macierzy są liczby dowolnej precyzji z ograniczeniem
do około 40 cyfr znaczących, a drugi raz specjalna implementacja liczb tylko
i wyłącznie do precyzji 40 cyrf. Zysk czasu będzie dwukrotny, dziesięciokrotny?
Pozdrawiam
Dziękuję
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
4. Data: 2009-07-04 16:17:20
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: A.L. <a...@a...com>
On Sat, 4 Jul 2009 16:05:26 +0000 (UTC), "Mariusz Marszałkowski"
<b...@W...gazeta.pl> wrote:
>A.L. <a...@a...com> napisał(a):
>
>> On Sat, 4 Jul 2009 15:22:48 +0000 (UTC), "Mariusz Marszałkowski"
>> <b...@g...SKASUJ-TO.pl> wrote:
>>
>> >Witam
>> >
>> >Pierwsze pytanie: Jak sądzicie, jaka jest różnica w wydajności pomiędzy
>> >biblioteką liczb dowolnej precyzji, a biblioteką liczb dużej precyzji. Np.
>> >w bibliotece dowolnej precyzji ustalamy dokładność na 40 liczb znaczących
>> >(w systemie dziesiątkowym), a bibliotekę liczb dużej precyzji implementujemy
>> >tylko i wyłącznie do obsługi liczb 40 cyfrowych. Jeśli biblioteka ma obsługiwa
>> ć
>> >tylko i wyłącznie jedną precyzję, to wydaje się że może być znacznie
>> >wydajniejsza.
>>
>> Tak.
>>
>> Program ktory obsluguje macierze 5 na 5 jest, jak wiadomo, znacznie
>> wydajniejszy od programu ktory obsluguje macierze N na N
>>
>
>Jest ktoś w stanie oszacować co oznacza owe "znacznie"? Np. trzeba pomnożyć
>macierze. Raz elementem macierzy są liczby dowolnej precyzji z ograniczeniem
>do około 40 cyfr znaczących, a drugi raz specjalna implementacja liczb tylko
>i wyłącznie do precyzji 40 cyrf. Zysk czasu będzie dwukrotny, dziesięciokrotny?
Czy Kilega naprzwde uwierzyl ze program z macierzami 5 na 5 zajmie
mniej czasu niz program z maczierzami N na N?
Reprezentacja liczb nei zmieni sie - czy to bedzie 10 cyfr czy 100, w
zaiwazku z tym wydajnosc programu nie ma nic wspolnego z
ograniczeniami a'priori.
Poza tym, nei ma zadnej "specjalnej reprezentacji licb do 40 cyfr"
A.L.
-
5. Data: 2009-07-04 16:34:04
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: Roman Werpachowski <"r o m a nNOSPAM"@student.ifpan.edu.pl>
On the Sat, 04 Jul 2009 11:17:20 -0500, A.L wrote:
> On Sat, 4 Jul 2009 16:05:26 +0000 (UTC), "Mariusz Marszałkowski"
><b...@W...gazeta.pl> wrote:
>
>>A.L. <a...@a...com> napisał(a):
>>
>>> On Sat, 4 Jul 2009 15:22:48 +0000 (UTC), "Mariusz Marszałkowski"
>>> <b...@g...SKASUJ-TO.pl> wrote:
>>>
>>> >Witam
>>> >
>>> >Pierwsze pytanie: Jak sądzicie, jaka jest różnica w wydajności pomiędzy
>>> >biblioteką liczb dowolnej precyzji, a biblioteką liczb dużej precyzji. Np.
>>> >w bibliotece dowolnej precyzji ustalamy dokładność na 40 liczb znaczących
>>> >(w systemie dziesiątkowym), a bibliotekę liczb dużej precyzji implementujemy
>>> >tylko i wyłącznie do obsługi liczb 40 cyfrowych. Jeśli biblioteka ma obsługiwa
>>> ć
>>> >tylko i wyłącznie jedną precyzję, to wydaje się że może być znacznie
>>> >wydajniejsza.
>>>
>>> Tak.
>>>
>>> Program ktory obsluguje macierze 5 na 5 jest, jak wiadomo, znacznie
>>> wydajniejszy od programu ktory obsluguje macierze N na N
>>>
>>
>>Jest ktoś w stanie oszacować co oznacza owe "znacznie"? Np. trzeba pomnożyć
>>macierze. Raz elementem macierzy są liczby dowolnej precyzji z ograniczeniem
>>do około 40 cyfr znaczących, a drugi raz specjalna implementacja liczb tylko
>>i wyłącznie do precyzji 40 cyrf. Zysk czasu będzie dwukrotny, dziesięciokrotny?
>
> Czy Kilega naprzwde uwierzyl ze program z macierzami 5 na 5 zajmie
> mniej czasu niz program z maczierzami N na N?
>
> Reprezentacja liczb nei zmieni sie - czy to bedzie 10 cyfr czy 100, w
> zaiwazku z tym wydajnosc programu nie ma nic wspolnego z
> ograniczeniami a'priori.
Kod ktory moze zalozyc ze macierz jest 5x5 moze zostac bardziej
zoptymalizowany niz kod, ktory musi obslugiwac macierz dowolnych rozmiarow.
Na tym polega sila takich bibliotek jak http://tvmet.sourceforge.net/
RW
-
6. Data: 2009-07-04 16:36:43
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: "Mariusz Marszałkowski" <b...@W...gazeta.pl>
> Czy Kilega naprzwde uwierzyl ze program z macierzami 5 na 5 zajmie
> mniej czasu niz program z maczierzami N na N?
Zależy. W czasach Pentium 100MHz i starszych kompilatorów dokładnie
tak było. Ręczne rozwinięcie pętli przyspieszało program liniowo
nawet 3 razy. Szczególnie gdy to były macierze małe, np. 4x4 do grafiki 3D.
Dziś nie zauważam szczególnej różnicy. Nie wiem czy kompilator lepiej
optymalizuje, czy procesor lepiej wykonuje kod.
> Reprezentacja liczb nei zmieni sie - czy to bedzie 10 cyfr czy 100, w
> zaiwazku z tym wydajnosc programu nie ma nic wspolnego z
> ograniczeniami a'priori.
> Poza tym, nei ma zadnej "specjalnej reprezentacji licb do 40 cyfr"
Hmmm... Nie chodzi o reprezentację która zmniejszy złożoność obliczeniową.
Raczej chodzi o tzw wyuzdanie kodu które przyspieszy liniowo. Jeśli np. od
góry wiadomo że liczba zmiennoprzecinkowa ma zajmować dokładnie 24 bajty, to
można użyć trochę innych technik, niż gdy liczba ma zajmować od 8 do 1000
bajtów.
Kompletnie nie wiem czy były próby takiego przyspieszenia i czy zysk jest
rzędu 10% czy 1000%. Jeśli jest mniejszy niż 200% to nie ma sensu się
tym interesować.
Pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
7. Data: 2009-07-04 16:39:56
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: Roman Werpachowski <"r o m a nNOSPAM"@student.ifpan.edu.pl>
On the Sat, 4 Jul 2009 16:36:43 +0000 (UTC), Mariusz Marszałkowski wrote:
>> Czy Kilega naprzwde uwierzyl ze program z macierzami 5 na 5 zajmie
>> mniej czasu niz program z maczierzami N na N?
>
> Zależy. W czasach Pentium 100MHz i starszych kompilatorów dokładnie
> tak było. Ręczne rozwinięcie pętli przyspieszało program liniowo
> nawet 3 razy. Szczególnie gdy to były macierze małe, np. 4x4 do grafiki 3D.
> Dziś nie zauważam szczególnej różnicy. Nie wiem czy kompilator lepiej
> optymalizuje, czy procesor lepiej wykonuje kod.
Ja w trakcie optymalizacji kodu numerycznego w Javie osiagalem niezle
przyspieszenia rozwijajac petle. Ogolnie rzecz biorac masz racje, efekty
takiej optymalizacji sa trudne do przewidzenia, trzeba zawsze mierzyc czas
wykonania tego kawalka kodu (JProfiler rzadzi :)).
> Kompletnie nie wiem czy były próby takiego przyspieszenia i czy zysk jest
> rzędu 10% czy 1000%. Jeśli jest mniejszy niż 200% to nie ma sensu się
> tym interesować.
Zalezy od sytuacji.
RW
-
8. Data: 2009-07-04 16:50:10
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: A.L. <a...@a...com>
On Sat, 4 Jul 2009 16:34:04 +0000 (UTC), Roman Werpachowski <"r o m a
nNOSPAM"@student.ifpan.edu.pl> wrote:
>
>Kod ktory moze zalozyc ze macierz jest 5x5 moze zostac bardziej
>zoptymalizowany niz kod, ktory musi obslugiwac macierz dowolnych rozmiarow.
>Na tym polega sila takich bibliotek jak http://tvmet.sourceforge.net/
Ze mozna rozwinac petle? Mozna
A.L.
-
9. Data: 2009-07-04 16:56:46
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: "Mariusz Marszałkowski" <b...@W...gazeta.pl>
> > Kompletnie nie wiem czy były próby takiego przyspieszenia i czy zysk jest
> > rzędu 10% czy 1000%. Jeśli jest mniejszy niż 200% to nie ma sensu się
> > tym interesować.
>
> Zalezy od sytuacji.
>
Np. taka sytuacja jak opisałem: Mnożymy duże macierze. Raz elementem jest
liczba o dowolnej precyzji a drugi raz wyspecjalizowana o stałej precyzji.
Oczywiście ta liczba o dowolnej precyzji jest tak ograniczona, że obie liczby
mają podobną dokładność, np. 40-60 cyfr w systemie dziesiątkowym.
Pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
10. Data: 2009-07-04 16:56:52
Temat: Re: liczby dużej (nie dowolnej) precyzji
Od: Roman Werpachowski <"r o m a nNOSPAM"@student.ifpan.edu.pl>
On the Sat, 04 Jul 2009 11:50:10 -0500, A.L wrote:
> On Sat, 4 Jul 2009 16:34:04 +0000 (UTC), Roman Werpachowski <"r o m a
> nNOSPAM"@student.ifpan.edu.pl> wrote:
>
>>
>>Kod ktory moze zalozyc ze macierz jest 5x5 moze zostac bardziej
>>zoptymalizowany niz kod, ktory musi obslugiwac macierz dowolnych rozmiarow.
>>Na tym polega sila takich bibliotek jak http://tvmet.sourceforge.net/
>
> Ze mozna rozwinac petle? Mozna
Chociazby.
RW