Schuetz, Leonard and Joss, Marcel and Honegger, Pascal (2023) Tama Compiler Overhaul. Other thesis, OST Ostschweizer Fachhochschule.
HS 2022 2023-SA-EP-Schuetz-Joss-Honegger-Compilerbau - Tama Compiler Overhaul.pdf - Supplemental Material
Download (744kB)
Abstract
Triamec Motion AG manufactures ultra-precision servo drives that can be programmed using the C# programming language and the Tama framework. These servo drives run a virtual machine that executes a proprietary bytecode format, which is generated by the Tama compiler. The compiler previously relied on Microsoft's deprecated CCI library to read C# assembly files and transpile them to the Tama bytecode format.
In this project, our goal was to replace the unmaintained CCI library with a modern, actively maintained alternative. After evaluating several options, we chose to replace the CCI library with ILSpy. ILSpy is a modern, actively maintained and well documented .NET decompiler with an active community.
In addition to ensuring the ability to support newer versions of .NET in the future, we also implemented a computed goto performance optimization in the servo's runtime, resulting in an overall performance increase of approximately 16%. There is still potential for further performance gains, for example by implementing a template-based just-in-time (JIT) compiler in the servo's runtime.
Item Type: | Thesis (Other) |
---|---|
Subjects: | Topics > Software Topics > Software > Optimization Area of Application > Industry Technologies > Programming Languages > C# Technologies > Frameworks and Libraries > .NET |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Kramer, Philipp UNSPECIFIED |
Date Deposited: | 22 Feb 2023 08:27 |
Last Modified: | 22 Feb 2023 08:27 |
URI: | https://eprints.ost.ch/id/eprint/1080 |