Hoe weet ik wat de IPC van een GPU is?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • M4N14C
  • Registratie: November 2015
  • Laatst online: 15-03 15:09
Beste Tweakers,

De laatste tijd ben ik mij wat meer aan het verdiepen in de (detail) specs van PC onderdelen en zo las ik gisteren op Reddit toevallig iets over IPC (Instruction per cycle) van een GPU. Volgens deze thread was dit erg belangrijk bij het bepalen welke GPU je eventueel zou willen kopen. Omdat dit aangeeft hoeveel informatie de GPU in één cycle kan verwerken.

Mijn vraag is: Hoe kom ik er achter wat de IPC van een GPU is?


De thread op Reddit was al jaren oud dus reageren kon helaas niet meer, vandaar dat ik mijn vraag hier stel. Google heeft mij niet heel veel wijzer gemaakt, helaas.

Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • Uszka
  • Registratie: Maart 2018
  • Laatst online: 07:06
Bedoel je niet de IPC van de cpu?

En blijf weg van Reddit want daar wordt enorm veel onzin verteld.

Acties:
  • +3 Henk 'm!

  • sapphire
  • Registratie: November 2002
  • Nu online

sapphire

Die-hard pruts0r

Ik zou me hier echt totaal niet druk over maken of hier energie in steken.

De IPC kun je gebruiken om te zien hoeveel 1Mhz van merk A verschilt van 1Mhz van merk B of vergelijken hoeveel sneller 1Mhz van generatie A is tov generatie B.
Leuk om te weten maar je hebt hier niets aan als je gewoon een videokaart wilt kopen en het is zeker bij videokaarten van te veel factoren afhankelijk hoe een chip presteert.

Daarvoor kun je beter gewoon naar benchmarks van de hele kaart opzich kijken en je daar in verdiepen.

Gabriël AM5


Acties:
  • +2 Henk 'm!

  • computerjunky
  • Registratie: Maart 2004
  • Laatst online: 30-09 13:48
Totaal irrelevant, gewoon naar betrouwbare benchmarks kijken en kijken welke prestaties je voor je geld en per watt krijgt.

De rest is allemaal niet interessant en kan zelfs verschillende per applicatie. Zo is de Nvidia architectuur beter in de ene game en de AMD architectuur beter in een andere game.

Acties:
  • +3 Henk 'm!

  • Umbrah
  • Registratie: Mei 2006
  • Laatst online: 23:18

Umbrah

The Incredible MapMan

IPC = strict geteld "instructions per clock". Niet een getal waar je veel aan hebt zonder context. En zeker bij GPU's is het verhaal wat minder zwart/wit dan enkel en alleen "zoveel flops".

Als je strict een nummer wil weten dan pak je een FP32 tester op je GPU, klok je hem met de hand op 1GHz, en deel je het aantal FP32's door een miljard. Want 1GHz = 1 miljard Hz. Voila. Instructies per klok. Maar enkel voor FP32 in DIE compile en DIE specifieke engine. En dan per voorkeur ook gedeeld door het aantal execution units want je wilt het uiteraard weten per unit, niet voor de hele core :D

GPU's doen meer. Ze hebben ASIC's aan boord, cache/geheugen configuraties, fetch algoritmes, branch predictors, en meer. Een GPU op 1.8GHz kan best sneller zijn dan een op 2.2GHz, puur omdat er meer cores op zitten, meer cache, en een ander algoritme. Maar vervolgens kan de 2.2GHz versie weer sneller zijn omdat de rekenvraag raytracing omvat en hij daar een hardware module voor heeft. Terwijl de 1.8GHz bijvoorbeeld weer sneller is in H.265 encoden omdat die daar weer een module voor heeft.

Bij zowel GPU's als CPU's is een rouwe IPC niet nuttig. Nuttiger (maar ook niet perfect) is de PPW waarde. Hoeveel Watt moet je er in pompen om tot hetzelfde resultaat te komen!

En zelfs daar is het, zoals je hopelijk nu snapt, appels en peren. Mocht een GPU de ASIC missen voor... mpeg2, en het dus met z'n general purpose dingen (of erger: de CPU) moeten afhandelen, dan zal voor specifiek die workload meer vermogen nodig zijn.

Om het geheel plaatje te beoordelen zijn dit soort tests dus belangrijk:
reviews: Nvidia GeForce RTX 3090 Ti - Nóg meer Ampere, nóg meer watts
reviews: AMD Radeon RX 6900 XT - Is Navi 21 snel genoeg?

etc, etc, etc...

In die tests worden 100-en games op 100-en resoluties langsgelopen en vervolgens ook zaken als stroomverbruik vergeleken. En omdat dit zelfs een moment opname is, heb je zelfs dingen als:

https://www.gamersnexus.n...gpu-scheduling-benchmarks

En zelfs de driver (en de overhead daarvan) op bepaalde hardware kan een behoorlijke impact hebben (waardoor er ook kreten ontstaan: "met een low end CPU is een Radeon beter"):

YouTube: Nvidia Has a Driver Overhead Problem, GeForce vs Radeon on Low-End CPUs

Het complete verhaal is mega complex. Mijn advies is om niet zo veel moeite er in te steken dat je zelf door de bomen het bos niet meer ziet. IPC berekenen is namelijk... lastig. En nutteloos. Je bent er beter mee af als je de situatie die op jou toepasbaar is bekijkt. Dus wat kan er met jouw CPU, je PCIe lanes, en je besturingssysteem?

Acties:
  • +3 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 30-09 00:11

Compizfox

Bait for wenchmarks

Uszka schreef op woensdag 4 mei 2022 @ 10:24:
En blijf weg van Reddit want daar wordt enorm veel onzin verteld.
Haha, en hier niet zeker?

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

  • FrankoNL
  • Registratie: December 2004
  • Laatst online: 23:35
Bij het bepalen van een GPU zijn de volgende factoren van belang:

1. Welke resolutie ga je spelen?
2. Wat voor games ga je spelen?
3. Welke refreshrate wil je halen, wil je bijvoorbeeld 120+ fps of is 60 fps voor jou voldoende? Hier is de monitor ook van belang.
4. En last but not least: Wat is je budget?

Afhankelijk daarvan kan je reviews / benchmarks van GPU's gaan kijken. Daar wordt per resolutie getest hoe een bepaalde kaart presteert. Over het algemeen betekent een hoger getal, of een toevoeging achter het getal, in de naam een snellere kaart.

rtx 3050
rtx 3060
rtx 3070

RX6600
RX6600XT
RX6700XT

etc.

wat de IPC is doet er verder niet zo toe.

Acties:
  • 0 Henk 'm!

  • DaniëlWW2
  • Registratie: November 2009
  • Niet online

DaniëlWW2

Moderator General Chat

Dyslectic history cynic

M4N14C schreef op woensdag 4 mei 2022 @ 10:18:
Beste Tweakers,

De laatste tijd ben ik mij wat meer aan het verdiepen in de (detail) specs van PC onderdelen en zo las ik gisteren op Reddit toevallig iets over IPC (Instruction per cycle) van een GPU. Volgens deze thread was dit erg belangrijk bij het bepalen welke GPU je eventueel zou willen kopen. Omdat dit aangeeft hoeveel informatie de GPU in één cycle kan verwerken.

Mijn vraag is: Hoe kom ik er achter wat de IPC van een GPU is?


De thread op Reddit was al jaren oud dus reageren kon helaas niet meer, vandaar dat ik mijn vraag hier stel. Google heeft mij niet heel veel wijzer gemaakt, helaas.

Alvast bedankt!
Degene die dit probeerde wijs te maken op reddit, had geen flauw idee waar die het over had. :z
GPU's hebben geen IPC waarde en die is ook niet fatsoenlijk te berekenen. Het enige dat nog ergens in de buurt komt is de TeraFlop rating, maar dat zegt ook niks. TF bereken je door het aantal basale rekeneenheden (ALU's) maal twee te doen en dan maal de clockspeed. Zo krijg je voor een RX6900XT bijvoorbeeld 5210 x 2 x 2250MHz = 23TF. Maar een RTX3090 is 10496 x 2 x 1695MHz = 35,6TF. Die is in de praktijk alleen maar een paar procent sneller dan een RX6900XT. Dus welke van de twee heeft hier nu de hogere "IPC"? :P

Het antwoord is dat het gaat om utilisatiepercentages. GPU's hebben inmiddels duizenden ALU's die in een complexe hiërarchieën zijn verbonden aan elkaar. Het doel hiervan is om elke clock cycle een zo hoog mogelijke hoeveelheid ALU's te voorzien van een rekenopdracht. Dat is in de praktijk een onmogelijk opdracht. Het kan fors verschillen per applicatie of game, welk deel van de applicatie of game, welk type berekeningen er gevraagd worden, in welke volgorde berekeningen afgehandeld worden etc. Ga er gerust vanuit dat zelfs de meest efficiënte GPU's eigenlijk nooit die ideale 100% halen. Het gaat erom het zo hoog mogelijk te maken.

Never argue with an idiot. He will drag you down to his own level and beat you with experience.

Pagina: 1