Date of Award


Degree Name

MS in Computer Science


Computer Science


College of Engineering


Christian Eckhardt

Advisor Department

Computer Science

Advisor College

College of Engineering


The entity component system architecture (ECSA) is a data-oriented composition pattern and a data-driven design pattern. Data-oriented software takes into consideration generalized knowledge of hardware. Data-driven design is a methodology used to replace inflexible code with reusable components that can be added, deleted, or modified in interactive systems and games. This thesis explores the ECSA and its alternatives and their strengths and weaknesses. The paper details the creation of an ECSA and benchmarks its performance against object-oriented architectures. The hypothesis of this thesis is that the ECSA has CPU cache performance advantages over object-oriented architectures as tested by multiple benchmarks. The results suggest that the ECSA provides superior CPU performance. These results could be valuable for interactive game developers to get higher frame rates out of their games, MMORPG server developers to process millions of entities per second, and mobile developers to create battery-efficient apps.