Dlaczego procesory nie są większe? [Zamknięte]

21

Procesory są stosunkowo małe, a inżynierowie stale próbują je zmniejszyć i uzyskać więcej tranzystorów na tej samej powierzchni.

Dlaczego procesory nie są większe? Jeśli matryca o długości około 260 mm 2 może pomieścić 758 milionów tranzystorów (AMD Phenom II x4 955). Wtedy 520 mm 2 powinien być w stanie pomieścić podwójną liczbę tranzystorów i technicznie podwoić prędkość zegara lub rdzenie. Dlaczego tego nie zrobiono?

Simon Verbeke
źródło
4
Nie znam wszystkich szczegółów, ale w zasadzie im bliższe są tranzystory itp., Tym bardziej wydajne. Czterokrotne zwiększenie obszaru spowolniłoby procesor.
ChrisF
1
Ponadto, szczególnie biorąc pod uwagę obecny stan aplikacji, współczesne procesory spędzają strasznie dużo czasu, nic nie robiąc. Machają kciukami, a my, użytkownicy, zastanawiamy się, co chcemy zrobić.
surfasb
1
@ChrisF Mylisz wpływ kurczenia się matrycy (wzrost prędkości w wyniku zmniejszenia pojemności) ze zmniejszoną liczbą tranzystorów. Zadaj sobie pytanie: czy pojedynczy rdzeń na podwójnym rdzeniu będzie działał szybciej niż rdzeń na poczwórnym rdzeniu?
artistoex
2
To jest zrobione - Spójrz na nowej platformie Intel LGA2011.
Przełom
3
Nie zgadzam się z głosowaniem zamkniętym. Istnieją wyraźne powody, dla których tworzenie większych żetonów nie ma sensu, jak pokazują najlepsze odpowiedzi. Nie jest to więc pytanie bez opinii (na przykład „Czy Android jest lepszy od iOS”). Zainteresowało mnie to pytanie!
David Miani,

Odpowiedzi:

18

Zasadniczo masz rację: w krótkim okresie zwiększenie równoległości jest nie tylko wykonalne, ale jest to jedyna droga. W rzeczywistości wielordzeniowe, a także pamięci podręczne, potokowanie i hiperwątkowość są dokładnie tym, co proponujesz: zwiększenie prędkości dzięki zwiększonemu wykorzystaniu obszaru wiórów. Oczywiście kurczące się geometrie nie kolidują ze wzrostem wykorzystania powierzchni matrycy. Jednak wydajność matrycy jest dużym czynnikiem ograniczającym.

Wydajność matrycy rośnie odwrotnie proporcjonalnie do wielkości matrycy: większe matryce są po prostu bardziej podatne na „złapanie” błędów płytki. Jeśli błąd opłatka trafi w kostkę, możesz ją wyrzucić. Wydajność kości wpływa oczywiście na koszt kości. Zatem istnieje optymalny rozmiar kości pod względem kosztów w porównaniu do zysków na kostkę.

Jedynym sposobem na wytworzenie znacznie większych matryc jest zintegrowanie struktur odpornych na uszkodzenia i nadmiarowych. Właśnie to Intel próbuje zrobić w swoim projekcie Terra-Scale (AKTUALIZACJA: i to, co jest już praktykowane w codziennych produktach, jak zauważa Dan).

artistoex
źródło
8
W nowoczesnych, złożonych procesorach / procesorach graficznych defekty matryc często powodują tylko binowanie. Procesory graficzne średniego / wyższego poziomu zazwyczaj mają pełną część matrycy i jeden lub dwa, które mają wyłączone kilka podskładników, aby uzyskać więcej punktów cena / zdolność z mniejszej liczby układów scalonych. To samo dzieje się z procesorami. Układy tricore AMD są quadami z wyłączoną matrycą, a układy scalone LGA2011 składają się z 8 podstawowych części. Pełne matryce są używane tylko jako Xeony. 4/6 rdzenia i7-2011 to 8 matryc rdzeniowych z wyłączonymi częściami. Jeśli błędy matryc znajdą się w odpowiednich miejscach, są one dzielone jako tańsze części. W przypadku bardziej modułowych układów GPU wskaźniki błędów ustaw niski przedział.
Dan Neely
@ DanN Dziękuję, dodałem to do mojej odpowiedzi
artistoex
23

