This Is AuburnElectronic Theses and Dissertations

Show simple item record

Energy Profiles of Java Collections Classes


Metadata FieldValueLanguage
dc.contributor.advisorOverbey, Jeffreyen_US
dc.contributor.authorHasan, Samiren_US
dc.date.accessioned2016-04-22T21:26:05Z
dc.date.available2016-04-22T21:26:05Z
dc.date.issued2016-04-22
dc.identifier.urihttp://hdl.handle.net/10415/5048
dc.description.abstractWe created detailed profiles of the energy consumed by common operations done on Java List, Map, and Set abstractions. The results show that the alternative data types for these abstractions differ significantly in terms of energy consumption depending on the operations. For example, an ArrayList consumes less energy than a LinkedList if items are inserted at the middle or at the end, but consumes more energy than a LinkedList if items are inserted at the start of the list. To explain the results, we explored memory usage and bytecode executed during an operation. Expensive computation tasks in bytecode traces appeared to have energy impact, but memory usage did not contribute. We evaluated our profiles by using them to selectively replace Collections types used in six applications and libraries. We found that choosing a wrong Collections type, as indicated by our profiles, can cost as much as 300% more energy than the more efficient choice. Our work shows that the usage context of a data structure and our measured energy profiles can be used to decide between alternative Collections implementations for energy efficiency.en_US
dc.subjectComputer Scienceen_US
dc.titleEnergy Profiles of Java Collections Classesen_US
dc.typeMaster's Thesisen_US
dc.embargo.statusNOT_EMBARGOEDen_US
dc.contributor.committeeUmphress, Daviden_US
dc.contributor.committeeNarayanan, Harien_US
dc.contributor.committeeHafiz, Munawaren_US

Files in this item

Show simple item record