Schönenberg, Philipp and Wenger, Patrik (2016) COAST Framework 64-Bit. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.
COAST Framework 64-Bit.pdf - Supplemental Material
Download (1MB) | Preview
Abstract
The IFS maintains a C++ web application framework called COAST. It was developed for 32-bit hardware platforms and features an extensive collection of test suites. Our main task consists of:
1. Adding support for 64-bit platforms, while ensuring correct functionality of at least a predefined set of core tests.
2. Measure the performance differences for each of the ported test suites and explain the causes.
The optional goals include porting additional test suites, creating a history of performance measurements over time, improving one of the internal data structures, as well as preparing the code base for modern C++.
The students approached this project by informing themselves about the difference between 32-bit and 64-bit platforms and common porting issues. Subsequently, the affected tests were fixed iteratively. Several performance measurement utilities, ranging from the simple time command to more sophisticated solutions from the perf and Valgrind tool suites, have been evaluated and applied appropriate.
Although easy to fix, the causes for most of the broken tests were hard to track down. They consisted of data type discrepancies, disabled warnings, and a race condition, most of which resulted from the assumption that long is always a 32-bit quantity. All tests from both the mandatory and the optional goals, and the example application CoastRecipes work. On 64-bit, where applications now have access to the full potential of 64-bit systems, including a much higher memory limit, the memory footprint is roughly 1.5× the one on 32-bit. However, the speed-wise performance differences are insignificant. The performance measurement scripts that have been contributed can be used to selectively (e.g. a certain set of test suites) obtain differences between 32-bit and 64-bit, as well as a historical record of performance characteristics.
Item Type: | Thesis (Student Research Project) |
---|---|
Subjects: | Topics > Software > Refactoring Topics > Software > Performance Area of Application > Desktop based Technologies > Programming Languages > C++ Technologies > Web Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Sommerlad, Peter UNSPECIFIED |
Date Deposited: | 05 Oct 2016 11:26 |
Last Modified: | 05 Oct 2016 11:26 |
URI: | https://eprints.ost.ch/id/eprint/541 |