arsitektur fermi
DESCRIPTION
...TRANSCRIPT
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]