Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #34308
| Newsgroups | pl.comp.programming |
|---|---|
| Date | 2021-01-06 07:38 -0800 |
| References | (3 earlier) <rt4f0b$t0t$1@dont-email.me> <28d25254-32ea-483d-87e9-e7e584453c8en@googlegroups.com> <1f0fc527-0a76-444d-9d8b-b54891da2020n@googlegroups.com> <rt4jma$1j5$1@dont-email.me> <47e4ef57-8104-4fe5-8d06-e03c66428bcfn@googlegroups.com> |
| Message-ID | <c75e38fd-cdcf-4105-bbd5-8b257360474en@googlegroups.com> (permalink) |
| Subject | Re: zapytanie o thready |
| From | fir <profesor.fir@gmail.com> |
środa, 6 stycznia 2021 o 16:29:44 UTC+1 fir napisał(a):
> środa, 6 stycznia 2021 o 16:06:52 UTC+1 heby napisał(a):
> > On 06/01/2021 15:41, fir wrote:
> > > ze mozna synchronizowac watki nawet bez atomikow
> > W ogómym przypadku to nie jest skuteczne. W przypadku architektury x86
> > może być czasem możliwe.
> >
> > W bardzo ogólnym wypadku wymagany jest choć fence, który trzeba jawnie
> > uzyć w kodzie programu. Taki mechanizm w CPU który zapewnia
> > synchronizację dostępu do pamięci między różnymi rdzeniami i cache.
> >
> > Tak więc ogólnie rzecz biorąc nie da się zrobić sensownej synchronizacji
> > tylko na spilockach bo to zależy na czym to ma pracować. Zwyczajowo w
> > świecie wielordzeniowym trzeba się badziej postarać niż while(!flag) { }.
> while z pust apetla bym nei uzyl ale ze sleepem 2-3 milisekundy nie wydaje mi sie juz tak glupie..ogolne programowanie tez mnie nie kreci bo ogolne programowanie to zle porogramowanie bo w ogolnosci nie dziala optymalnie na specyficznych maszynach ;c
>
> schemat btw raczej jaki wymodzilem byl raczej taki
>
> int ready = 0;
> do
> {
> while(current<ready) { sleep(2); }
> do_work();
> ready++;
> } whie(1);
>
> cos w tym stylu, robota dzielona na porcje numerowane liczba naturalna, current zaczyna sie od -1,
> boczne watki czekaja na sleepach; glowny thread robi current++ do 0 wati ruszaja az ustawia ready na 1
> glowny watek sprawdza czy wszystkie maja ready wieksze niz current jesli tak popycha current itd
>
> w moim przekonaniu to raczej chyba powinno dzialac
przez powinno mam na mysli ze odpalilem to i dzialalo (ale nie ejestem pewien czy nei przegapilem jakichs wzglednych subtelnosci), current to oczywoscie odpowiada numerowi ramki obrazu w symulacji ktora dzialac ma na okolo 50-120 fps na jednym watku zajmowala ok 30 ms na ramke wiec w optymalnym podziale roboty powinno wyjsc po 15 ms na rdzen na dwurdzeniaku... nie mierzylem czasu tylko patrzylem na oko czy jest szybciej i wylogowalem tez stany tych ready i current do loga textowego i na oko wygladalo ok
aczkolwiek zawsze jak ktos wie co tu sie moze realnie chcrzaic to wiedza o detalach mile widziana
(fir)
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar
zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 03:54 -0800
Re: zapytanie o thready heby <heby@poczta.onet.pl> - 2021-01-06 14:31 +0100
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 05:40 -0800
Re: zapytanie o thready heby <heby@poczta.onet.pl> - 2021-01-06 14:46 +0100
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 06:29 -0800
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 06:41 -0800
Re: zapytanie o thready heby <heby@poczta.onet.pl> - 2021-01-06 16:06 +0100
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 07:29 -0800
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 07:38 -0800
Re: zapytanie o thready "M.M." <mmarszik@gmail.com> - 2021-02-07 03:53 -0800
Re: zapytanie o thready heby <heby@poczta.onet.pl> - 2021-01-06 16:03 +0100
Re: zapytanie o thready fir <profesor.fir@gmail.com> - 2021-01-06 05:46 -0800
csiph-web