{'fraction_non_alphanumeric': 0.011235955056179775, 'fraction_numerical': 0.0, 'mean_word_length': 5.213953488372093, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Energy Management for Mobile Devices through Computation Outsourcing within Pervasive Smart Spaces

In this work we explore the opportunity Pervasive Spaces could provide as supplemental energy sources. We utilize the nature of pervasive smart spaces to outsource computation that would normally be performed on a mobile device to a surrogate server within the smart space. The decision to outsource a computation depends on whether its energy cost on the device is larger than the cost of communicating its data to the surrogate and receiving the results back. We propose an approach by which the outsourcing decision is made at runtime, while the intelligence that makes that decision is inserted at compile-time as logic that modifies the application code. The merit of our approach is that it is application-independent and requires minimal programmer energy awareness. We utilized a methodology from real-time systems to aid us in constructing the decision making logic. Additionally, we implemented a runtime support on top of Linux to facilitate for testing and experimenting with the client/server outsourcing approach. Our experimental validation and benchmarks shows significant energy saving on the mobile device, which validates our approach as a viable and novel approach to power saving and management for mobile devices.