-
X-Received: by 2002:ad4:4366:: with SMTP id u6mr2393442qvt.51.1612698786044; Sun, 07
Feb 2021 03:53:06 -0800 (PST)
X-Received: by 2002:ad4:4366:: with SMTP id u6mr2393442qvt.51.1612698786044; Sun, 07
Feb 2021 03:53:06 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2
.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnew
s.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sun, 7 Feb 2021 03:53:05 -0800 (PST)
In-Reply-To: <c...@g...com>
Complaints-To: g...@g...com
Injection-Info: google-groups.googlegroups.com; posting-host=77.254.35.244;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 77.254.35.244
References: <d...@g...com>
<rt4e4d$os9$1@dont-email.me>
<8...@g...com>
<rt4f0b$t0t$1@dont-email.me>
<2...@g...com>
<1...@g...com>
<rt4jma$1j5$1@dont-email.me>
<4...@g...com>
<c...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d...@g...com>
Subject: Re: zapytanie o thready
From: "M.M." <m...@g...com>
Injection-Date: Sun, 07 Feb 2021 11:53:06 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:215347
[ ukryj nagłówki ]On Wednesday, January 6, 2021 at 4:38:15 PM UTC+1, fir wrote:
> ś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)
A jakby użyć OpenCL?
Pozdrawiam
Najnowsze wątki z tej grupy
- 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
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-05-02 Silnik Stirlinga - energia mechaniczna wytwarzana z ciepła bez dostarczania paliwa!
- 2024-05-02 Kraków => Senior .Net Programmer <=
- 2024-05-02 Sprowadzenie pożaru zagrażającego mieniu w wielkich rozmiarch
- 2024-05-02 Zielona Góra => Spedytor międzynarodowy <=
- 2024-05-02 Katowice => Performance Analyst <=
- 2024-05-02 Gdańsk => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-05-02 Gdańsk => Business Development Manager - obszar bezpieczeństwa IT <=
- 2024-05-02 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-02 Katowice => Java Developer <=
- 2024-05-02 'Studenci do nauki!'
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Dlaczego energia elektryczna jest droga i cały czas drożeje
- 2024-05-02 Wrocław => Lider Serwisu/Programista PLC z językiem niemieckim <=
- 2024-05-02 Łódź => Senior DevOps Engineer <=