Istnieje wiele problemów technicznych (długości ścieżek stają się zbyt długie i tracisz wydajność, zakłócenia elektryczne powodują hałas), ale głównym powodem jest po prostu to, że wiele tranzystorów byłoby zbyt gorących, aby odpowiednio się ochłodzić . To jest cały powód, dla którego tak bardzo chcą zmniejszyć rozmiar matrycy - pozwala to na zwiększenie wydajności przy tych samych poziomach termicznych.

Shinrai
źródło
Powinienem dodać, że mam na myśli oczywiście w kontekście standardowego komputera stacjonarnego / laptopa.
Shinrai
1
Długości ścieżek niekoniecznie rosną, są lokalną rzeczą: umieszczenie dwóch rdzeni na chipie nie zwiększy długości ścieżki wewnątrz rdzenia, prawda? Rozpraszanie ciepła będzie również rozprowadzane na większym obszarze, więc nie jest to również duży problem.
artistoex
1
Tak, jest wiele niuansów, ale nie czułem, żeby się w to było uzasadnione. (Nie muszę też koniecznie rozumieć w kontekście WIĘCEJ rdzeni, ponieważ pytanie nie było tak jednoznaczne w tej sprawie.)
Shinrai
Chodzi o to, że procesory wielordzeniowe są dokładnie tym, co zaproponowała OP - wzrost prędkości dzięki zwiększonemu wykorzystaniu powierzchni układów.
artistoex
3
Jak oceniasz hiperwątkowość, „większe, szybsze rdzenie”? Hyperthreading opiera się na logice i nie ma nic wspólnego z rozmiarem ... To znaczy, jeśli jest dostępny nadmiar w bieżącym rdzeniu, którego używa. IE: jeśli twoja jednostka MMX i FPU są używane na danym rdzeniu, nadal możesz wykonać obliczenia oparte na liczbach całkowitych.
Supercereal
15

Kilka podanych tutaj odpowiedzi to dobre odpowiedzi. Zwiększenie rozmiaru procesora wiąże się z problemami technicznymi i doprowadzi to do znacznie większego upału. Jednak wszystkie z nich są do pokonania, biorąc pod uwagę wystarczająco silne zachęty.

Chciałbym dodać to, co uważam za główny problem: ekonomię . Procesory są wykonane z takich płytek , z dużą liczbą procesorów na płytkę. Rzeczywisty koszt produkcji wynosi w przeliczeniu na opłatek, więc jeśli podwoisz powierzchnię procesora, możesz zmieścić tylko o połowę mniej na waflu, więc cena za procesor podwoi się. Ponadto nie wszystkie opłatki zawsze wychodzą idealnie, mogą wystąpić błędy. Zatem podwojenie obszaru podwaja szansę na defekt dowolnego konkretnego procesora.

Dlatego z ekonomicznego punktu widzenia powodem, dla którego zawsze zmniejszają, jest uzyskanie lepszej wydajności / mm ^ 2, która jest decydującym czynnikiem w stosunku ceny do wydajności.

TL; DR: Oprócz innych wymienionych powodów podwojenie powierzchni procesora ponad dwukrotnie zwiększa koszt.

Pan Alpha
źródło
To jest główny powód. Rozdział 1 podręcznika Hennessy and Pattersons's Computer Architecture opisuje proces produkcji i rozważania, jakie należy kierować procesorami umiera tak, aby procesory były jak najmniejsze.
Steve Blackwell
3

Dodanie większej liczby tranzystorów do procesora nie powoduje automatycznie przyspieszenia.

Zwiększona długość ścieżki == wolniejsze taktowanie.
Dodanie większej liczby tranzystorów zwiększy długość ścieżki. Każdy wzrost musi być cenny lub spowoduje wzrost kosztów, ciepła, energii, ale spadek wydajności.

