-
X-Received: by 10.140.91.47 with SMTP id y44mr144214qgd.39.1427955285053; Wed, 01 Apr
2015 23:14:45 -0700 (PDT)
X-Received: by 10.140.91.47 with SMTP id y44mr144214qgd.39.1427955285053; Wed, 01 Apr
2015 23:14:45 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
border1.nntp.dca1.giganews.com!nntp.giganews.com!m20no42178iga.0!news-out.googl
e.com!k20ni0qgd.0!nntp.google.com!z60no225907qgd.0!postnews.google.com!glegroup
sg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 1 Apr 2015 23:14:44 -0700 (PDT)
In-Reply-To: <9...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=178.36.122.220;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 178.36.122.220
References: <4...@g...com>
<d...@g...com>
<meti4e$osd$1@srv.chmurka.net>
<f...@g...com>
<mevfpd$gpa$1@srv.chmurka.net>
<e...@g...com>
<mf1tnf$d48$1@srv.chmurka.net>
<d...@g...com>
<e...@g...com>
<f...@g...com>
<b...@g...com>
<4...@g...com>
<f...@g...com>
<8...@g...com>
<b...@g...com>
<c...@g...com>
<2...@g...com>
<b...@g...com>
<6...@g...com>
<b...@g...com>
<7...@g...com>
<9...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b...@g...com>
Subject: Re: poprawność algorytmu
From: "M.M." <m...@g...com>
Injection-Date: Thu, 02 Apr 2015 06:14:45 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Lines: 62
Xref: news-archive.icm.edu.pl pl.comp.programming:207771
[ ukryj nagłówki ]On Wednesday, April 1, 2015 at 5:10:22 PM UTC+2, g...@g...com wrote:
> W dniu środa, 1 kwietnia 2015 15:31:27 UTC+2 użytkownik g...@g...com
napisał:
> > > > Jeśli Cię to bardziej interesuje, polecam kurs z "Heterogenous Parallel
> > > > Programming" na Courserze albo książkę "CUDA w przykładach" (wyd. Helion)
> > > Nie mam aż tyle czasu, myślalem że rzucisz kilka zalet.
> >
> > Zalet synchronizacji wątków przed dostępem do pamięci?
>
> Tak sobie myślę, że chyba niezbyt ładnie się zachowałem,
Podając linki do literatury? To akurat bardzo w porządku. Mnie
się nie chciało już tłumaczyć, że słowo "precyzja" zmienia
znaczenie zależnie od kontekstu. Nie chce mi się precyzyjnie
tłumaczyć za każdym razem jak używam każdego słowa.
> pisząc to, co napisałem powyżej, bo mogłoby to zostać
> odebrane jako pogardliwe, a nie chciałbym, żeby tak było.
> Przepraszam. (Z żalem przyznam, że to chyba "dyskusje"
> z niektórymi osobami na tej grupie tak mnie zdegenerowały,
> choć oczywiście nie ma się co obwiniać, a trzeba pracować
> nad tym, żeby było lepiej)
Nie ma nic pogardliwego w podaniu linku do literatury.
> To jest trochę (bardzo?) OT,
Nie jest OT, rozmawiamy od dowodzeniu poprawności równoległego programu.
> ale nowoczesne procesory graficzne
> pozwalają tworzyć programy zawierające tysiące wątków
Rzecz jasna.
> (z których docelowo może nawet wszystkie będą się mogły
> wykonywać równolegle). Klasyczny przykład to dodawanie
> wektorów: zamiast wykonywać pętlę dodającą po kolei
> tysiąc par elementów, możemy uruchomić tysiąc wątków, z których
> każdy doda po jednej parze elementów.
Choć nie programuję procesorów graficznych, to tak to sobie
wyobrażałem.
> Oczywiście przykład z dodawaniem wektorów nie jest szczególnie
> porywający, zaś kolizje z dostępem do pamięci w tak prostym
> przypadku nie zachodzą.
Trochę szkoda, że podałeś przykład, w którym syncthreads się
nie przyda.
> Gorzej jeżeli mamy kilka etapów obliczeń: może być tak, że
> fragment pamięci, do którego zapis wykona kilka wątków
> na jednym etapie, będzie potem użyty do obliczeń na innym
> etapie. Żeby jednak mogło się tak stać, musimy się upewnić,
> że wszystkie wątki skończyły już zapis -- i do tego właśnie
> używa się __syncthreads()
Ja bym to inaczej uzasadnił, choć nigdy nie używałem takiej metody.
Mamy np. trzy wątki. W pierwszym etapie watek pierwszy dostaje dane spod
adresów 0,1,2, drugi spod: 3,4,5, trzeci spod: 6,7,8. W drugim etapie
wątek pierwszy dostaje dane 0,3,6; drugi 1,4,7; w trzecim 2,5,8.
Wtedy istotnie muszą wszystkie wątki czekać pomiędzy etapami.
Pozdrawiam
Następne wpisy z tego wątku
- 02.04.15 10:56 g...@g...com
- 02.04.15 12:54 M.M.
- 02.04.15 14:13 g...@g...com
- 02.04.15 17:20 M.M.
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-19 Kamerka sam. na tył
- 2024-12-20 Jak być bezpiecznym z Li-Ion?
- 2024-12-19 Fujitsu LIFEBOOK E746
- 2024-12-19 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2024-12-19 Warszawa => Junior Account Manager <=
- 2024-12-19 Katowice => Administrator IT - Operating Systems and Virtualization <=
- 2024-12-19 Warszawa => Developer .NET (mid) <=
- 2024-12-19 Wrocław => Business Development Manager - Network and Network Securit
- 2024-12-19 Katowice => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-12-19 Olsztyn => Sales Specialist <=
- 2024-12-19 Żerniki => Specjalista ds. Employer Brandingu <=
- 2024-12-19 policja pomaga
- 2024-12-19 Kolejny biegły
- 2024-12-19 Taka ciekawostka skrzyżowaniowa
- 2024-12-19 koniki obsiadły kolejki i numerki