Direct3D 11 vs 12 : A Performance Comparison Using Basic Geometry

Context. Computer rendered imagery such as computer games is a field with steady development. To render games an application programming interface (API) is used to communicate with a graphical processing unit (GPU). Both the interfaces and processing units are a part of the steady development in ord...

Full description

Bibliographic Details
Main Author: Olofsson, Mikael
Format: Others
Language:English
Published: Blekinge Tekniska Högskola, Institutionen för kreativa teknologier 2016
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:bth-13598
Description
Summary:Context. Computer rendered imagery such as computer games is a field with steady development. To render games an application programming interface (API) is used to communicate with a graphical processing unit (GPU). Both the interfaces and processing units are a part of the steady development in order to be able to push the limits of graphical rendering. Objectives. This thesis investigates if the Direct3D 12 API provides higher rendering performance when compared to its predecessor Direct3D 11. Methods. The method used is an experiment, in which a benchmark rendering basic shaded geometry using both of the APIs while measuring their performance was developed. The focus was aimed at testing API interaction and comparing Direct3D 11 against Direct3D 12. Results. Statistics gained from the benchmark suggest that in this experiment Direct3D 11 offered the best rendering performance in the majority of the cases tested, although Direct3D 12 had specific scenarios where it performed better. Conclusions. As a conclusion the benchmark gave contradicting results when compared to other studies. This could be dependent on the implementation, software or hardware used. In the tests Direct3D 12 was closer to its Direct3D 11 counterpart when more cores were used. A platform with more processing cores available to execute in parallel could reveal if Direct3D 12 could offer better performance in that experimental setting. In this study Direct3D 12 was implemented as to imitate Direct3D 11. If the implementation was further aligned with Direct3D 12 recommendations other results might be observed. Further study could be conducted to give a better evaluation of rendering performance.