Evaluating the performance of object-oriented and data-oriented design with multi-threading in game development

被引:0
|
作者
Wingqvist, David [1 ]
Wickstrom, Filip [1 ]
Memeti, Suejb [1 ]
机构
[1] Blekinge Inst Technol BTH, Dept Comp Sci DIDA, Karlskrona, Sweden
关键词
data-oriented design; object-oriented design; multi-threading; game development;
D O I
10.1109/GEM56474.2022.10017610
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The frame rate of a game is important for both the end-user and the developer, and for a game to be considered playable, the minimum requirement of 60 FPS should be maintained. With respect to the programming design pattern, the current industry standard is to use Object-Oriented Design (OOD). While the demand for efficient game applications is increasing, applications developed using OOD are struggling to efficiently utilize the available computing resources and consequently meet the minimum frame-rate requirements. A design pattern that may be able to cope with the current and future requirements of resource-intensive game applications is the Data-Oriented Design (DOD), which focuses on the efficient CPU memory utilization. The main difference between OOD and DOD is related to the way data is organized and accessed. While DOD is able to efficiently utilize the cache memory, programming using the data-oriented design is perceived as much more complex compared to programming applications using object-oriented design. In this paper, we will first develop a simple game application using both programming design patterns. Thereafter, we evaluate the performance of both implementations with respect to the overall execution time, CPU and memory utilization. Furthermore, we will develop the corresponding multi-threading versions to explore how the memory is utilized when multiple cores access data from shared cache memory. The results of the empirical evaluation show that the code sections that use DOD perform significantly faster than the corresponding parts implemented using OOD for both single-threaded and multi-threaded applications. The maximum observed speedup of 13.25 times demonstrates that games and applications developed using DOD can utilize the available resources more efficiently.
引用
收藏
页数:6
相关论文
共 50 条
  • [41] MEASURING OBJECT-ORIENTED DESIGN
    LI, W
    HENRY, S
    KAFURA, D
    SCHULMAN, R
    JOURNAL OF OBJECT-ORIENTED PROGRAMMING, 1995, 8 (04): : 48 - 55
  • [42] Strategies in object-oriented design
    Chatel, S
    Detienne, F
    ACTA PSYCHOLOGICA, 1996, 91 (03) : 245 - 269
  • [43] THE PROCESS OF OBJECT-ORIENTED DESIGN
    DECHAMPEAUX, D
    LEA, D
    FAURE, P
    SIGPLAN NOTICES, 1992, 27 (10): : 45 - 62
  • [44] Guiding object-oriented design
    MacDonald, A
    Carrington, D
    TOOLS 28: TECHNOLOGY OF OBJECT-ORIENTED LANGUAGES, PROCEEDINGS, 1998, 28 : 88 - 100
  • [45] Object-Oriented Data Modeling
    Tillmann, G.
    DBMS, 1995, 8 (10):
  • [46] Design of a data-oriented evolutionary controller
    Fu, Qiuhao
    Koiwai, Kazushige
    Yamamoto, Toru
    IEEJ Transactions on Electronics, Information and Systems, 2017, 137 (07): : 914 - 915
  • [47] Data design approach for object-oriented FEM programs
    Kong, X.-A.
    Computers and Structures, 1996, 61 (03): : 503 - 513
  • [48] A data design approach for object-oriented FEM programs
    Kong, XA
    COMPUTERS & STRUCTURES, 1996, 61 (03) : 503 - 513
  • [49] Coupling Metrics for Object-Oriented Data Warehouse Design
    Sabharwal, Sangeeta
    Nagpal, Sushama
    Aggarwal, Gargi
    2015 2ND INTERNATIONAL CONFERENCE ON COMPUTING FOR SUSTAINABLE GLOBAL DEVELOPMENT (INDIACOM), 2015, : 918 - 922
  • [50] Object-Oriented Development, Revisited
    Booch, G.
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2025, 51 (03) : 725 - 727