Mantle Logo

Kao što smo u uvodu napisali, Mantle performanse na novom Thiefu smo testirali uz pomoć tri grafičke kartice i dvije platforme. Sve tri kartice su bile Sapphireove – R7 240 LP, R7 265 Dual-X i R9 290 Tri-X. Kako bi uopće mogli doći do Mantlea potrebno ga je bilo otključati na Steamu uz pomoć Press pass-a, te isto tako instalirati Catalyst 14.3 beta drivere. Nakon toga se u Thiefu otvara mogućnost korištenja Mantela kao API-a.

AMD navodi i neke poznate probleme koji su prisutni u ovoj fazi i koji će se s vremenom ispraviti, a donosimo ih u izvornom engleskom:

  • Multi-GPU support under the Mantle codepath will be added to Thief in a future application patch
  • Mantle performance for GPUs with 2GB framebuffers will receive additional optimization in a future application path for Thief. These products may see limited gains in scenarios requiring large amount of video memory (such as high quality settings with SuperSampling Anti-Aliasing enabled), and performance optimizations are under investigation.

AMD se koncentrirao na podršku za Radeon R9 290X, R9 290, R9 280, R9 270, R7 260X, R7 260, HD 7000 Series, HD 8000 Series, A10-7850K i A10-7700K, dok će ostali proizvodi biti podržani u budućim revizijama Catalysta.

Za sve koji još uvijek ne znaju ponovimo kako je Mantle API (Application Programming Interface), tj. programski jezik kojeg proizvođači igara mogu koristiti u razvoju svojih proizvoda i omogućiti ljepšu grafiku i bolju iskoristivost dostupnog hardvera – trenutno je to aktualna GCN arhitektura. Mantle donosi slične funkcionalnosti kao i DirectX i OpenGL, ali je to API nižeg nivoa, tj. on je više prilagođen načinu na koji današnje grafičke kartice (GCN) nativno izvršavaju kod. Najveći benefit ovoga je naravno povećanje performansi, tj. smanjivanje vremena u kojem CPU i GPU provode u on-the-fly prevođenju, razumijevanju i reorganizaciji koda prije nego što on može biti izvršen i korisniku predstavljen kao grafika.

Thief test

Mantle je prvenstveno dizajniran za poboljšanje performansi u situacijama u kojima je CPU limitirajući ograničavajući faktor (tzv. CPU – bound cases).  To se najčešće naravno dešava u igrama, gdje postojeći API-ji imaju visoki tzv. „validation overhead“ , uz poteškoće sa skaliranjem na više procesorskih jezgri . Mantle tu omogućuje napredak za većinu entry-level i mid-range procesora, uz pomoć sljedećih tehnika:

  • Low-overhead validation i procesuiranje API naredbi
  • Explicit command buffer control
  • Close to linear performance scaling from reordering command buffers onto multiple CPU cores
  • Reduced runtime shader compilation overhead

Mantle ima manji utjecaj u slučajevima u kojima se koriste visoke rezolucije i maksimalne postavke (što smo vidjeli i kod naših testova), jer takve postavke maksimiziraju mogućnosti GPU-a pa API tu nema velikog utjecaja. Mantle može omogućiti poboljšanja u određenim GPU-bound slučajevima, no razvojni timovi moraju koristiti sljedeće značajke:

  • Reduction of command buffers submissions
  • Explicit control of resource compression, expands and synchronizations
  • Asynchronous DMA queue for data uploads independent from the graphics engine
  • Asynchronous compute queue for overlapping of compute and graphics workloads
  • Data formats optimizations via flexible buffer/image access
  • Advanced Anti-Aliasing features for MSAA/EQAA optimizations

Mantle je još uvijek u beta fazi i pravi će se pomaci u performansama vidjeti tek u narednim mjesecima, kada se i programeri bolje upoznaju sa Mantle mogućnostima.