16
ARSITEKTUR FERMI Akhmad Faudzan Bakri [1107122073] Erick Anugrah P [1107122071] A. Detail Arsitektur Fermi adalah “codename” dari mikroarsitektur GPU yang dikembangkan oleh NVIDIA sebagai suksesor dari dari arsitektur yang lama yaitu Tesla. Sebelumnya arsitektur GPU yang memiliki nama lain GT300 ini, disebut banyak membawa beberapa teknologi terbaru NVIDIA. Berdasar fitur terbaru GPU tersebut, NVIDIA menyoroti teknologi baru yang hadir di Fermi seperti: C++, yang mensupport C, Fortran, Java, Python, OpenCL serta DirectCompute. ECC, perangkat wajib bagi pengambangan GPU secara luas pada datacenter dan supercomputing center. 512 CUDA Cores berfitur IEEE 754-2008 floating-point standard terbaru. 8x double precision arithmetic performance di semua generasi terbaru GPU NVIDIA. Double precision adalah penting bagi aplikasi high-performance computing (HPC), seperti linear algebra, numerical simulation, dan quantum chemistry. NVIDIA Parallel DataCache - True Cache hirarki pertama di dunia dalam hal kecepatan GPU, yang mempercepat kinerja alogaritma seperti physics solvers, raytracing, dan sparse matrix multiplication, di mana alamat data belum dikenal sebelumnya. NVIDIA GigaThread Engine yang mendukung concurrent kernel execution, di mana kernel berbeda dalam sebuah aplikasi yang sama, dapat mengeksekusi konten GPU dalam waktu yang bersamaan (seperti: PhysX fluid dan rigid body solvers). Nexus - Aplikasi komputasi pertama di dunia yang secara terintegrasi dikembangkan dalam Microsoft Visual Studio. Fermi ini diimplementasikan dengan 3 milyar transistor, dengan CUDA core sebanyak 512. CUDA core sebanyak 512 itu diatur oleh 16 SM yang artinya tiap SM (Streaming Multiprocessor) mengatur 32 core. GPU berbasis arsitektur Fermi memiliki 6 64-bit memori untuk 384-bit memory interface yang mendukung total 6 GB memory GDDR5 DRAM. Host interface menghubungkan GPU dengan CPU via PCI- express dan Gigathread global scheduler mendistribusikan blok- blok thread ke masing-masing SM thread schedulers.

Arsitektur Fermi

Embed Size (px)

DESCRIPTION

...

Citation preview

ARSITEKTUR FERMIAkhmad Faudzan Bakri [1107122073] Erick Anugrah P [1107122071]

A. Detail ArsitekturFermi adalah “codename” dari mikroarsitektur GPU yang dikembangkan oleh NVIDIA sebagai suksesor dari dari arsitektur yang lama yaitu Tesla. Sebelumnya arsitektur GPU yang memiliki nama lain GT300 ini, disebut banyak membawa beberapa teknologi terbaru NVIDIA. Berdasar fitur terbaru GPU tersebut, NVIDIA menyoroti teknologi baru yang hadir di Fermi seperti:

C++, yang mensupport C, Fortran, Java, Python, OpenCL serta DirectCompute. ECC, perangkat wajib bagi pengambangan GPU secara luas pada datacenter dan

supercomputing center. 512 CUDA Cores berfitur IEEE 754-2008 floating-point standard terbaru. 8x double precision arithmetic performance di semua generasi terbaru GPU NVIDIA.

Double precision adalah penting bagi aplikasi high-performance computing (HPC), seperti linear algebra, numerical simulation, dan quantum chemistry.

NVIDIA Parallel DataCache - True Cache hirarki pertama di dunia dalam hal kecepatan GPU, yang mempercepat kinerja alogaritma seperti physics solvers, raytracing, dan sparse matrix multiplication, di mana alamat data belum dikenal sebelumnya.

