Abstract:
Cyber Foraging is a concept to take advantage of the nearby underutilized computing
resources (surrogates) to improve user experience of resource constraint handheld
devices, by improving their performance while improving battery consumption. It’s
not always beneficial to offload the tasks to the surrogates so there is a need for a
decision making engine to only offload tasks, which will result in overall
improvement in performance and battery consumption. There are many attempts to
enable cyber foraging in smartphones, each having their own decision making
mechanisms, some using fully automated Machine Learning Algorithms and
Heuristic Data; and it has been proven inefficient even though with higher accuracy.
Furthermore, these approaches fail to deliver accurate results when it comes to new
applications without any historical data. The key drawback of them can be seen as
the resource intensive decision making engine, which negatively effects on the
overall performance and battery consumption of the device. We introduce a model
for decision making engine, which takes context parameters like remaining battery,
worst case complexity of the method, etc. into account, when making the choice to
offload or not to the surrogate, during the runtime. The engine benchmarks the
surrogate according to their capabilities such as: available JVM memory, accessible
processing cores, which can be harnessed by the surrogate service used by the cyber
foraging enabled mobile application using static policies. These indexes will then be
used to compare with the worst case complexity value, which the developer has
assigned to the identified intensive parts of the application. This approach will give
a satisfactory amount of accuracy with extremely low cost of energy and higher
performance. Further research is being done on addressing more complex use cases
with more advanced algorithms towards a stable and reliable solution.