Mobile Devices-aware Refactorings for Scientific Computational Kernels

The increasing number of mobile devices with ever-growing process- ing capabilities, make them interesting for scientific applications development. However, we must take into account that mobile devices still have limited ca- pabilities compared to fixed devices. Besides, mobile devices rely on battery as energy supply. For these reasons, this paper analyzes different micro-benchmarks battery consumption given by common operations in scientific computational ker- nels. Indirectly, we propose good programming practices or code refactorings in order to minimize mobile devices battery consumption.

[1]  Alejandro Zunino,et al.  Enhancing the BYG gridification tool with state-of-the-art Grid scheduling mechanisms and explicit tuning support , 2012, Adv. Eng. Softw..

[2]  George Athanasiou,et al.  A data locality methodology for matrix–matrix multiplication algorithm , 2010, The Journal of Supercomputing.

[3]  Joshua J. Bloch Effective Java : programming language guide , 2001 .

[4]  Ami Marowka,et al.  The GRID: Blueprint for a New Computing Infrastructure , 2000, Parallel Distributed Comput. Pract..

[5]  S. Agarwal,et al.  Image Compression Using Simple Arithmetic Operations , 2007, International Conference on Computational Intelligence and Multimedia Applications (ICCIMA 2007).

[6]  Ian Foster,et al.  The Grid 2 - Blueprint for a New Computing Infrastructure, Second Edition , 1998, The Grid 2, 2nd Edition.

[7]  Marcelo Campo,et al.  Mobile Grid SEAS: Simple Energy-Aware Scheduler , 2010 .

[8]  Anthony T. Patera,et al.  High-Fidelity Real-Time Simulation on Deployed Platforms , 2011 .

[9]  Scott Hazelhurst,et al.  Truth in advertising: reporting performance of computer programs, algorithms and the impact of architecture and systems environment , 2010, South Afr. Comput. J..

[10]  Marcelo R. Campo,et al.  Introducing mobile devices into Grid systems: a survey , 2011, Int. J. Web Grid Serv..

[11]  Walter Krämer,et al.  C-XSC 2.0: A C++ Library for Extended Scientific Computing , 2003, Numerical Software with Result Verification.

[12]  Lieven Eeckhout,et al.  Statistically rigorous java performance evaluation , 2007, OOPSLA.

[13]  이승일 Efficient Java exception handling in Just-in-Time compilation , 2000 .

[14]  Pravin M. Vaidya,et al.  An algorithm for linear programming which requires O(((m+n)n2+(m+n)1.5n)L) arithmetic operations , 1990, Math. Program..

[15]  Alessandro De Gloria,et al.  JSBricks: a suite of microbenchmarks for the evaluation of Java as a scientific execution environment , 2001, Future Gener. Comput. Syst..

[16]  Aske Simon Christensen,et al.  Precise Analysis of String Expressions , 2003, SAS.

[17]  Cheng-Min Lin,et al.  Benchmark Dalvik and Native Code for Android System , 2011, 2011 Second International Conference on Innovations in Bio-inspired Computing and Applications.

[18]  Joseph A. Paradiso,et al.  Energy scavenging for mobile and wireless electronics , 2005, IEEE Pervasive Computing.

[19]  Jon Crowcroft,et al.  The case for crowd computing , 2010, MobiHeld '10.

[20]  Dror Rawitz,et al.  The Minimum Substring Cover problem , 2008, Inf. Comput..

[21]  I. Willner,et al.  Elementary arithmetic operations by enzymes: a model for metabolic pathway based computing. , 2006, Angewandte Chemie.

[22]  Mira Mezini,et al.  VM performance evaluation with functional models: an optimist's outlook , 2009, VMIL '09.

[23]  Spiridon D. Likothanassis,et al.  Exploiting java scientific libraries with the scala language within the scalalab environment , 2011, IET Softw..

[24]  Jae Wook Jeon,et al.  Evaluating performance of Android platform using native C for embedded systems , 2010, ICCAS 2010.