gieda, akcje, inwestycje
  Forum Rejestracja Szukaj
Internetowa Auto Gieda
Motocykle - ogoszenia motoryzacyjne

Procesor dwurdzeniowy

Forum: / Archiwum Sprzt 2006 / Procesor dwurdzeniowy
<< . 1 . 2 .
Autor Wiadomo
Radek

Posted: 31 Lip 2007 09:21:32



...wszystko bedzie dobrze i dobrze sie skonczy ;-) nie musisz sie az tak
przejmowac swoja rola na grupie (przepraszam za osobista wycieczke ale
czasami zachodze w glowe dlaczego ludzie pisza nie na temat poprzedniego
posta...;-)

Nie przejmuje się ale lubię pisać. ;)

dlugo moglibysmy dywagowac o roznicach w budowie procesorow, czesc da
sie wyczytac z dokumentacji procesorow, czesc tylko zbadac
eksperymentalnie - jezeli jestes hardcorowcem na poziomie rejestrow,
assemblera, optymalizacji recznej kodu to polecam eksperymenty - bardzo
pouczajace

Nie interesuje się aż tak "x86" ale dla zabawy nauczyłem się assemblera
ARM. Było bardzo pouczające, że w sumie tak prosta architektura ma ISA,
która pozwala na coś w rodzaju superskalarności (conditional executing
i przesunięcia bitowe dla prawego operanda). Czy też też bardzo fajne
szybkie seryjne load/store z równoczesnym inc/dec dla rejestru adresowego.

