A Generic Software Partitioning Algorithm for Pervasive Computing

  • Songqiao Han
  • Shensheng Zhang
  • Yong Zhang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4138)


The ever-changing context and resource limitation of mobile devices and wireless network are two challenges in the development of pervasive computing application. In this paper, we present a generic optimal partitioning algorithm of mobile applications which tries to overcome the two obstacles. The algorithm can reallocate the components of an application among machines for saving resources according to the environment variations. For each resource, we construct a corresponding cost graph, involving computation cost, communication cost and migration cost, in the foundation of the software architecture. Based on the network flow theory, we transform the cost graph into an equivalent flow network that can be optimally cut by well-known Max-flow Min-cut algorithm. As a generic algorithm, the proposed algorithm can be applied to save network bandwidth, time or energy. In addition, it can elegantly allocate the software components among the two machines so as to balance multiple resource consumptions. The simulation results demonstrate the validity and effectiveness of the proposed algorithm.


Software partitioning Algorithm Pervasive computing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Weiser, M.: The computer for the 21st Century. Scientific American 265(3), 66–75 (1991)CrossRefGoogle Scholar
  2. 2.
    Picco, G.P.: Understanding code mobility. In: Proceedings - International Conference on Software Engineering, Limerick, Ireland, p. 834 (2000)Google Scholar
  3. 3.
    Montanari Rebecca, R., Lupu, E., Stefanelli, C.: Policy-based dynamic reconfiguration of mobile-code applications. Computer 37(7), 73–80 (2004)CrossRefGoogle Scholar
  4. 4.
    Zhiyuan, L., Cheng, W., Rong, X.: Task Allocation for Distributed Multimedia Processing on Wirelessly Networked Handheld Devices. In: Proc. of 16th International Symposium on Parallel and Distributed Processing (2002)Google Scholar
  5. 5.
    Mazliza, O., Stephen, H.: Power conservation strategy for mobile computers using load sharing. SIGMOBILE Mob. Comput. Commun. Rev. 2(1), 44–51 (1998)CrossRefGoogle Scholar
  6. 6.
    Ford, J.L.R., Fulkerson, D.R.: Flows in networks. Princeton Univ. Press, Princeton (1962)zbMATHGoogle Scholar
  7. 7.
    Feng, X., Ge, R., Cameron, K.W.: Power and energy profiling of scientific applications on distributed systems. In: Proceedings - 19th IEEE International Parallel and Distributed Processing Symposium, Denver, CO, United States, p. 34 (2005)Google Scholar
  8. 8.
    Stone, H.S.: Multiprocessor scheduling with the aid of network flow algorithms. IEEE Transaction of Software Engineering SE-3(1), 93–95 (1977)Google Scholar
  9. 9.
    Rudenko, A., Reiher, P., Popek, G.J., Kuenning, G.H.: Remote processing framework for portable computer power saving. In: Proc. of the ACM Symposium on Applied Computing, San Antonio, TX, USA, pp. 365–372 (1999)Google Scholar
  10. 10.
    Zhiyuan, L., Cheng, W., Rong, X.: Computation offloading to save energy on handheld devices: a partition scheme. In: Proc. of international Conf. on Compilers, architecture, and synthesis for embedded systems, Atlanta, Georgia, USA, pp. 238–246 (2001)Google Scholar
  11. 11.
    Chen, G., Kang, B.-T., Kandemir, M., Vijaykrishnan, N., Irwin, M.J., Chandramouli, R.: Studying energy trade offs in offloading computation/compilation in Java-enabled mobile devices. IEEE Transactions on Parallel and Distributed Systems 15(9), 795–809 (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Songqiao Han
    • 1
  • Shensheng Zhang
    • 1
  • Yong Zhang
    • 1
  1. 1.Department of Computer Science and EngineeringShanghai Jiaotong UniversityShanghaiP.R. China

Personalised recommendations