Oczywiście zawsze możesz dodać więcej rdzeni. Dlaczego tego nie robią? Cóż, robią.

użytkownik606723
źródło
Tak naprawdę nie rozważam tego tematu poza tematem (chociaż byłby tam również na temat).
Shinrai
Tak! Zgadzam się. Po prostu myślę, że lepiej tam będzie odpowiedź. Usunąłem linię.
user606723,
2

Twoje ogólne założenie jest błędne. Procesor z podwójną matrycą nie oznacza, że ​​może pracować z podwójną prędkością. Dałoby to tylko więcej miejsca na dodanie większej liczby rdzeni (patrz niektóre układy Intel Manycore z 32 lub 64 rdzeniami) lub większych pamięci podręcznych. Ale większość obecnego oprogramowania nie może korzystać z więcej niż 2 rdzeni.

Dlatego zwiększony rozmiar matrycy znacznie zwiększa cenę bez wzrostu o tej samej wysokości. To jeden z (uproszczonych) powodów, dla których procesory są takie, jakie są.

Robert
źródło
Nie jest to do końca prawdą - przy większej liczbie tranzystorów można zmniejszyć głębokość propagacji, więc wykonanie instrukcji zajmuje mniej cykli. Masz rację, że nie ma to nic wspólnego z prędkością zegara .
BlueRaja - Danny Pflughoeft
1

W elektronice MNIEJSZE = SZYBSZE 3GHz musi być znacznie mniejsze niż 20 MHz Im większe połączenia, tym większa ESR i mniejsza prędkość.

Podwojenie liczby tranzystorów nie podwaja prędkości zegara.

Fiasco Labs
źródło
Zwiększenie prędkości zegara to tylko jedno podejście do zwiększenia prędkości. Podwojenie tranzystorów to kolejny. Poza tym zmniejszające się połączenia nie powodują konfliktu ze wzrostem obszaru matrycy.
artistoex
3
@artistoex, ale zwykłe podwojenie tranzystorów również nie przyspiesza. Musi być zaprojektowany w taki sposób, aby wykorzystać te tranzystory. Więcej tranzystorów (z tym samym mm) oznacza zwykle niższy zegar.
user606723,
1

Czynnikiem jest koszt produkcji surowych wafli. Krzem monokrystaliczny nie jest wolny , a proces rafinacji jest nieco drogi. Zatem użycie większej ilości surowców zwiększa koszt.

steampowered
źródło
0

Wielkie żywe istoty, sztuczne czy nie, jak dinozaury, są frajerami. Stosunek powierzchni do objętości nie jest sprawiedliwy dla ich przeżycia: zbyt wiele ograniczeń dotyczących energii - każdej postaci - wewnątrz i na zewnątrz.

Massimo
źródło
0

Pomyśl o procesorze jako o sieci połączonych węzłów (tranzystorów). Aby zapewnić więcej możliwości, liczba węzłów i ścieżki między nimi rosną do pewnego stopnia, ale wzrost ten jest liniowy. Tak więc jedna generacja procesora może mieć milion węzłów, a kolejna może mieć 1,5 miliona. Dzięki miniaturyzacji obwodu liczba węzłów i ścieżek zostaje skondensowana w mniejszy sposób. Obecne procesy produkcyjne spadają do 30 nanometrów.

Powiedzmy, że potrzebujesz pięciu jednostek na węzeł i pięciu jednostek odległości między dwoma węzłami. Koniec do końca, w linii prostej możesz utworzyć magistralę 22222 węzłów w 1 CM przestrzeni. Możesz utworzyć matrycę 493 milionów węzłów w kwadratowym CM. Konstrukcja obwodu zawiera logikę procesora. Podwojenie przestrzeni nie jest tym, co zwiększa prędkość, po prostu umożliwiłoby obwódowi więcej logicznych operatorów. Lub w przypadku procesorów wielordzeniowych, aby obwód mógł obsługiwać więcej pracy równolegle. Zwiększenie powierzchni postoju faktycznie zmniejszyłoby prędkość zegara, ponieważ elektrony musiałyby pokonywać większe odległości przez obwód.

Michael Brown
źródło