-
1. Data: 2011-12-29 10:00:13
Temat: mt - nazewnictwo
Od: " " <f...@g...SKASUJ-TO.pl>
kiedys troche sie zastanawialem nad mt (nawet
kilka razy) ale doszedlem tylko do czesciowych
wnioskow (
w kazdym razie na pewno mozna wyroznic dwa
przypadki: jesli odpali sie funkcje f() i g()
to
1) albo moga one dzialac na wogole rozlacznych
zbiorach danych
albo
2) na takich ktore sie przynajmniej w jakichs
obszarach pokrywaja (i wtedy trzeba jezeli nie
lockowac to przynajmniej oznaczac)
np jesli przecinek oznacza paralelne wykonania:
f(), g(); // na rozlacznych danych
f(), g(); // na potencjalnie kolizyjnych danych
- czy te dwa przypadki maja jakies nazwy?
(jak nie maja to mozna wymyslic i nazywac np
multithreading bezkolizyjny i multithreading kolizyjny
ale jesli jest jakas dobra nazwa to warto by wiedziec)
[jest cos takiego jak lock free ale to nie konicznie
musi znaczyc mt bezkolizyjny bo w kolizyjnym tez niekonicznie
trzeba zakladac locka tylko mozna 'oflagowac' dane i je
wymijac)
(warto by sie wogole zastanowic nad tym mt bezkolizyjnym,
byc moze duzo da sie zdzialac w ten sposob - a przynajmniej
przyblizonym praktycznym celem by bylo po prostu (dla
'intensywnych' aplikacji) spowodowac to by wszystkie procki
byly na 100% pograzone w robocie i by nie bylo wogole strat
na synchronizacji - kto wie moze po prostu daloby sie to
zrobic mt bezkolizyjnym a jak nie to warto by przyjrzec sie
dokladniej przypadkom w ktorym nie dalo by sie tak zrobic)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
2. Data: 2012-01-13 05:14:20
Temat: Re: mt - nazewnictwo
Od: " M.M." <m...@W...gazeta.pl>
<f...@g...SKASUJ-TO.pl> napisał(a):
> (warto by sie wogole zastanowic nad tym mt bezkolizyjnym,
> byc moze duzo da sie zdzialac w ten sposob - a przynajmniej
> przyblizonym praktycznym celem by bylo po prostu (dla
> 'intensywnych' aplikacji) spowodowac to by wszystkie procki
> byly na 100% pograzone w robocie i by nie bylo wogole strat
> na synchronizacji - kto wie moze po prostu daloby sie to
> zrobic mt bezkolizyjnym a jak nie to warto by przyjrzec sie
> dokladniej przypadkom w ktorym nie dalo by sie tak zrobic)
Sa rozne ciekawe techniki, nie tylko omijanie danych narazonych
na utrate spojnosci.
Bardzo ciekawa technike bezkolizyjnej hash-table do szachow (do
innych zastosowan tez da sie zaadoptowac) opisuje Robert Hatty.
Technika ta wykorzystuje prosty fakt, ze jesli jeden watek
w tym samym czasie pisze co drugi czyta, to ten drugi obliczy
inny hash-key (bo dane beda zepsute) i rozpozna problem bez
synchronizacji systemowej. Polecam:
http://www.cis.uab.edu/hyatt/hashing.html
Pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/