-
X-Received: by 10.49.109.41 with SMTP id hp9mr989216qeb.35.1366275858765; Thu, 18 Apr
2013 02:04:18 -0700 (PDT)
X-Received: by 10.49.109.41 with SMTP id hp9mr989216qeb.35.1366275858765; Thu, 18 Apr
2013 02:04:18 -0700 (PDT)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin1!goblin.stu.neva.ru!19no101343601wie.1!news-out.google.com!hg5n
i16271wib.1!nntp.google.com!gp5no228248qab.0!postnews.google.com!glegroupsg2000
goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Thu, 18 Apr 2013 02:04:18 -0700 (PDT)
In-Reply-To: <1...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.195.164.27;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 213.195.164.27
References: <kkdqot$5rl$1@node2.news.atman.pl> <kkdtr5$9n9$1@node1.news.atman.pl>
<2...@g...com>
<kkec03$n4h$1@node2.news.atman.pl>
<a...@g...com>
<kkfd89$o9b$1@news.task.gda.pl>
<0...@g...com>
<kkh42k$81t$1@news.task.gda.pl>
<b...@g...com>
<kkhr56$a62$1@news.task.gda.pl>
<3...@g...com>
<kkkjpe$b54$1@news.task.gda.pl>
<8...@g...com>
<4...@g...com>
<c...@g...com>
<kkmvfc$hu3$2@news.task.gda.pl>
<d...@g...com>
<d...@g...com>
<9...@g...com>
<1...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5...@g...com>
Subject: Re: Podpis cyfrowy większej ilości podmiotów
From: "M.M." <m...@g...com>
Injection-Date: Thu, 18 Apr 2013 09:04:18 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:202642
[ ukryj nagłówki ]Zmieniłem zarządzanie wątkami, gdy się używa do wątków OpenMP
ma się praktycznie bez wysiłku kilka użytecznych opcji. Tak
więc po zastosowaniu dynamicznego przydziału zadań do wątków z
rozmiarem chunk=1 czas spadł do 14-15s.
Tu efekt:
https://thumbs.rapidshare.com/thumbs/1024/D0F/83731B
B65DA783F6EA92AB7576B7B.jpg
A tu kod rysujący/obliczający:
http://pastebin.com/rvsBJpir
On Thursday, April 18, 2013 10:42:37 AM UTC+2, firr kenobi wrote:
> jesli zrezygnowac z testu z kwadratem
> to tutaj ten kernel z trzema mnozeniami
> mozna zamianic na wersje tylko z dowma
> mnozeniami
> for(n=0; n<=max_iter; n++)
> {
> reim2 = (re + re) * im;
> re = (re - im) * (re + im) + cRe;
> im = reim2 + cIm;
> // if( fabs(re) > 2.0 ) break;
> // if( fabs(im) > 2.0 ) break;
> if( re > 2.0 || re < -2.0
> && im > 2.0 || im < -2.0 ) break;
> }
> to zauwazylem ze szkoly a*a - b*b = (a+b)*(a-b) u mnie w wersji c to akurat
> przyspiesza
U mnie czas wykonania poniższej wersji wzrósł z 14.22s do 14.61s:
static unsigned int computeColor( const double _x, const double _y, const unsigned
int inf ) {
double x=0, y=0;
unsigned int i;
for( i=0 ; i<inf ; i++ ) {
const double tmp = (x+x)*y;
x = (x-y)*(x+y)+_x;
y = tmp + _y;
if( std::fabs(y) > 2.0 || std::fabs(tmp) > 2.0 ) break;
}
if( i==inf )
return 0;
return i * 255 / (inf-1);
}
Kolejna wersja też minimalnie dłużej 14.55s:
static unsigned int computeColor( const double _x, const double _y, const unsigned
int inf ) { double x=0, y=0;
unsigned int i;
for( i=0 ; i<inf ; i++ ) {
const double tmp = x*x - y*y + _x;
y = 2.0 * x * y + _y;
if( tmp < -2 || tmp > +2 || y < -2 || y > +2 ) break;
x = tmp;
}
if( i==inf )
return 0;
return i * 255 / (inf-1);
}
> nie wiadomo jednak czy wersja z dwoma
> mul i czterema cmp (statystycznie szczesliwie mniej ) bylaby szybsza
> niz kernel z 3 mul i 1 cmp
> nalezaloby sprawdzic ale to musialbym
> znowu pogrzebac w asmie
Ja raczej nie napiszę w ASM, większość dawno temu zapomniałem :) Czy
mógłbyś podrzuć mi wersję tej procedury w asmie, tak żebym mógł ją
skompilować GCC64 bity? Czyli musiałby to być jakiś asembler osadzony.
Na razie u mnie najszybciej działa ta wersja:
static unsigned int computeColor( const double _x, const double _y, const unsigned
int inf ) {
double x=0, y=0;
unsigned int i;
for( i=0 ; i<inf ; i++ ) {
const double tmp = x*x - y*y + _x;
y = 2.0 * x * y + _y;
if( std::fabs(y) > 2.0 || std::fabs(tmp) > 2.0 ) break;
x = tmp;
}
if( i==inf )
return 0;
return i * 255 / (inf-1);
}
Z 61s udało się zejść do 14s, ale głównie przez zastosowanie OpenMP.
Pozdrawiam
Następne wpisy z tego wątku
- 18.04.13 11:12 firr kenobi
- 18.04.13 11:19 firr kenobi
- 18.04.13 11:24 firr kenobi
- 18.04.13 11:27 M.M.
- 18.04.13 11:47 firr kenobi
- 18.04.13 11:53 M.M.
- 18.04.13 11:55 M.M.
- 18.04.13 12:00 firr kenobi
- 18.04.13 12:05 firr kenobi
- 18.04.13 12:31 Edek
- 18.04.13 12:43 Edek
- 18.04.13 12:45 firr kenobi
- 18.04.13 13:13 Edek
- 18.04.13 13:17 firr kenobi
- 18.04.13 13:35 Edek
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-24 otwarcie drugiej obwodnicy Trójmiasta
- 2025-12-24 Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- 2025-12-23 Prezent dla kierowców od prezydenta Nawrockiego
- 2025-12-23 Warszawa => Asystent ds. Sprzedaży i Rozwoju Klienta <=
- 2025-12-23 Warszawa => Senior IT Recruitment Consultant <=
- 2025-12-22 czy wiedziałeś że?
- 2025-12-22 Unijne KOOOORWY mówią że WYCOFUJĄ się z zakazu rejestracji elektryków
- 2025-12-22 Białystok => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-22 Lublin => Project Manager <=
- 2025-12-22 Warszawa => Project Manager (AI and innovation) <=
- 2025-12-22 TVN oczekuje: Za Ziobrem BĘDZIE czerwona nota Interpolu! Czy może Interpol da drugi raz (w) dupę? ;-)
- 2025-12-21 Norweski przepis na pozbywanie się uchodźców odwiedzających kraj z którego "uciekli"
- 2025-12-21 UE bierze kredyt na 90GEUR, by przedłużyć wojnę na Ukrainie, w tym Polska 4-5%, czyli od 3,6 do 4,5GEUR
- 2025-12-21 Produkcja energii w elektrowniach atomowych
- 2025-12-20 No właśnie




7 pułapek i okazji - zobacz co cię czeka podczas kupna mieszkania na wynajem