Publikation: Graph-Based Procedural Abstraction
Dateien
Datum
Autor:innen
Herausgeber:innen
ISSN der Zeitschrift
Electronic ISSN
ISBN
Bibliografische Daten
Verlag
Schriftenreihe
Auflagebezeichnung
URI (zitierfähiger Link)
DOI (zitierfähiger Link)
Internationale Patentnummer
Link zur Lizenz
Angaben zur Forschungsförderung
Projekt
Open Access-Veröffentlichung
Core Facility der Universität Konstanz
Titel in einer weiteren Sprache
Publikationstyp
Publikationsstatus
Erschienen in
Zusammenfassung
Procedural abstraction (PA) extracts duplicate code segments into a newly created method and hence reduces code size. For embedded micro computers the amount of memory is still limited so code reduction is an important issue. This paper presents a novel approach to PA, that is especially targeted towards embedded systems. Earlier approaches of PA are blind with respect to code reordering, i.e., two code segments with the same semantic effect but with different instruction orders were not detected as candidates for PA. Instead of instruction sequences, in our approach the data flow graphs of basic blocks are considered. Compared to known PA techniques more than twice the number of instructions can be saved on a set of binaries, by detecting frequently appearing graph fragments with a graph mining tool based on the well known gSpan algorithm. The detection and extraction of graph fragments is not as straight forward as extracting sequential code fragments. NP-complete graph operations and special rules to decide which parts can be abstracted are needed. However, this effort pays off as smaller sizes significantly reduce costs on mass-produced embedded systems.
Zusammenfassung in einer weiteren Sprache
Fachgebiet (DDC)
Schlagwörter
Konferenz
Rezension
Zitieren
ISO 690
DREWEKE, Alexander, Marc WÖRLEIN, Ingrid FISCHER, Dominic SCHELL, Thorsten MEINL, Michael PHILIPPSEN, 2007. Graph-Based Procedural Abstraction. International Symposium on Code Generation and Optimization (CGO'07). San Jose, CA, USA, 11. März 2007 - 14. März 2007. In: International Symposium on Code Generation and Optimization (CGO'07). IEEE, 2007, pp. 259-270. ISBN 0-7695-2764-7. Available under: doi: 10.1109/CGO.2007.14BibTex
@inproceedings{Dreweke2007-03Graph-5640, year={2007}, doi={10.1109/CGO.2007.14}, title={Graph-Based Procedural Abstraction}, isbn={0-7695-2764-7}, publisher={IEEE}, booktitle={International Symposium on Code Generation and Optimization (CGO'07)}, pages={259--270}, author={Dreweke, Alexander and Wörlein, Marc and Fischer, Ingrid and Schell, Dominic and Meinl, Thorsten and Philippsen, Michael} }
RDF
<rdf:RDF xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bibo="http://purl.org/ontology/bibo/" xmlns:dspace="http://digital-repositories.org/ontologies/dspace/0.1.0#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:void="http://rdfs.org/ns/void#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" > <rdf:Description rdf:about="https://kops.uni-konstanz.de/server/rdf/resource/123456789/5640"> <dc:creator>Schell, Dominic</dc:creator> <dc:contributor>Dreweke, Alexander</dc:contributor> <dcterms:title>Graph-Based Procedural Abstraction</dcterms:title> <dcterms:hasPart rdf:resource="https://kops.uni-konstanz.de/bitstream/123456789/5640/1/Graph_Based_Procedural_Abstraction.pdf"/> <foaf:homepage rdf:resource="http://localhost:8080/"/> <dspace:hasBitstream rdf:resource="https://kops.uni-konstanz.de/bitstream/123456789/5640/1/Graph_Based_Procedural_Abstraction.pdf"/> <dc:creator>Meinl, Thorsten</dc:creator> <dc:creator>Fischer, Ingrid</dc:creator> <dc:creator>Dreweke, Alexander</dc:creator> <dc:contributor>Fischer, Ingrid</dc:contributor> <dc:contributor>Meinl, Thorsten</dc:contributor> <void:sparqlEndpoint rdf:resource="http://localhost/fuseki/dspace/sparql"/> <bibo:uri rdf:resource="http://kops.uni-konstanz.de/handle/123456789/5640"/> <dc:contributor>Schell, Dominic</dc:contributor> <dcterms:abstract xml:lang="eng">Procedural abstraction (PA) extracts duplicate code segments into a newly created method and hence reduces code size. For embedded micro computers the amount of memory is still limited so code reduction is an important issue. This paper presents a novel approach to PA, that is especially targeted towards embedded systems. Earlier approaches of PA are blind with respect to code reordering, i.e., two code segments with the same semantic effect but with different instruction orders were not detected as candidates for PA. Instead of instruction sequences, in our approach the data flow graphs of basic blocks are considered. Compared to known PA techniques more than twice the number of instructions can be saved on a set of binaries, by detecting frequently appearing graph fragments with a graph mining tool based on the well known gSpan algorithm. The detection and extraction of graph fragments is not as straight forward as extracting sequential code fragments. NP-complete graph operations and special rules to decide which parts can be abstracted are needed. However, this effort pays off as smaller sizes significantly reduce costs on mass-produced embedded systems.</dcterms:abstract> <dc:contributor>Wörlein, Marc</dc:contributor> <dcterms:bibliographicCitation>First publ. in: International Symposium on Code Generation and Optimization, 11 - 14 March 2007, San Jose, California. Los Alamitos, Calif. : IEEE Computer Society, 2007, pp. 259-270</dcterms:bibliographicCitation> <dc:language>eng</dc:language> <dcterms:issued>2007-03</dcterms:issued> <dcterms:isPartOf rdf:resource="https://kops.uni-konstanz.de/server/rdf/resource/123456789/36"/> <dc:rights>Attribution-NonCommercial-NoDerivs 2.0 Generic</dc:rights> <dc:creator>Philippsen, Michael</dc:creator> <dc:date rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2011-03-24T15:57:25Z</dc:date> <dcterms:rights rdf:resource="http://creativecommons.org/licenses/by-nc-nd/2.0/"/> <dspace:isPartOfCollection rdf:resource="https://kops.uni-konstanz.de/server/rdf/resource/123456789/36"/> <dc:format>application/pdf</dc:format> <dc:creator>Wörlein, Marc</dc:creator> <dc:contributor>Philippsen, Michael</dc:contributor> <dcterms:available rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2011-03-24T15:57:25Z</dcterms:available> </rdf:Description> </rdf:RDF>