NVIDIA GigaThread Engine yang mendukung concurrent kernel execution, di mana kernel berbeda dalam sebuah aplikasi yang sama, dapat mengeksekusi konten GPU dalam waktu yang bersamaan (seperti: PhysX fluid dan rigid body solvers).

Nexus - Aplikasi komputasi pertama di dunia yang secara terintegrasi dikembangkan dalam Microsoft Visual Studio.

Fermi ini diimplementasikan dengan 3 milyar transistor, dengan CUDA core sebanyak 512. CUDA core sebanyak 512 itu diatur oleh 16 SM yang artinya tiap SM (Streaming Multiprocessor) mengatur 32 core. GPU berbasis arsitektur Fermi memiliki 6 64-bit memori untuk 384-bit memory interface yang mendukung total 6 GB memory GDDR5 DRAM. Host interface menghubungkan GPU dengan CPU via PCI-express dan Gigathread global scheduler mendistribusikan blok-blok thread ke masing-masing SM thread schedulers.

CUDA Core

SFU

DRAM

Gigathread

Host Scheduler

Instruction CacheWarp SchedulerDispatch UnitRegister File

LD/ST

Untuk gambar yang lebih detail mengenai gambar diatas bisa dilihat pada gambar dibawah ini :

Tiap SM memiliki 16 LD/ST (Load/Store) yang membuat pengalamatan sumber dan tujuan data dapat dihitung dengan 16 threads per clock. Special Function Unit (SFU) bertugas untuk mengeksekusi instruksi yang rumit untuk dipahami seperti sin, cosine, dan lain-lain. Tiap SFU mengeksekusi 1 instruksi per thread, per clock.

SM Schedule threads yang menggabungkan 32 threads secara parallel disebut warps, dan itu diatur oleh warp scheduler. Tiap SM memiliki 2 warp scheduler dan 2 instruction dispatch unit, yang membuat 2 warp dapat dieksekusi secara bersamaan. Cara kerjanya, warp scheduler memilih 2 warp tersebut, dan memberikan satu instruksi untuk tiap warps untuk menggabungkan 16 core, 16 LD/ST, atau 4 SFU sesuai dengan rumit atau tidaknya perintah yang diberikan, dan warp ini bekerja secara independen.

B. Perbandingan Dengan Arsitektur SebelumnyaDengan pengembangan dari arsitektur sebelumnya yaitu Tesla, arsitektur fermi ini memiliki beberapa perbandingan yaitu :

1. Pada Tesla, integer ALU terbatas pada 24-bit precision untuk operasi “multiply” sedangkan pada Fermi, integer ALU mendukung penuh 32 precision untuk semua instruksi secara konsisten sesuai dengan standar Bahasa pemrograman. Variasi instruksi pada Fermi juga lebih banyak dibanding dengan Tesla, seperti, Boolean, compare, convert, bit-field extract, bit-reverse insert dan lain-lain.

2. Untuk double precision application performance, performa arsitektur Fermi bisa meningkat sampai 4 kali lipat dibandingkan dengan Tesla itu bisa dilihat pada grafik dibawah ini

3. Untuk perbandingan-perbandingan lainnya bisa dilihat pada tabel dibawah ini :

Dari jumlah Transistornya sudah terlihat dari seri G80 hanya mempunyai 681 juta dibandingkan dengan Fermi yang memiliki Transistor 3 milyar.Dimana fungsi Transistor adalah untuk menampung pemilihan perhitungan komputasi yang banyak. Dari Jumlah Core juga sangat terlihat G80 dan GT200 hanya mempunyai 128 core dan 240 core, sedangkan Fermi memiliki jumlah 512 Core hamper 2 x lebih banyak jumlah corenya. Dari Jumlah Core nya juga pengaruh saat pemilihan Task atau tugas yang dipilih dalam perhitungan.Dengan semakin banyak opsi yang dimiliki akan sangat mendukung kecepatan untuk system rendering data. Namun dari semua perbedaan ada yang sangat menonjol dimana terdapat pada L1,L2,ECC Memory Support,Kernel dan Load Address Width yang dapat dimaksimalkan di dalam cache memori dan Kernel yang menunjukkan dapat melakukan perpindahan data dengan cepat

