Article View: pl.comp.lang.delphi
Article #345603Re: Wątki
From: Sebastian Biały
Date: Fri, 24 Feb 2017 19:29
Date: Fri, 24 Feb 2017 19:29
35 lines
2898 bytes
2898 bytes
On 2017-02-24 19:46, stchebel@gmail.com wrote: > 1) Co nam dają na czasie te 2 maszyny działające podobno równolegle? > Załóżmy, że cała tablica a[1..N] jest zapamiętana w obrębie jednej kostki > (i faktycznie z reguły tak jest) Niekoniecznie. Nie można, albo przynajmniej nie powinno się zakładać czegokolwiek o organizacji pamięci na tym poziomie. >, więc nie ma fizycznej możliwości jednoczesnego odwołania się do adresu np. 1 i (N/2+1). I zazwyczaj nie bedzie. Poza tym że CPU musi pobrać dane z pamięci to musi również je obrobić lokalnie (dodać). W tym momencie szyna jest wolna dla drugiego. Z grubsza jesli wiele rdzeni operuje na pamięci to są "magicznie" rozkładane pomiędzy nie cykle dostepu. Poza tym zakłada się że wiele danych leży w cache gdzie reguły dostepu mogą byc inne niż blokowanie się rdzeni. Inaczej będzie to w Core2Duo a inaczej w NUMA a inaczej we współczesnym i7. Trzeba też uwzględnić ze potokowość może miec pojęcie o innych potokach i np. przestawiać cykle dostepu do pamięci współpracując z innymi potokami. > 2) Czy na maszynie 1-no rdzeniowej da się uruchomić więcej niż 1 wątek? Jeżeli tak, to o co tu chodzi? Jest przerywany przez system. Wywłaszczanie. Ma to zalety, jesli wątek czeka na np. dane dysku to inny może coś liczyć w tym czasie. Implementacyjnie to przychodzi przerwanie z timera, system zamraża stan procesu wywalając dane ze stosu i rejestrów gdzieś do pamięci i odmraża inny wątek. Sprawa komplikuje się gdy mamy procesy a nie wątki, ale to raczej komplikacja związana z pamięcia wirtualną co sprawadza się do czasu przełączenia. Mała ilość rdzeni w CPU nie powoduje że wątki nie maja sensu - mają. > 3) Co polecacie z literatury sieciodostępnej celem zapoznania się z tym tematem? > Chodzi mi o jakieś praktyczne "etiudy" kilkuwątkowe. Czytaj o wywłaszaczaniu, preemptive multitasking.
Technical Details
Message-ID:
<o8q1j2$3jd$1@node2.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailReferences:
<770fa4f8-96e5-4b5e-8772-e87517a0eaa6@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Sebastian Biały <heby@poczta.onet.pl> Newsgroups: pl.comp.lang.delphi Subject: Re: Wątki Date: Fri, 24 Feb 2017 20:29:25 +0100 Organization: ATMAN - ATM S.A. Lines: 36 Message-ID: <o8q1j2$3jd$1@node2.news.atman.pl> References: <770fa4f8-96e5-4b5e-8772-e87517a0eaa6@googlegroups.com> NNTP-Posting-Host: 176.115.85.233 Mime-Version: 1.0 X-Trace: node2.news.atman.pl 1487964578 3693 176.115.85.233 (24 Feb 2017 19:29:38 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Fri, 24 Feb 2017 19:29:38 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 In-Reply-To: <770fa4f8-96e5-4b5e-8772-e87517a0eaa6@googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit