İçeriğe atla

Grafik işlemci biriminde genel amaçlı hesaplama

Grafik işlemci biriminde genel amaçlı hesaplama ya da sıkça kullanılan İngilizce kısaltmasıyla GPGPU, alışılagelmiş yöntemlerde merkezî işlem birimi (CPU) üzerinde yapılan hesaplamaların, alışılagelmiş yöntemlerde sadece grafik hesaplamalarını yapan bilgisayarın grafik işlemci birimi (GPU) üzerinde yapılmasıdır. Ekrana grafik çizilmesi işleminin doğası gereği (ekran üzerindeki pixellerin birbirlerini koşullandırmaması), modern grafik işlemcileri çok çekirdeklidir ve yüksek bir paralelliğin açığa çıkartılmasına olanak sağlayabilirler. Grafik işlemcisi üzerinde hesaplama yapılması; paralel doğadaki algoritmalarda çok ciddi performans artışları sağlayabilmektedir. Özellikle heterojen işlem teknikleriyle GPGPU ve diğer platformlar arası işbirliği sağlanıp çok daha etkin programlar yazılabilmektedir.

GPGPU Platformları

NVIDIA CUDA

CUDA (Compute Unified Device Architecture – Birleşik Hesap Cihazı Mimarisi) NVIDIA firması tarafından 2006 yılında NVIDIA GPU larda genel amaçlı hesaplama yapılmasına olanak sağlamak üzere tasarlanmış bir mimaridir. Linux, Windows ve Mac OSX üzerinde çalışabilen hem düşük seviyeli hem de yüksek seviyeli birer yazılım geliştirme arayüzü(API) NVIDIA tarafından sunulmaktadır. CUDA sadece NVIDIA GPU larda çalışması itibarıyla rakiplerinden farklı olsa da, 2012 yılı itibarıyla dünya üzerinde 300 milyondan fazla CUDA destekli GPU olduğu bilinmektedir.

OpenCL

OpenCL(Open Computing Language), Apple tarafından 2008 yılında kâr amacı gütmeyen teknoloji şirketleri birliği Khronos Group'a önerilen, kabul gördükten sonra spesifikasyonu pek çok şirketin katkılarıyla hazırlanan heterojen hesaplama platformudur. OpenCL; destekli grafik işlemcileri, genel amaçlı işlemciler ve FPGA ler gibi farklı platformlarda hesaplama yapılmasına olanak sağlar. OpenCL AMD, Intel, NVIDIA ve ARM tarafından desteklenmektedir.

DirectCompute

DirectCompute Microsoft tarafından yaratılan, DirectX 10 ve 11 de desteklenen bir GPGPU API sidir. 2012 Mayıs ayı itibarıyla yalnızca Windows Vista ve Windows 7 işletim sistemlerinde desteklenmektedir.

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Sunucu (bilişim)</span> bilgisayar ağlarında, diğer ağ bileşenlerinin (kullanıcıların) erişebileceği, kullanımına ve/veya paylaşımına açık kaynakları barındıran bilgisayar birimi

Sunucu, bilişim alanında "istemci" denilen diğer program ve cihazlara çeşitli işlevler sunan bilgisayar donanımları veya yazılımlarıdır. Bu mimariye istemci-sunucu modeli denir. Sunucular, istemciler arasında veri veya kaynak paylaşımı, bir istemci için hesaplama yapma gibi çeşitli işlevleri yerine getirebilirler. Bu işlevlere genellikle "servis" veya "hizmet" denir. Tek bir sunucu çok sayıda istemciye hizmet verebilir, tek bir istemci de çok sayıda sunucudan hizmet alabilir. İstemci ve sunucu aynı cihaz üzerinde çalışabileceği gibi, istemci ağ üzerinden farklı bir cihazdaki sunucuya da bağlanabilir. Tipik sunucular arasında veritabanı sunucuları, dosya sunucuları, e-posta sunucuları, yazdırma sunucuları, web sunucuları, oyun sunucuları ve uygulama sunucuları sayılabilir.

<span class="mw-page-title-main">Mathematica</span> Hesaplama yazılım programı

Wolfram Mathematica, makine öğrenimi, istatistik, sembolik hesaplama, veri manipülasyonu, ağ analizi, zaman serisi analizine, NLP, optimizasyon, fonksiyonlar ve çeşitli veri türlerinin çizimi, algoritmaların uygulanması, kullanıcı arayüzülerin oluşturulması ve diğer programlama dilinde yazılmış programlarla arayüz oluşturmaya izin veren çeşitli teknik hesaplama alanları için yerleşik kütüphanelere sahip bir yazılım sistemidir. Stephen Wolfram tarafından tasarlanmış ve Champaign, Illinois'deki Wolfram Research tarafından geliştirilmiştir. Wolfram Language, Mathematica'da kullanılan programlama dilidir. Mathematica 1.0, 23 Haziran 1988'de Champaign, Illinois ve Santa Clara, Kaliforniya'da yayınlandı.

<span class="mw-page-title-main">Windows Vista</span> 2007de piyasaya sürülen Windows sürümü

Windows Vista, kişisel bilgisayarlar için geliştirilen Microsoft Windows işletim sistemleri ailesinin sürüm olarak altıncı üyesidir. 22 Temmuz 2005'te gerçek adı duyurulmadan önce Longhorn kod adıyla tanınıyordu. Windows Vista, 30 Ocak 2007'de dünya çapında piyasaya sürülmüştür. Microsoft Türkiye, 24 Ocak 2007 tarihindeki tanıtımıyla Vista'nın resmî lansmanını yapan ilk Microsoft şubesi olmuştur. Windows Vista eski sürümle oranla birçok yeni özellik ve değişikliğe sahiptir. Bu değişim geliştirilmiş grafiksel kullanıcı arayüzü, görsel stil, yeniden tasarlanmış arama fonksiyonları, multimedya araçları, yeniden tasarlanmış ağ iletişimi, görüntü ve yazıcı gibi çeşitli fonksiyonları kapsamaktadır.

<span class="mw-page-title-main">DirectX</span>

DirectX, Microsoft'un video oyunları başta olmak üzere çoklu ortam yazılımlarını rahat, hızlı ve uyumlu şekilde hazırlayabilmek için yarattığı bir uygulama programlama arayüzüdür (API). Şu andaki en güncel resmî sürüm DirectX 12'dir. İçerdiği bileşenlerden bazıları şu şekilde özetlenebilir:

PVM (Parallel Virtual Machine) bilgisayarların paralel bir ağ üzerinden konuşturulması için kullanılan bir yazılım aracıdır. Heterojen makinalardan oluşan bir ağ'ı tek bir dağıtık paralel işlemci olarak kullanmak için geliştirilmiştir.

Nvidia Corporation Santa Clara, Kaliforniya merkezli bir teknoloji şirketidir. Oyunculara yönelik grafik işlemciler (GPU), ayrıca mobil cihazlar ve otomotiv pazarı için yongada sistemler (SoC) üretir. Şirketin ana grafik işlemci ürünleri ailesi olan GeForce, AMD'nin Radeon ürünlerinin doğrudan rakibidir. Nvidia, oyun endüstrisindeki varlığını SHIELD Portable, SHIELD Tablet ve SHIELD Android TV ürünleriyle genişletmiştir.

CUDA, GPU için NVIDIA'nın sunduğu C programlama dili üzerinde eklenti olarak kullanıma sunulan bir mimari ve teknolojidir.

<span class="mw-page-title-main">Lynx (Web tarayıcısı)</span>

Lynx, grafik arabirimi olmayan Unix, FreeDOS ve benzeri işletim sistemleri için kullanılan, komut satırı tabanlı bir İnternet tarayıcısıdır. Kaynağı açık olup, GNU Genel Kamu Lisansı kapsamında dağıtılmaktadır.

Karesel gölgelendirme anlamına gelen Pixel Shader DirectX 9 ve üzeri oyun grafik kütüphanesinde bulunan grafik işleme komut fonksiyonudur. Yeni nesil olarak tanımlanan birçok oyunda bu özellik şartı aranıldığı için bir önceki nesil ekran görüntü kartları bu özelliği desteklemediği için birçok oyun yazılımı çalışmama durumu yaşanmaktadır.

Khronos Group, Inc., 3D grafikler, sanal gerçeklik, artırılmış gerçeklik, paralel hesaplama, görüntü hızlandırma ve makine öğrenimi için telifsiz birlikte çalışabilirlik standartları geliştiren, yayınlayan ve sürdüren 160 kuruluştan oluşan açık, kar amacı gütmeyen, üye odaklı bir konsorsiyumdur. Açık standartlar ve ilgili uygunluk testleri, yazılım uygulamalarının ve ara katman yazılımının, çok çeşitli platformlarda ve cihazlarda dinamik medyanın yazılmasını ve hızlandırılmasını sağlar. Grubun merkezi Beaverton, Oregon'dadır.

