Thema C# und Threading in hochperformanten Desktop-Anwendungen, am Besipiel von
3D Echtzeitsimulation
Thema (englisch) C# and Threading in high performance desktop applications, by example
of a real-time 3D simulation engine
Zusammenfassung Die Simulations- und Spiele-Industrie war schon immer führend wenn es um die
Anwendung neuer Technologien ging. Während allerdings Technologien wie
Shader und DirectX breite Akzeptanz fanden, werden mehr grundsätzliche und
fundamentale Neuerung wie C# und Threading nur zögerlich angewandt.
Diese Arbeit wird analysieren und zeigen, welche Vorteile C# und Threading für
die Software-Industrie haben können, welche alternativen Lösungsansätze damit
möglich sind und wie diese in hochperformanten Desktopanwendungen
anwendbar sind. Des weiteren werden Anwendungsmöglichkeiten für die
Simulations- und Spiele-Industrie, mit ihren speziellen Anforderungen, untersucht.
Zusammenfassung (englisch) To achieve maximum performance on a desktop computer, it used to be
common practice to use highly optimized, straightforward code in order to
utilize the CPU as much as possible. Recently however, with the advent of
multi-core-CPUs, there is an alternative approach to high-performance
computing using threads and thus multiple processors/cores.
This thesis will analyze and show some of these alternative approaches and
what other advantages can be gained by using modern concepts and technologies.
One of these threading concepts, a work-crew, will be implemented in a 3D
game and simulation engine. Because the work-crew-pattern relies on
message-queues to communicate between two threads, two designs for lockfree
queues will be presented and used.
Schlüsselworte Simulation ,
Spiele ,
Game ,
Engine ,
C# ,
High Performance ,
Desktop ,
Threading