C. Contoh Generasi Keluaran Arsitektur FermiGPU yang memakai arsitektur fermi adalah NVIDIA GEFORCE 400’s dan 500’s.

1. NVIDIA GEFORCE 400’s

ModelTransistors

(million)

Die size

(mm2)Businterface

SM count

Core config1,3

Clock rate Fillrate Memory configuration

GFLOPS (FMA)2

TDP(watts)

Core (MHz)

Shader (MHz)

Memory (MHz)

Pixel (GP/s)

Texture (GT/s)

Size (MB)

Bandwidth (GB/s)

DRAM type

Bus width (bit)

GeForce 405 (OEM)

260 57 PCIe 2.0 x16 1 16:8:4 589 1402 1580 2.4 4.7512

102412.6 DDR3 64 44.9 25

GeForce GT 420 (OEM)

585 116 PCIe 2.0 x16 1 48:8:4 700 1400 1800 2.8 5.6 2048 28.8 GDDR3 128 134.4 50

GeForce GT 430 (OEM)

585 116 PCIe 2.0 x16 2 96:16:4 700 140016001800

2.8 11.2 204825.628.8

GDDR3 128 268.8 60

GeForce GT 430

585 116 PCIe 2.0 x16 2 96:16:4 700 1400 1800 2.8 11.2 1024 28.8 GDDR3 128 268.8 49

GeForce 585 116 PCIe 2.0 x16 2 96:16:4 810 1620 1800 3.24 13.2 512 28.8 GDDR3 128 311 65

GT 440 320010242048

51.2 GDDR5

GeForce GT 440 (OEM)

1170 238 PCIe 2.0 x16 3 144:24:24 594 1189 1800 14.26 14.2615363072

43.2 GDDR3 192 342.4 56

GeForce GTS 450 (OEM)

1170 238 PCIe 2.0 x16 3 144:24:24 790 1580 1804 18.96 18.9610241536

86 GDDR5 192 455 106

GeForce GTS 450

1170 238 PCIe 2.0 x16 4 192:32:16 783 1566 1804 12.53 25.06512

10242048

57.73GDDR3GDDR5

128 601.3 106

GeForce GTX 460 SE

1950 332 PCIe 2.0 x16 6 288:48:32 650 1300 3400 20.8 31.2 1024 108.8 GDDR5 256 748.8 150

GeForce GTX 460 (OEM)

1950 332 PCIe 2.0 x16 7 336:56:24 650 1300 3400 20.8 36.4 1024 108.8 GDDR5 256 873.6 150

GeForce GTX 460

1950 332 PCIe 2.0 x16 7

336:56:24

675 1350 3600

16.2

37.8

768 86.4

GDDR5

192

907.2

150

336:56:32 21.6 1024 115.2 256 160

GeForce GTX 460 v2

1950 332 PCIe 2.0 x16 7 336:56:24 778 1556 4008 18.67 43.57 1024 96.2 GDDR5 192 1045.6 160

GeForce GTX 465

3200 529 PCIe 2.0 x16 11 352:44:32 607 1215 3206 19.42 26.71 1024 102.6 GDDR5 256 855.4 200

GeForce GTX 470

3200 529 PCIe 2.0 x16 14 448:56:40 607 1215 3348 24.28 34 1280 133.9 GDDR5 320 1088.6 215

GeForce GTX 480

3200 529 PCIe 2.0 x16 15 480:60:48 700 1401 3696 33.60 42 1536 177.4 GDDR5 384 1345 250

Geforce GTX480

2. NVIDIA GEFORCE 500’s

ModelTransistors

(Million)

Die size

(mm2)Businterface

