-
Data: 2015-04-02 10:56:13
Temat: Re: poprawność algorytmu
Od: g...@g...com szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu czwartek, 2 kwietnia 2015 08:14:46 UTC+2 użytkownik M.M. napisał:
> > > > 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.
Raczej miałem na myśli ton, w jakim zadałem powyższe pytanie.
Strasznie mnie smuci to, że dyskusje na tej grupie są często
mało merytoryczne i sprowadzają się do udowadniania sobie
nawzajem, kto jest mądrzejszy, albo do obrażania siebie nawzajem.
> 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.
Szczerze mówiąc to co piszesz jest dla mnie zaskakujące.
Tzn. dla mnie słowo "precyzja" do tej pory miało zawsze
to samo znaczenie, niezależnie od kontekstu. Mógłbyś
spróbować jakoś wyeksplikować te różne znaczenia tego
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.
W podaniu linku do literatury oczywiście nie ma,
ale jest coś niedobrego w podchodzeniu do dyskusji
w kategoriach tego, kto ma rację, a nie tego, jak
się rzeczy mają. (W każdym razie mam wrażenie, że
na tej grupie roi się od osób, które czują się na
tyle wielkie, że niczym wyrocznia w Delfach są
zwolnione z konieczności uzasadniania swoich stwierdzeń)
> > To jest trochę (bardzo?) OT,
> Nie jest OT, rozmawiamy od dowodzeniu poprawności równoległego programu.
Tak, ale temat programowania współbieżnego jest dość przepastny.
W każdym razie bardzo daleki od tego, o co pytał OP (jednak trzeba
przyznać, że nie udzielił dostatecznie dużo informacji, żeby móc
uzyskać sensowną pomoc)
Przy okazji -- Twój dowód, że nie ma deadlocka, jest niepoprawny
również z innego względu, mianowicie takiego, że istnieją programy,
w których nie używa się semaforów, a w których mimo to nie występują
deadlocki. W ramach ciekawostki dopowiem, że Bell Labs stworzyło
język Promela i system SPIN do weryfikacji, czy w programie może
dojść do zakleszczeń (dowody w tym systemie nie mają jednak natury
syntaktycznej, tylko opierają się o konstruowanie modeli. W każdym
razie w tym systemie używa się własnie jednej z odmian logiki
temporalnej do formułowania twierdzeń o stanach systemu)
Być może Twoje twierdzenie rzeczywiście dałoby się uogólnić,
generalizując pojęcie semaforu, i w rezultacie uzyskać system
dowodzący, że w programie nie dojdzie nigdy do dead-locku,
jednak nie jestem pewien, czy ów dowód (albo system) byłby
z technicznego punktu widzenia nietrywialny
> > 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.
Tak, to jest dobry przykład, ale trzeba by było jeszcze dopowiedzieć,
że owe wątki zapisują również dane do pamięci, bo dopiero wtedy zajdzie
potrzeba synchronizacji
Następne wpisy z tego wątku
- 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
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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
Najnowsze wątki
- 2025-01-23 5G Apokalipsa - nie tylko dla tutejszych przeżuwaczy podpiczników
- 2025-01-23 wodor
- 2025-01-23 Zawór grzybkowy - jaki producent
- 2025-01-23 Warszawa => Expert IT Recruiter 360 <=
- 2025-01-23 Warszawa => Key Account Manager IT <=
- 2025-01-23 Citi Handlowy promocja na kartę kredytową
- 2025-01-22 Gdańsk => System Architect (Java background) <=
- 2025-01-22 Katowice => Senior Field Sales (system ERP) <=
- 2025-01-22 Warszawa => Java Developer <=
- 2025-01-22 pokolenie Z
- 2025-01-22 Wyświtlacz ramki cyfrowej
- 2025-01-22 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-01-22 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2025-01-22 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-01-22 oferta na ubezpieczenie OC życie prywatne