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...
Main Authors: | , , , , |
---|---|
Other Authors: | |
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 |