Optional code as a method of program adaptation
Description
Full text not available
Abstract
I mobile og innbygde systemer har man begrenset prosessorkapasitet og energi, og dermed er det viktig å utnytte de tilgjengelige ressursene effektivt. Det eksisterer flere velkjente teknikker for å optimere energibruken på maskinvarenivå, men færre teknikker som kan brukes på programvarenivået. Denne artikkelen utforsker en metode for å optimere kjøretid og energibruk ved å la brukeren utelate eller hoppe over valgfrie deler av programmet. Når metoden gis en kildekode der valgfrie deler av programmet har blitt markert av brukeren kan den automatisk identifisere ytterlige deler av programmet som kan hoppes over ved hjelp av programmets "system dependence graph". Ideene somdiskuteres i artikkelen ble implementert i et prototypeverktøy og evaluert på et utvalg av prosjekter med åpen kildekode. Resultatene viser at metoden kan være nyttig, og at den kan danne grunnlaget for videre utvikling. In mobile and embedded systems, efficient utilization of limited computational and energy resources is an important concern. While there exist well known techniques to optimize energy at the hardware level, there are fewer techniques for optimizing energy at the software level. This paper explores a method of optimizing runtime and energy consumption by letting the program author deliberately leave out or skip optional parts of the program. Given a source code where optional functionality has been annotated by the user, the method automatically identifies addditional parts of the program that can be skipped, using program's system dependence graph. The ideas presented in this paper were implemented in a prototype tool and evaluated on a selection of open source projects. Results show that the method can be useful, suggesting that it may be the basis for further development.