SM count

Core config1,3

Clock rate Fillrate Memory Configuration

GFLOPs(FMA)2 TDP(watts)Core

(MHz)

Shader (MHz)

Memory (MHz)

Pixel (GP/s)

Texture (GT/s)

Size (MiB)

Bandwidth (GB/s)

DRAM type

Bus width (bit)

GeForce 510

 ? 79 PCIe 2.0 x16 1 48:8:4 523 1046 1796 2.09 4.1810242048

14.0 DDR3 64 100.4 25

GeForce GT 520

 ? 79 PCIe 2.0 x16 1 48:8:4 810 1620 1800 3.24 6.510242048

14.1 DDR3 64 155.5 29

GeForce GT 530

585 116 PCIe 2.0 x16 2 96:16:8 700 1400 1800 5.6 11.210242048

28.8 DDR3 128 268.8 50

GeForce GT 545 DDR3

1170 238 PCIe 2.0 x16 3 144:24:24 720 1440 1800 17.28 17.2815363072

43 DDR3 192 417.7 70

GeForce GT 545 GDDR5

1170 238 PCIe 2.0 x16 3 144:24:16 870 1740 3996 13.92 20.88 1024 62.4 GDDR5 128 501.1 105

GeForce GTX 550 Ti

1170 238 PCIe 2.0 x16 4 192:32:24 900 1800 4104 21.6 28.810242048

98.5 GDDR5 192 691.2 116

GeForce GTX 555

1950 332 PCIe 2.0 x16 6 288:48:24 736 1472 3828 8.8 35.3 1024 91.9 GDDR5 192 847.9 150

GeForce GTX 560 SE

 ? 360 PCIe 2.0 x16 6 288:48:24 736 1472 3828 17.7 35.3 1024 92 GDDR5 192 847.9 150

GeForce GTX 560

1950 360 PCIe 2.0 x16 7 336:56:32810-950

1620-1900

4004-4400

25.945.4-49.8

10242048[6]

128 GDDR5 2561088.6-1276.8

1075[7]150

GeForce GTX 560 Ti

1950 360 PCIe 2.0 x16 8 384:64:32 822 1645 4008 26.3 52.6110242048

128.27 GDDR5 256 1263.4 170

GeForce GTX 560 Ti 448 Core

3000 520 PCIe 2.0 x16 14 448:56:40 732 1464 3800 29.28 41 1280 152 GDDR5 320 1311.7 210

GeForce GTX 570

3000 520 PCIe 2.0 x16 15 480:60:40 732 1464 3800 29.28 43.9212802560

152 GDDR5 320 1405.4 219

GeForce GTX 580

3000[7] 520[7] PCIe 2.0 x16 16 512:64:48 772 1544 4008 37.06 49.4115363072

192.4 GDDR5 384 1581.1 244[8]

GeForce GTX 590

2× 30002× 520

PCIe 2.0 x16 32[9] 1024:128:96[10] 607 1215 3414[10] 58.75[10] 77.72×

1536[9]327.7 GDDR5 2x384 2488.3 365

Geforce GTX 590

D. Contoh Generasi Keluaran Arsitektur TeslaGPU keluaran NVIDIA yang menggunakan arsitektur Tesla adalah Nvidia Geforce 8, 9 , 100, 200, dan 300. Salah satu contohnya adalah sebagai berikut :

E. Referensi1. Whitepaper NVIDIA’s Next Generation CUDA Compute Architecture: Fermi2. https://en.wikipedia.org/wiki/GeForce_400_series [14-09-2015][19.00]3. https://en.wikipedia.org/wiki/GeForce_500_series [14-09-2015][19.05]4. https://en.wikipedia.org/wiki/Fermi_(microarchitecture) [14-09-2015][18.34]5. http://inet.detik.com/read/2009/10/01/101124/1212572/317/fermi-arsitektur-gpu-terbaru-

nvidia [14-09-2015][17.00]