mcekovic je napisao(la):
Kad malo bolje covek razmisli, tesko da ce Conroe da bude toliko brzi koliko pokaziju benchmark-ci. Mislim da su izabrali bas benchmarke gde veliki i brz cache dolazi do izrazaja najvise, te da Conroe nema sanse da bude brzi od A64 za vise od 10% takt-za-takt na frekfencijama od oko 2.5 GHz.
Oni benchmarci ne pokazuju nista. Sigurno je da su se ljudi iz Intela potrudili da serviraju malo iskrivljenu sliku o superiornim performansama Conroe-a. Kakve su zaista performanse, to ostaje da se vidi. Koliko ce zaista siri execution core doneti ubrzanja, izvrsavanje 128-bit SSE instrukcije u jednom ciklusu, takodje ostaje da se vidi.
mcekovic je napisao(la):
A64 je prilicno optimizovan i po prirodi stvari tesko je moguce optimizovati jedan CPU core da ima veci IPC. Teoriski je to tesko moguce, jer sekvencijalo izvrsavanje x86 instrukcija ima svoje teorijske limite po pitanju IPC-a (zavisnost instrukcija po podatcima).
Moze se povecati IPC, ali u malim koracima. Dakle, tesko da mozes ocekivati odjednom 20-30%.
mcekovic je napisao(la):
Dajem im max 10%, a ni AMD nece moci da izvuce vise. Posto se ne mogu vise povecavati GHz-i, jedino ostaju multi core i (verovali ili ne) hyper-threading (ali implementiran kako valja, kao u IBM Power 5 ili Sun Niagara).
Nadam se da ce AMD promeniti misljenje oko poslednjeg, kao i da ce se Intel vratiti na hyper-threading.
Ako intel implementira SMT u Conroe, zasto to ne bi uradio i AMD sa svojim K8 jezgrima.
Sirina K8 execution core-a uopste nije limitirana, samo je pitanje da li se moze postici ILP ili TLP.
K8 ima 6 integer pajpova, sa po tri adresna, i 6 FP pajpova i takodje moze da odradi po jednu 128-bit SSE u jednom ciklusu.
Evo sta kazu na chip arhitect-u:
Appendix C of Opteron's Optimization Guide specifies to which class each and every instruction belongs. Most 128 bit SSE and SSE2 instructions are implemented as double dispatch instructions. Only those that can not be split into two independent 64 bit operations are handled as Vector Path (Micro Code) instructions. Those SSE2 instructions that operate on only one half of a 128 bit register are implemented as a single (Direct Path) instruction.
Dakle, SSE2 bandwidth nije limitiran dekodiranjem doticnih instrukcija, vec brojem izvrsnih jedinica. U jednom ciklusu moguce je dekodirati do 1.5 SSE2 instrukcija, a FP bandwidth je limitiran na max. jednu 128-bit SSE2 instrukciju u ciklusu. Ukoliko Conroe bude mogao da out-of-order izvrsava 128-bit sse2 instrukcije u jednom ciklusu, onda je u velikoj prednosti.
mcekovic je napisao(la):
Sto se tice multi-core-a, izgleda da ce Intel tu u biti prednosti, jer ima bolji proces. A proces za multi-core mnogo vise znaci nego inter-core komunikacija, jer 4 je duplo vise od 2, a tesko da se takva razlika moze ostvariti brzom inter-core komunikaciom. A tu je i shared-cache, koji je verovatno cak i bitniji nego efikasna inter-core komunikacija i integrisani memorijski kontroler.
Intel nema bolji proces od IBM-a i AMD-a, samo ima raniji "ramp" na sitiniji proizvodni proces i vece proizvodne kapacitete. Kada Conroe izadje, tada bi trebalo da izadju i prvi 65nm procesori iz FAB36.
Shared cache ima vecu latencu od neshare-ovanog.
L2 Cache koherencija bi trebalo da je elegantnije resena u slucaju shareovanog cache-a. Da li je bolje imati crossbar komunikaciju ili samo shareovan high-latency L2 ostaje da se vidi. Mislim da ce novi AMD-ovi procesori imati i jedno i drugo. Shareovan L2 donosi prednost u ne-threadovanim aplikacijama, jer im jednostavno donosi vise cache-a po jezgru. Uostalom, mozes da vidis test Intel Yonah procesora, sa 2MB shareovanog kesa, peformanse su na nivou X2 3800+
mcekovic je napisao(la):
Dakle, ako AMD nema keca u rukavu, lose mu se pise. A nadam se da ima, shared-cache?, efikasniji pipeline (vise fetch, decode i execution jedinica)?, brzi prelazak na sitniji proces?
AMD uvek ima keca u rukavu - ima IBM-a.
