-
X-Received: by 10.31.140.138 with SMTP id o132mr157788vkd.8.1522057926509; Mon, 26
Mar 2018 02:52:06 -0700 (PDT)
X-Received: by 10.31.140.138 with SMTP id o132mr157788vkd.8.1522057926509; Mon, 26
Mar 2018 02:52:06 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.
iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!k53no66
1778qtc.1!news-out.google.com!c39ni1276qta.0!nntp.google.com!k53no661775qtc.1!p
ostnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Mon, 26 Mar 2018 02:52:06 -0700 (PDT)
In-Reply-To: <p8ru9l$6qi$1@node2.news.atman.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=194.9.244.48;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 194.9.244.48
References: <p8ru9l$6qi$1@node2.news.atman.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6...@g...com>
Subject: Re: Szybkośc przelaczenia threadu przy rurce
From: Maciej Sobczak <s...@g...com>
Injection-Date: Mon, 26 Mar 2018 09:52:06 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 52
Xref: news-archive.icm.edu.pl pl.comp.programming:212375
[ ukryj nagłówki ]> Jak szybko T2 zostanie wznowiony? Sa to dwa pytania: jak szybko
> informacja w rurze wyleci na zewnatrz i jak szybko wątek T2 ruszy.
To jest jedno pytanie, bo pierwsze nie ma sensu w oderwaniu od drugiego.
> Pytanie jest z gatunku ogolnych ponieważ chce wiedziec jak szybko moge
> się spodziewać wznowienia we współczesnych systemach operacyjnych. Tu i
> tam pobąkują że np. Windows jets w stanie przełaczyć kilkaset razy na
> sekunde kontekst wątku.
Etam. Dwa procesy komunikujące się na tym samym pececie przez lokalne TCP są w stanie
przesłać 10000 komunikatów na sekundę właśnie w ten sposób (nie ma powodu, żeby
lokalne TCP było szybsze, niż rura). Po drodze dzieje się mnóstwo innych rzeczy, niż
samo pisanie i czytanie, więc da się to odchudzić i jeszcze przyśpieszyć.
Bardzo łatwo jest to zmierzyć, napisz pętlę i weź do ręki zegarek.
> Tylko że to dotyczy chyba ich ciaglej pracy. A u
> mnie t1 wsadził do rurki i, jesli moje urojenia są prawdziwe, T2
> powinien zostać wznowiony natychmiast (np. na drugim core). Chciałbym
> wiedziec jak oszacować to "natychmiast".
Nie ma czegoś takiego jak "natychmiast", jeśli coś jest gdzieś indziej.
Natomiast możesz rozważyć dwa przypadki:
1. T1 pisze, T2 czyta i tak w kółko
2. T1 pisze, T2 czyta, T2 pisze, T1 czyta, i tak w kółko
Różnica jest taka, że jeśli T1 tylko pisze, to może napisać dwa komunikaty zanim T2
odczyta pierwszy. To nie jest problemem jeśli T2 rozróżnia granice między
komunikatami, ale może spowodować, że T2 obudzi się tylko raz i za jednym odczytem
pobierze wszystkie dostępne dane (czyli dwa komunikaty). To zakłóci pomiar, bo ilość
komunikatów nie będzie równa ilości wybudzeń.
Drugi scenariusz (ping-pong) zapewnia, że komunikaty są pisane i czytane pojedynczo.
Pierwszy scenariusz może być szybszy w sensie throughput, co zwykle jest korzystne.
> Opcja ekspercka: a co jeśli T1 jest w procesie A a T2 w procesie B?
Też trzeba zmierzyć.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 31.03.18 13:16 Sebastian Biały
- 31.03.18 13:18 Sebastian Biały
- 31.03.18 13:19 Sebastian Biały
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-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO