Beste Antwort
AMD hat der Parallelität auf Thread-Ebene mehr Gewicht beigemessen. Es unterstützt 40 Threads während des Flugs pro GPU-Pipeline.
Nvidia hat sich auf eine bessere Cache-Leistung und Thread-Thread-Kommunikation konzentriert. Beispielsweise können Sie Daten von Pipeline-1 zu Pipeline-2 direkt in einem Zyklus mithilfe der Warp-Shuffle-Anweisung senden. Wenn Sie Daten von Pipeline-1 an Pipeline-1024 senden möchten, müssen Sie Cache / Shared Memory verwenden, der auch schneller ist als das Amd-Gegenstück.
Um einen fairen Benchmark zu erstellen, würde ich
- Erhöhen Sie die Anzahl der an die AMD-GPU gesendeten Workitems, damit diese die Pipelines vollständig ausfüllen.
- Optimieren Sie mit Warp-Shuffles usw. für Nvidia.
Für a Direkter Hardware-Vergleich, jede Serie von GPUs muss berücksichtigt werden und es wäre ein sehr komplexer Vergleich mit vielen Dingen auf dem Papier. Der beste Weg, um die Leistung zu ermitteln, ist das Benchmarking.
Wenn es beispielsweise einen Benchmark für die N-Körper-Galaxiensimulation gibt, hätte ich in AMD mehrere Threads pro Masse und in Nvidia 1 Thread pro Masse. Dann würde ich beide durch „Kacheln“ auf schnellem gemeinsam genutztem Speicher optimieren. Aber auf Nvidia würde ich eine zweite Schicht „Kacheln“ mit Warp-Shuffles hinzufügen. Warp-Shuffles teilen den Registerspeicher effektiv mit benachbarten Pipelines, sodass die Speicherabhängigkeit abnimmt und die Leistung zunimmt. Aber es ist nur CUDA. OpenCL ist nicht plattformabhängig, da es ein gewisses Potenzial für Leistungssteigerungen bietet.
Antwort
AMD verkauft derzeit Prozessoren mit 2 bis 64 CPU-Kernen. Hier finden Sie eine Liste verschiedener AMD-CPU / APU-Produktlinien und -Serien (APUs nennt AMD ihre CPUs mit integrierter Grafik) sowie die entsprechende Kernanzahl.
Beachten Sie, dass jede dieser Produktlinien mehrere verschiedene Produktlinien enthält Generationen und spezifische Modelle oder „SKUs“ (Stock Keeping Units) der CPU, so ist beispielsweise ein Ryzen 7 1700 langsamer als ein Ryzen 7 3700X, obwohl beide 8-Kern-Ryzen 7-CPUs sind:
A-Serie (APUs mit geringem Stromverbrauch, die auf veralteten und ineffizienten „Bulldozer“ -Architekturen basieren. Normalerweise nicht den Kauf wert):
- A4 – 2 Kerne
- A6 – 2 Kerne
- A8 – 4 Kerne
- A9 – 2 Kerne
- A10 – 4 Kerne
- A12 – 4 Kerne
Athlon X-Serie (wie die A-Serie, jedoch ohne Grafik. Nicht kaufen.)
- Athlon X2 – 2 Kerne
- Athlon X4 – 4 Kerne
FX-Serie („Bulldozer“ -CPUs Ähnlich der A-Serie, jedoch ohne integrierte Grafik und etwas schneller. Schwierig ausreichend zu kühlen. Normalerweise nicht kaufenswert )
- FX 4xxx – 4 Kerne
- FX 6xxx – 6 Kerne
- FX 8xxx – 8 Kerne
- FX 9xxx – 8 Kerne
Athlon G-Serie (billige APUs, die auf modernen „Zen“ -Architekturen mit gut integrierter Grafik basieren. Eine gute Low-End-Option, da jeder der Kerne viel schneller ist als zwei Bulldozer-Kerne.
- (alle Varianten) – 2 Kerne
Ryzen-Serie (Mittlere bis High-End-Zen-CPUs mit hoher Multicore-Leistung. Enthält auch einige APUs mit leistungsstarken integrierten Grafiken – solche mit einem Modellnamen, der auf „G“ endet.)
- Ryzen 3 – 4 Kerne
- Ryzen 5 – 6 Kerne (4 Kerne für APUs)
- Ryzen 7 – 8 Kerne
- Ryzen 9 – 12 oder 16 Kerne
- Ryzen Threadripper – 8 bis 64 Kerne (für High-End-Workstation-PCs)
EPYC-Serie (Server- und HPC / Supercomputer-Zen-CPUs. Kann in Desktops verwendet werden, jedoch nicht dafür bestimmt)
- EPYC – 8 bis 64 Kerne