Skip to content
GAMES · REVIEWS · DATABASE
Forum

Vulkan API’de Yazilim-Surucu Entegrasyonu ve Dusuk Seviyeli Optimizasyon Stratejileri

Vulkan, düşük maliyetli ve çapraz platformlu bir 3D grafik ve işlem API'si olarak, yazılım katmanı ile GPU sürücüsü arasındaki etkileşimde önemli...

Published:

Vulkan, düşük maliyetli ve çapraz platformlu bir 3D grafik ve işlem API’si olarak, yazılım katmanı ile GPU sürücüsü arasındaki etkileşimde önemli optimizasyonlar sunar. Khronos Group tarafından GDC 2015’te açıklanan API, başlangıçta yeni nesil bir “OpenGL girişimi” veya “OpenGL’in sonrakisi” olarak tanımlandı. AMD’in Mantle API bileşenleri üzerine türetilmiş ve inşa edilmiş olan Vulkan, Khronos’a vakıf niyetiyle AMD tarafından bağışlanmıştır. OpenGL gibi, gerçek zamanlı 3D grafik uygulamalarına, özellikle yüksek performanslı video oyunu ve interaktif medyaya hedeflenir. Direct3D 12 ve Mantle gibi, daha yüksek performans ve daha düşük CPU kullanımı sunar.

API’nin yazılım-sürücü entegrasyonundaki temel yaklaşımı, alt yükü azaltmak, GPU üzerinde daha fazla denetim sağlamak ve CPU kullanımını düşürmek üzerine kuruludur. Vulkan, sürücü havai CPU iş yüklerini azaltarak alt yük sunmaktadır. Harmanlama kullanımı yoluyla ek hesaplama yapmak için ücretsiz CPU bırakarak veya herhangi bir şekilde render yapma ile CPU üzerindeki yükü azaltır. Bu tasarım, API’nin çok çekirekli işlemciler üzerinde ölçeklenebilmesini sağlar. Direct3D 11 ve OpenGL 4 başlangıçta tek çekirdekli işlemciler ile kullanılmak üzere tasarlanmış, ancak sadece çok çekirdeklerde çalıştırılması gereken şekilde büyümüştür.

Sürücü katmanındaki en dikkat çekici optimizasyon, shader işleme yaklaşımındadır. OpenGL, GLSL için kendi derleyici uygulamasını her OpenGL sürücüsünü zorlar ve shader için yüksek seviyeli GLSL dilini kullanır. Bir Vulkan sürücüsü ise sadece GPU’ya özel optimizasyon ve kod üretimi yapması gerekir. Bu yaklaşım, kolay sürücü onarımında ve teoride daha küçük sürücü paketleriyle sonuçlanır. Bu da yazılım ile sürücü arasındaki sorumluluk paylaşımını net biçimde ortaya koyar.

Choose Gamer24H as a preferred source on Google

Vulkan’ın çoklu-GPU desteği, yazılım-sürücü entegrasyonunun başka bir boyutunu temsil eder. SIGGRAPH 2016’da Khronos, DirectX 12 tarafından sunulmasına benzer biçimde Vulkan’ın otomatik çoklu-GPU özellikleri için destek alacağını duyurdu. Dahil olan çoklu-GPU desteği, SLI veya Crossfire gereksinimini ortadan kaldırır ve aynı model olmasını gerektiren grafik kartları kısıtlamasını kaldırır. API, çoklu-GPU için akıllıca iki veya daha fazla tamamen farklı GPU’lar arasında iş yükü bölümü sağlar. Örneğin, CPU’da dahil olan entegre GPU’lar, hafif bir performans artışı için bir high-end özel GPU ile birlikte kullanılabilir.

Pencere sistemi entegrasyonu da Vulkan’ın sürücü katmanının bir parçasıdır. EGL’in OpenGL ES için yaptığı gibi, Vulkan Pencere Sistemi Arabirimi (WSI) Vulkan için yapılır. EGL, yerel platform pencere sistemi ile arabirim oluşturmak için OpenGL ES programları tarafından kullanılır. GPU PerfStudio 3.6 (CodeXL), Windows ve Linux üzerinde Vulkan desteği sunar.

Uyumluluk açısından Vulkan’ın ilk özellikleri, şu anda OpenGL ES 3.1 veya OpenGL 4.x ve yukarısını destekleyen donanım üzerinde çalışacağı şeklinde belirlenmiştir. Vulkan desteği yeni grafik sürücüleri gerektirdiğinden, bu mutlak anlamına gelmez; OpenGL ES 3.1 veya OpenGL 4.x destekleyen mevcut her aygıt Vulkan sürücülerine sahip olmayabilir. Android 7.0 Nougat tamamen Vulkanı destekler. iOS ve MacOS için Vulkan desteği, Apple tarafından henüz ilan edilmemiştir, ancak en azından şirket iOS ve macOS cihazları üzerinde Metal API üzerinde çalışan bir Vulkan uygulamasını sağlamayı amaçlamaktadır.

Vulkan’ın 2D grafik uygulamaları işlemek için yeteneği bulunmaktadır, ancak genellikle 3D için uygundur. Alt CPU kullanımı yanı sıra, Vulkan aynı zamanda çok çekirekli işlemciler arasında verimli çalışabilmektedir.

This explanation is adapted from Wikipedia and is available under CC BY-SA 4.0.

Related Article: Overcooked broke you apart and Stage Fright is there to put you back together →
Source: Vikipedi (Wikipedia) ↗
COMMUNITY / DISCUSSION

1 comment

Share your thoughts

Search Gamer24H

Enter at least 3 characters.

Explore

APPEARANCE

Choose your color theme

Auto mode follows your device and switches to Xbox, PlayStation, or Nintendo colors on matching stories. Your manual choice stays on this device.