Wishbone: Profile-based Partitioning for Sensornet Applications

The ability to partition sensor network application code across sensor nodes and backend servers is important for running complex, data-intensive applications on sensor platforms that have CPU, energy, and bandwidth limitations. This paper presents Wishbone, a system that takes a dataflow graph of o...

Full description

Bibliographic Details
Main Authors: Newton, Ryan, Toledo, Sivan, Girod, Lewis D., Balakrishnan, Hari, Madden, Samuel R.
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:en_US
Published: USENIX Association 2010
Online Access:http://hdl.handle.net/1721.1/58107
https://orcid.org/0000-0002-7470-3265
https://orcid.org/0000-0003-3715-8701
https://orcid.org/0000-0002-1455-9652
_version_ 1811090013582000128
author Newton, Ryan
Toledo, Sivan
Girod, Lewis D.
Balakrishnan, Hari
Madden, Samuel R.
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Newton, Ryan
Toledo, Sivan
Girod, Lewis D.
Balakrishnan, Hari
Madden, Samuel R.
author_sort Newton, Ryan
collection MIT
description The ability to partition sensor network application code across sensor nodes and backend servers is important for running complex, data-intensive applications on sensor platforms that have CPU, energy, and bandwidth limitations. This paper presents Wishbone, a system that takes a dataflow graph of operators and produces an optimal partitioning. With Wishbone, users can run the same program on a range of sensor platforms, including TinyOS motes, smartphones running JavaME, and the iPhone. The resulting program partitioning will in general be different in each case, reflecting the different node capabilities. Wishbone uses profiling to determine how each operator in the dataflow graph will actually perform on sample data, without requiring cumbersome user annotations. Its partitioning algorithm models the problem as an integer linear program that minimizes a linear combination of network bandwidth and CPU load and uses program structure to solve the problem efficiently in practice. Our results on a speech detection application show that the system can quickly identify good trade-offs given limitations in CPU and network capacity.
first_indexed 2024-09-23T14:30:10Z
format Article
id mit-1721.1/58107
institution Massachusetts Institute of Technology
language en_US
last_indexed 2024-09-23T14:30:10Z
publishDate 2010
publisher USENIX Association
record_format dspace
spelling mit-1721.1/581072022-09-29T09:39:26Z Wishbone: Profile-based Partitioning for Sensornet Applications Newton, Ryan Toledo, Sivan Girod, Lewis D. Balakrishnan, Hari Madden, Samuel R. Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Madden, Samuel R. Newton, Ryan Toledo, Sivan Girod, Lewis D. Balakrishnan, Hari Madden, Samuel R. The ability to partition sensor network application code across sensor nodes and backend servers is important for running complex, data-intensive applications on sensor platforms that have CPU, energy, and bandwidth limitations. This paper presents Wishbone, a system that takes a dataflow graph of operators and produces an optimal partitioning. With Wishbone, users can run the same program on a range of sensor platforms, including TinyOS motes, smartphones running JavaME, and the iPhone. The resulting program partitioning will in general be different in each case, reflecting the different node capabilities. Wishbone uses profiling to determine how each operator in the dataflow graph will actually perform on sample data, without requiring cumbersome user annotations. Its partitioning algorithm models the problem as an integer linear program that minimizes a linear combination of network bandwidth and CPU load and uses program structure to solve the problem efficiently in practice. Our results on a speech detection application show that the system can quickly identify good trade-offs given limitations in CPU and network capacity. 2010-09-02T14:16:32Z 2010-09-02T14:16:32Z 2009-01 2009-04 Article http://purl.org/eprint/type/ConferencePaper http://hdl.handle.net/1721.1/58107 Newton, Ryan et al. “Wishbone: profile-based partitioning for sensornet applications.” Proceedings of the 6th USENIX symposium on Networked systems design and implementation. Boston, Massachusetts: USENIX Association, 2009. 395-408. https://orcid.org/0000-0002-7470-3265 https://orcid.org/0000-0003-3715-8701 https://orcid.org/0000-0002-1455-9652 en_US http://portal.acm.org/citation.cfm?id=1559004 Proceedings of the 6th USENIX symposium on Networked systems design and implementation Attribution-Noncommercial-Share Alike 3.0 Unported http://creativecommons.org/licenses/by-nc-sa/3.0/ application/pdf USENIX Association Samuel Madden
spellingShingle Newton, Ryan
Toledo, Sivan
Girod, Lewis D.
Balakrishnan, Hari
Madden, Samuel R.
Wishbone: Profile-based Partitioning for Sensornet Applications
title Wishbone: Profile-based Partitioning for Sensornet Applications
title_full Wishbone: Profile-based Partitioning for Sensornet Applications
title_fullStr Wishbone: Profile-based Partitioning for Sensornet Applications
title_full_unstemmed Wishbone: Profile-based Partitioning for Sensornet Applications
title_short Wishbone: Profile-based Partitioning for Sensornet Applications
title_sort wishbone profile based partitioning for sensornet applications
url http://hdl.handle.net/1721.1/58107
https://orcid.org/0000-0002-7470-3265
https://orcid.org/0000-0003-3715-8701
https://orcid.org/0000-0002-1455-9652
work_keys_str_mv AT newtonryan wishboneprofilebasedpartitioningforsensornetapplications
AT toledosivan wishboneprofilebasedpartitioningforsensornetapplications
AT girodlewisd wishboneprofilebasedpartitioningforsensornetapplications
AT balakrishnanhari wishboneprofilebasedpartitioningforsensornetapplications
AT maddensamuelr wishboneprofilebasedpartitioningforsensornetapplications