<span class="mw-page-title-main">WebGL</span>

WebGL, kâr amacı gütmeyen teknoloji şirketler birliği Khronos Group tarafından yönetilen, web ortamında 3 boyutlu grafik çizimi sağlanmasını amaçlayan bir web standardıdır. OpenGL ES 2.0 üzerine temellendirilmiştir, otomatik hafıza yönetimli JavaScript gibi dillere uyum sağlaması için küçük değişikliklere uğramış olsa da WebGL OpenGL ES'ten çok da farklı değildir. Uyumlu web tarayıcısında herhangi bir eklenti kurulmasını gerektirmeden, HTML5'in Canvas elementi üzerinde 3 boyutlu grafik çizimi yapılmasını mümkün kılmaktadır.

OpenGL SC, OpenGL 1.3 spesifikasyonunun değiştirilmesiyle, güvenlik-kritik yazılım sektöründe kullanılmak üzere tasarlanmış olan OpenGL alt kümesidir. Havacılık elektroniği (aviyonik), askeri, sağlık, endüstriyel ve otomotiv elektroniğinde güvenlik-kritik yazılımlarda kullanılmak üzere tasarlanmıştır. OpenGL SC DO-178 gibi kalite standartlarında dikte edilen %100 grafik güvenilirliği ilkesini karşılamaktadır. OpenGL SC ile gerçek zamanlı çalışan diğer ekipman ile grafik ekipmanı uyum içinde çalışabilmektedir. OpenGL SC kâr amacı gütmeyen Khronos Group tarafından yönetilmektedir.

<span class="mw-page-title-main">OpenCL</span>

OpenCL,, Apple tarafından 2008 yılında kâr amacı gütmeyen teknoloji şirketleri birliği Khronos Group'a önerilen, kabul gördükten sonra spesifikasyonu pek çok şirketin katkılarıyla hazırlanan heterojen hesaplama platformudur. OpenCL; destekli grafik işlemcileri, genel amaçlı işlemciler ve FPGA ler gibi farklı platformlarda hesaplama yapılmasına olanak sağlar. OpenCL AMD, Intel, NVIDIA ve ARM tarafından desteklenmektedir. Ayrıca OpenCL kullanılarak Sony Playstation cihazlarında kullanılan Cell işlemcilerde de hesaplama yapılabilmektedir.

<span class="mw-page-title-main">Windows Server 2012</span> 4 Eylül 2012 tarihinde tam sürümü yayınlanmış Microsoft ürünü

Windows Server 2012, Microsoft tarafından sunulan Windows Server serisinin bir sürümüdür. 4 Eylül 2012 tarihinde tam sürümü yayınlanmıştır, deneme sürümü ise 9 Eylül 2011 tarihinde MSDN kullanıcılarına sunulmuştur. Bu sürümün en avantajlı yanı Özel Bulut sistemine entegre olmuş olmasıdır. Windows Server 2008 R2-nin ardılı, Windows Server 2012 R2-nin öncülü olarak tanıtılmıştır.

<span class="mw-page-title-main">Metal API</span> IOS,macOS and tvOS grafik render uygulama programlama arayüzüdür

Metal API iOS 8-de tanıtılan düşük seviyeli, düşük-havai donanım hızlandırmalı grafik ve bilgisayar uygulama programlama arayüzüdür (API). Bu, bir API altında OpenGL ve OpenCLe benzer işlevselliğini birleştirir. Metal API IOS-a diğer platformlarda benzer API'lerin performans yararlarından bazılarını getirmek için tasarlanmıştır. Metal, 2 Haziran 2014 yılından beri Apple A7 ya da sonrasını kullanan iOS cihazlarında ve 8 Haziran 2015'ten beri OS X El Capitan çalıştıran Mac'lar üzerinde mevcuttur. Metal daha da işlem shaderi getirerek GPGPU programlama yeteneklerini geliştirdi. Metal C++11 dayalı yeni bir gölgeleme dili kullanır; Bu Clang ve LLVM kullanılarak uygulanır. OS X'da Metal desteği WWDC 2015'te açıklandı.

