dc.contributor.author |
Bartzas, A |
en |
dc.contributor.author |
Peon-Quiros, M |
en |
dc.contributor.author |
Poucet, C |
en |
dc.contributor.author |
Baloukas, C |
en |
dc.contributor.author |
Mamagkakis, S |
en |
dc.contributor.author |
Catthoor, F |
en |
dc.contributor.author |
Soudris, D |
en |
dc.contributor.author |
Mendias, JM |
en |
dc.date.accessioned |
2014-03-01T01:34:36Z |
|
dc.date.available |
2014-03-01T01:34:36Z |
|
dc.date.issued |
2010 |
en |
dc.identifier.issn |
0164-1212 |
en |
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/20772 |
|
dc.subject |
Analysis |
en |
dc.subject |
Dynamic data types |
en |
dc.subject |
Embedded systems |
en |
dc.subject |
Optimization |
en |
dc.subject |
Profiling |
en |
dc.subject |
Software metadata |
en |
dc.subject.classification |
Computer Science, Software Engineering |
en |
dc.subject.classification |
Computer Science, Theory & Methods |
en |
dc.subject.other |
Analysis |
en |
dc.subject.other |
Appropriate techniques |
en |
dc.subject.other |
Data type |
en |
dc.subject.other |
Dynamic applications |
en |
dc.subject.other |
Dynamic data types |
en |
dc.subject.other |
Engineering process |
en |
dc.subject.other |
Input datas |
en |
dc.subject.other |
Number of cycles |
en |
dc.subject.other |
Representative sample |
en |
dc.subject.other |
Scope of application |
en |
dc.subject.other |
Software applications |
en |
dc.subject.other |
Specific hardware |
en |
dc.subject.other |
Static techniques |
en |
dc.subject.other |
Dynamic analysis |
en |
dc.subject.other |
Embedded software |
en |
dc.subject.other |
Embedded systems |
en |
dc.subject.other |
Input output programs |
en |
dc.subject.other |
Metadata |
en |
dc.subject.other |
Optimization |
en |
dc.subject.other |
Data handling |
en |
dc.title |
Software metadata: Systematic characterization of the memory behaviour of dynamic applications |
en |
heal.type |
journalArticle |
en |
heal.identifier.primary |
10.1016/j.jss.2010.01.001 |
en |
heal.identifier.secondary |
http://dx.doi.org/10.1016/j.jss.2010.01.001 |
en |
heal.language |
English |
en |
heal.publicationDate |
2010 |
en |
heal.abstract |
Development of new embedded systems requires tuning of the software applications to specific hardware blocks and platforms as well as to the relevant input data instances. The behaviour of these applications heavily relies on the nature of the input data samples, thus making them strongly data-dependent. For this reason, it is necessary to extensively profile them with representative samples of the actual input data. An important aspect of this profiling is done at the dynamic data type level, which actually steers the designers choice of implementation of these data types. The behaviour of the applications is then characterized, through an analysis phase, as a collection of software metadata that can be used to optimize the system as a whole. In this paper we propose to represent the behaviour of data-dependent applications to enable optimizations, rather than to analyze their structure or to define the engineering process behind them. Moreover, we specifically limit ourselves to the scope of applications dominated by dynamically allocated data types running on embedded systems. We characterize the software metadata that these optimizations require, and we present a methodology, as well as appropriate techniques, to obtain this information from the original application. The optimizations performed on a complete case study, utilizing the extracted software metadata, achieve overall improvements of up to 42% in the number of cycles spent accessing memory when compared to code optimized only with the static techniques applied by GNU G++. (C) 2010 Elsevier Inc. All rights reserved. |
en |
heal.publisher |
ELSEVIER SCIENCE INC |
en |
heal.journalName |
Journal of Systems and Software |
en |
dc.identifier.doi |
10.1016/j.jss.2010.01.001 |
en |
dc.identifier.isi |
ISI:000278287700015 |
en |
dc.identifier.volume |
83 |
en |
dc.identifier.issue |
6 |
en |
dc.identifier.spage |
1051 |
en |
dc.identifier.epage |
1075 |
en |