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 条
  • [31] Measuring object-oriented design
    Li, Wei
    Henry, Sallie
    Kafura, Dennis
    Schulman, Robert
    1995, SIGS Publications, Inc., New York, NY, United States (08):
  • [32] ON THE DESIGN OF OBJECT-ORIENTED DATABASES
    TARI, Z
    LECTURE NOTES IN COMPUTER SCIENCE, 1992, 645 : 389 - 405
  • [33] OBJECT-ORIENTED DESIGN - INTRODUCTION
    MCGREGOR, JD
    KORSON, T
    COMMUNICATIONS OF THE ACM, 1990, 33 (09) : 38 - 39
  • [34] A Theory of Object-Oriented Design
    Amnon H. Eden
    Information Systems Frontiers, 2002, 4 : 379 - 391
  • [35] OBJECT-ORIENTED DESIGN FOR MANUFACTURE
    FAUVEL, OR
    JOURNAL OF INTELLIGENT MANUFACTURING, 1994, 5 (01) : 1 - 11
  • [36] Object-oriented design and implementation
    Asai, M
    2000 CERN SCHOOL OF COMPUTING, 2000, 2000 (13): : 91 - 97
  • [37] ADVANCES IN OBJECT-ORIENTED DESIGN
    KLOCKNER, K
    MICROPROCESSING AND MICROPROGRAMMING, 1993, 38 (1-5): : 253 - 253
  • [38] Object-oriented flow design
    Kauler, B
    DR DOBBS JOURNAL, 1996, 21 (10): : 54 - +
  • [39] OBJECT-ORIENTED DESIGN AND SMALLTALK
    不详
    HEWLETT-PACKARD JOURNAL, 1992, 43 (05): : 24 - 24
  • [40] ADVANCES IN OBJECT-ORIENTED DESIGN
    KLOCKNER, K
    MICROPROCESSING AND MICROPROGRAMMING, 1992, 35 (1-5): : 193 - 193