Vulkan düşük maliyetli ve Çapraz platform 3D grafik ve işlem API-sidir. İlk kez Khronos Group tarafından GDC 2015'te açıklandı. Vulkan API başlangıçta, Khronos tarafından yeni nesil "OpenGL girişimi" veya "OpenGL-in sonrakısı" olarak sevk edildi. Vulkan, AMD'nin Mantle API bileşenleri üzerine türetilmiş ve inşa edilmiştir. Khronos'a, bir vakıf niyetiyle AMD tarafından bağışlanmıştır. OpenGL gibi, Vulkan da yüksek performanslı video oyunu ve interaktif medya gibi, gerçek zamanlı 3D grafik uygulamalara hedeflenir ve Direct3D 12 ve Mantle gibi, daha yüksek performans ve daha düşük CPU kullanımı sunuyor. Vulkanın ayrıca 2D grafik uygulamaları işlemek için yeteneği vardır, ancak genellikle 3D için uygundur. Alt CPU kullanımı yanı sıra, Vulkan da daha Çok çekirdekli işlemciler arasında eser yapabiliyor.

<span class="mw-page-title-main">Microsoft Expression Encoder</span>

Microsoft Expression Encoder, Microsoft Windows için kodlayıcı ve doğrusal olmayan bir video düzenleme yazılımıdır.

Nvidia RTX, öncelikle mimari ve ürün tasarımı, bilimsel görselleştirme, enerji araştırması ve film ve video prodüksiyonunda karmaşık büyük ölçekli modeller tasarlamak için kullanılan Nvidia tarafından oluşturulan üst düzey profesyonel bir görsel bilgi işlem platformudur. Nvidia RTX, gerçek zamanlı görsel(ışın) izleme sağlamaktadır. Tarihsel olarak, ışın izleme gerçek zamanlı olmayan uygulamalara ayrılmıştır. Video oyunlarının doğrudan aydınlatmaya ve işlemeleri için önceden hesaplanmış dolaylı katkıya dayanması gerekmekteydi. RTX, buna bir çözüm olmuştur. RTX, aydınlatmaya, gölgelere ve yansımalara tepki veren etkileşimli görüntüler üreten bilgisayar grafiklerinde yeni bir gelişmeyi kolaylaştırmaktadır. RTX, ışın izleme hızlandırma mimarilerinde özellikle Tensor çekirdeklerini kullanan Nvidia Volta-, Turing- ve Ampere tabanlı GPU'larda çalışmaktadır.

3D grafikler, özellikle video oyunlarında o kadar popüler hale geldi ki, bilgisayar grafiği üretiminin tüm aşamalarında süreçleri kolaylaştırmak için özel API'ler oluşturuldu. Bu API'ler, programcıların donanıma soyut bir şekilde erişmeleri için bir yol sağlarken, herhangi bir belirli grafik kartının özel donanımından yararlanmaya devam ettikleri için bilgisayar grafik donanımı üreticileri için de hayati önemde olduklarını kanıtladılar. İlk 3D grafik çerçevesi, muhtemelen 1977'de ACM tarafından yayınlanan Core idi.

<span class="mw-page-title-main">Advanced Simulation Library</span>

Advanced Simulation Library (ASL), ücretsiz ve açık kaynaklı donanım-hızlandırmalı çoklu fizik simülasyon platformudur. Kullanıcıların C++ dilinde özelleştirilmiş sayısal çözücüler yazmasına ve bunları ucuz FPGA, DSP ve GPU'lardan heterojen kümelere ve süper bilgisayarlara kadar çeşitli çok büyük ölçekte paralel mimariler üzerinde dağıtmasına olanak tanır. Dahili hesaplama motoru OpenCL ile yazılmıştır ve matris içermeyen çözüm tekniklerini kullanır. ASL, seviye kümesi yöntemi, lattice Boltzmann, daldırılmış sınır yöntemi|daldırılmış sınır]] gibi çeşitli modern sayısal yöntemleri uygular. Örgü içermeyen, daldırılmış sınır yaklaşımı, kullanıcıların CAD'den doğrudan simülasyona geçmesine olanak tanıyarak ön işleme çabalarını ve potansiyel hata sayısını azaltır. ASL, özellikle hesaplamalı akışkanlar dinamiği alanında çeşitli birleşik fiziksel ve kimyasal olayları modellemek için kullanılabilir.