Aż płakać się chce, że nie ma ARM z taktowaniem 3GHz... :(


Pozdrawiam,
Radek




Wiktor S.

Posted: 31 Lip 2007 09:28:09



Przecież oba rdzenie nie mogą mieć jednocześnie
dostępu do tej samej danej.

Dlaczego "nie mogą"? To trąci dogmatem.
Oczywiście, że można układ tak zaprojektować, żeby MOGŁY.

Zdaje się, że jesteś zwolennikiem logiki rozmytej.

Technicznie nie ma problemu zeby mozna bylo CZYTAC te same komorki

jednoczesnie, pytanie czy musi to byc w tym samym clocku zegara?
Oczywiscie logika rozmyta nie jest potrzeba... Natomiast z
oczywistych powodow jest problem z jednoczesnym ZAPISEM, ale to jest
oczywiste.

Tu również nie ma problemu: przecież jeśli jednoczesnego zapisu nie ma, to
ZAWSZE któryś rdzeń będzie czekał na drugi, więc ostatecznie zapisana będzie
tylko jedna wartość - tego rdzenia, który zapisywał jako drugi.

Wystarczy teraz założyć, że przy próbie 1czesnego zapisu zapisywana będzie
tylko jedna z wartości - np. zawsze z tego samego rdzenia lub wg. jakiejś
tam reguły. Rezultat ten sam, bo w sytuacji nie1czesnego zapisu i tak
docelowo jeden z zapisów jest natychmiast tracony.






Wiktor S.

Posted: 31 Lip 2007 09:29:46



czy też też bardzo fajne szybkie seryjne load/store
z równoczesnym inc/dec dla rejestru adresowego.

x86 też to ma...





MC

Posted: 31 Lip 2007 14:11:25



Przecież oba rdzenie nie mogą mieć jednocześnie
dostępu do tej samej danej.

Dlaczego "nie mogą"? To trąci dogmatem.
Oczywiście, że można układ tak zaprojektować, żeby MOGŁY.

Zdaje się, że jesteś zwolennikiem logiki rozmytej.

Technicznie nie ma problemu zeby mozna bylo CZYTAC te same komorki
jednoczesnie, pytanie czy musi to byc w tym samym clocku zegara?
Oczywiscie logika rozmyta nie jest potrzeba... Natomiast z
oczywistych powodow jest problem z jednoczesnym ZAPISEM, ale to jest
oczywiste.

Tu również nie ma problemu: przecież jeśli jednoczesnego zapisu nie ma, to
ZAWSZE któryś rdzeń będzie czekał na drugi, więc ostatecznie zapisana
będzie tylko jedna wartość - tego rdzenia, który zapisywał jako drugi.

Wystarczy teraz założyć, że przy próbie 1czesnego zapisu zapisywana będzie
tylko jedna z wartości - np. zawsze z tego samego rdzenia lub wg. jakiejś
tam reguły. Rezultat ten sam, bo w sytuacji nie1czesnego zapisu i tak
docelowo jeden z zapisów jest natychmiast tracony.

No tak, ale z tej dwójki wartości tylko jedna jest prawdziwa i nie jest
obojętne która będzie tą drugą nadpisującą. Zresztą w takiej sytuacji
liczenie tej do nadpisania jest trochę bez sensu. Tak to nie może działać.





Radek

Posted: 31 Lip 2007 15:22:12



Wiktor S. napisał(a):
czy też też bardzo fajne szybkie seryjne load/store
z równoczesnym inc/dec dla rejestru adresowego.

x86 też to ma...

Chodzi o movs?


Pozdrawiam,
Radek




Wiktor S.

Posted: 31 Lip 2007 17:28:32



Wiktor S. napisał(a):
czy też też bardzo fajne szybkie seryjne load/store
z równoczesnym inc/dec dla rejestru adresowego.

x86 też to ma...

Chodzi o movs?

itp.





KaNo

Posted: 31 Lip 2007 18:48:03




Moglem sie domyslic. Zapis z L1(w-t) do L2 nie jest natychmiastowy, przy
zmianie wartosci w L1 ustawiny jest jedynie "dirty bit" i jezeli jest
zgloszenie do odpowiadniego obszaru L2, to wtedy dopiero nastepuje jego
uaktualnienie (L1-L2). Od poczatku chyba jest oczywiste, ze do jednego
obszaru pamieci, nie mozemy "jednoczesnie" wpisywac roznych wartosci.

Wanie o tym blokowaniu zapisu pisz od dwch dni. Nie ma go w przypadku
indywidualnych cache dla kadego rdzenia z rwnie oczywistych powodw.

ale jest za to kazdorazowo zapis L1-L2-RAM. W C2D odbywa sie to jedynie

pomiedzy L1 i L2, oczywiscie do momentu, kiedy nie brakuje pamieci L2.





Radek

Posted: 1 Sier 2007 19:17:00



Wiktor S. napisał(a):
Wiktor S. napisał(a):
czy też też bardzo fajne szybkie seryjne load/store
z równoczesnym inc/dec dla rejestru adresowego.

x86 też to ma...

Chodzi o movs?

itp.

Nie śledzę tego co się dzieje w "x86-64" czy też w SSEx ale jeśli chodzi
o movs to nie jest to samo co ma ARM. To jest tylko kopiarka ciągów
znaków/słów z adresu do innego kiedy w ARM można seryjnie zrobić
prawdziwe load/store z użyciem wybranych rejestrów.

LDM/STM do tego może mieć "write-back" i conditional flag.

To jest zabawne, że to co superskalarny i OoO C2D musi robić poprzez
tzw. "macrofusion" jest załatwiane przez zwykły opcod w inorder
i skalarnym ARM.

Lepiej byłoby mieć ARM jako dominującą ISA niż "x86", prawda?


Pozdrawiam,
Radek




Radosław Sokół

Posted: 2 Sier 2007 06:21:39



Nie śledzę tego co się dzieje w "x86-64" czy też w SSEx ale jeśli chodzi
o movs to nie jest to samo co ma ARM. To jest tylko kopiarka ciągów
znaków/słów z adresu do innego kiedy w ARM można seryjnie zrobić
prawdziwe load/store z użyciem wybranych rejestrów.

Samo MOVS akurat nie jest kopiarką, tylko właśnie load/store
z inkrementacją/dekrementacją. Do tego musisz ew. dorzucić
pętlę *sam* dopiero (aczkolwiek akurat w przypadku MOVS nie
ma to sensu poza kilkoma przypadkami).

Generalnie instrukcje "stringowe" w x86 są ciekawe (aczkol-
wiek są też największym balastem architektury x86 dla obecnych
architektur procesorów). Obecnie już jednak nie mają takiego
bezwzględnego prymatu wydajnościowego, operacje z wykorzystaniem
MMX są szybsze wyraźnie (kiedyś z operacji łańcuchowych opłacało
się korzystać przy każdej operacji, były zazwyczaj kilka razy
szybsze od pętli zapisanych ręcznie zwykłymi rozkazami -- ale
to był czysty CISC, a dzisiaj x86 to wewnętrznie praktycznie
RISC).




<< . 1 . 2 .
 

Komputer osobisty (ang. Personal Computer, std skrt PC i powszechne polskie okrelenie pecet). Obecnie nastpca klonw mikrokomputera wyprodukowanego przez firm IBM w latach 80. Przeznaczony przede wszystkim do uytku osobistego, domowego i biurowego, zazwyczaj stacjonarny. W wszym znaczeniu PC oznacza komputery standardu IBM-PC.
W dobie "komputer w kadym domu" wiele osb napotyka na problemy, ktrych nie jest w stanie rozwiza samemu. Moliwe, e to forum Tobie pomoe...

Czas adowania strony (sek.): 0.420
miniBB.net © 2001-2008 | Polityka Prywatnoci
archiwum - ogoszenia + filmiki + gieda

Online: Odwiedzajcy - 1
+ - 0
Najwicej odwiedzajcych: 57 [1 Pa 2008 13:52:39]
Odwiedzajcy - 57 / + - 0
Motoryzacja stomatolog Wrocaw ogrodzenie Kawa Cellini