-
Data: 2014-10-05 01:47:28
Temat: Re: Procesory wielordzeniowe
Od: Jacek Radzikowski <j...@s...die> szukaj wiadomości tego autora
[ pokaż wszystkie 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
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
Najnowsze wątki
- 2025-03-05 Zielona GĂłra => Konsultant wdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-03-05 Białystok => Spedytor Międzynarodowy (handel ładunkami/prowadzenie
- 2025-03-05 Warszawa => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-03-05 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-05 Zielona Góra => Senior Field Sales (system ERP) <=
- 2025-03-05 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-05 Kraków => Business Development Manager - Network and Network Security
- 2025-03-05 Zaniepokojeni mieszkańcy
- 2025-03-05 Ile pieniędzy ma bank?
- 2025-03-05 Ostrów Świętokrzy => Node.js / Fullstack Developer <=
- 2025-03-05 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-03-05 Warszawa => Frontend Developer (Angular13+) <=
- 2025-03-05 Warszawa => Frontend Developer (obszar Angular13+) <=
- 2025-03-05 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-05 Warszawa => JavaScript / Node / Fullstack Developer <=