-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!newsfeed.fsmpi.
rwth-aachen.de!eternal-september.org!feeder.eternal-september.org!news.eternal-
september.org!.POSTED!not-for-mail
From: Jacek Radzikowski <j...@s...die>
Newsgroups: pl.misc.elektronika
Subject: Re: Procesory wielordzeniowe
Date: Sat, 04 Oct 2014 19:47:28 -0400
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <m0q0ug$m7k$1@dont-email.me>
References: <0...@g...com>
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8Bit
Injection-Date: Sat, 4 Oct 2014 23:47:28 +0000 (UTC)
Injection-Info: mx05.eternal-september.org;
posting-host="007cadd3682476d7b32c5c260172efba";
logging-data="22772";
mail-complaints-to="a...@e...org";
posting-account="U2FsdGVkX1/wSS2PYKj6yx9vkmG/sezMJTRRYdvh0N8="
User-Agent: KNode/4.11.5
Cancel-Lock: sha1:LoJoa+w8u/d/8EeepoGWVJeS5vU=
Xref: news-archive.icm.edu.pl pl.misc.elektronika:672006
[ ukryj nagłówki ]s...@g...com wrote:
> .. i do tego programowanie wielowątkowe. Ja tu czegoś nie rozumiem.
> Weźmy na przykład program do obliczenia sumy liczb od 1 do N. Ot, zwykły
> ciąg arytmetyczny S(N)=N*(N+1)/2. Zakładając, że wzoru nie znamy, zlecamy
[...]
> s:=s1+s2. A co jeżeli elementy ciągu A[m] i A[n] są zapisane fizycznie w
> tej samej kostce pamięci? Co w takiej sytuacji dają mi 2 rdzenie?
Jak już wspomniał Andrzej, w takim przypadku strona pamięci z danymi
zostanie przepisana do pamięci cache i problem jednoczesnego dostępu do
zewnętrznej kostki przestanie istnieć.
Ale załóżmy że tech cache nie ma i przy każdym odczycie procesor będzie
musiał sięgnąć do pamięci zewnętrznej.
Jeśli cały program by się składał wyłącznie z odczytów z pamięci, wtedy
byłby problem, bo rdzenie by sobie przeszkadzały nawzajem. Ale nawet przy
tak prostym programie jak przytoczyłeś, odczyt z pamięci jest jedną z kilku-
kilkunastu instrukcji które muszą zostać wykonane podczas jednego obiegu
pętli. Podczas kiedy jeden rdzeń zajmuje się wykonaniem dodawania,
przepisywaniem pomiędzy rejestrami sprawdzaniem warunku końca czy czy
skokiem do początku pętli, szyna pamięci danych leży odłogiem i może być
wykorzystana przez drugi rdzeń do pobrania danych.
Nawet jeśli założymy najbardziej niekorzystny przypadek, że podczas każdego
obiegu pętli obydwa rdzenie będą chciały czytać w tym samym momencie, i tak
spowolnienie będzie ledwie zauważalne. W większości przypadków każdy rdzeni
nawet nie zauważy że dostęp do pamięci jest dzielony z kimś innym.
pzdr.
j.
Następne wpisy z tego wątku
- 05.10.14 10:44 Jawi
- 05.10.14 10:47 s...@g...com
- 05.10.14 10:51 s...@g...com
- 05.10.14 10:56 s...@g...com
- 05.10.14 11:01 Jacek Radzikowski
- 05.10.14 11:20 s...@g...com
- 05.10.14 11:33 Artur Miller
- 05.10.14 12:01 Jacek Radzikowski
- 05.10.14 13:16 s...@g...com
- 05.10.14 14:30 bartekltg
- 05.10.14 14:41 AlexY
- 05.10.14 15:01 s...@g...com
- 05.10.14 15:18 bartekltg
- 05.10.14 15:21 bartekltg
- 05.10.14 15:45 J.F.
Najnowsze wątki z tej grupy
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
- stalowe bezpieczniki
- Wyświtlacz ramki cyfrowej
- bateria na żądanie
- pradnica krokowa
- Nieustający podziw...
- Coś dusi.
- akumulator napięcie 12.0v
- Podłączenie DMA 8257 do 8085
- pozew za naprawę sprzętu na youtube
- gasik
- Zbieranie danych przez www
Najnowsze wątki
- 2025-02-01 Śmierć mózgu a narządy do pobrania
- 2025-01-31 A niektórym to naprawdę zależy na ekologi w miastach LPG POWRACA ;-)
- 2025-01-31 Lublin => Programista Delphi <=
- 2025-01-31 Łódź => Programista NodeJS <=
- 2025-01-31 Wrocław => Senior SAP Support Consultant (SD) <=
- 2025-01-31 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2025-01-31 Gdańsk => iOS Developer (Swift experience) <=
- 2025-01-31 Kraków => UX Designer <=
- 2025-01-31 Warszawa => Data Engineer (Tech Leader) <=
- 2025-01-31 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-01-31 Gliwice => Business Development Manager - Network and Network Security
- 2025-01-31 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-31 Warszawa => Full Stack .Net Engineer <=
- 2025-01-31 Warszawa => Programista Full Stack (.Net Core) <=
- 2025-01-31 Gdańsk => Programista Full Stack .Net <=