skip to main content
research-article

Quality/Latency-Aware Real-time Scheduling of Distributed Streaming IoT Applications

Published:08 October 2019Publication History
Skip Abstract Section

Abstract

Embedded systems are increasingly networked and distributed, often, such as in the Internet of Things (IoT), over open networks with potentially unbounded delays. A key challenge is the need for real-time guarantees over such inherently unreliable and unpredictable networks. Generally, timeouts are used to provide timing guarantees while trading off data losses and quality. The schedule of distributed task executions and network timeouts thereby determines a fundamental latency-quality trade-off that is, however, not taken into account by existing scheduling algorithms. In this paper, we propose an approach for scheduling of distributed, real-time streaming applications under quality-latency goals. We formulate this as a problem of analytically deriving a static worst-case schedule of a given distributed dataflow graph that minimizes quality loss while meeting guaranteed latency constraints. Towards this end, we first develop a quality model that estimates SNR of distributed streaming applications under given network characteristics and an overall linearity assumption. Using this quality model, we then formulate and solve the scheduling of distributed dataflow graphs as a numerical optimization problem. Simulation results with random graphs show that quality/latency-aware scheduling improves SNR over a baseline schedule by 50% on average. When applied to a distributed neural network application for handwritten digit recognition, our scheduling methodology can improve classification accuracy by 10% over a naive distribution under tight latency constraints.

References

  1. Jacob Beal, Danilo Pianini, and Mirko Viroli. 2015. Aggregate programming for the Internet of Things. Computer 48, 9 (2015), 22--30.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. C. J. Bovy, H. T. Mertodimedjo, Gerard Hooghiemstra, Henk Uijterwaal, and Piet Van Mieghem. 2002. Analysis of end-to-end delay measurements in Internet. In The Passive and Active Measurement Workshop (PAM).Google ScholarGoogle Scholar
  3. Junguk Cho, Hyunseok Chang, Sarit Mukherjee, TV Lakshman, and Jacobus Van der Merwe. 2017. Typhoon: An SDN enhanced real-time big data streaming framework. In International Conference on emerging Networking EXperiments and Technologies (CoNEXT).Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Angelo Coluccia and Fabio Ricciato. 2018. On the estimation of link delay distributions by cumulant-based moment matching. Internet Technology Letters 1, 1 (2018), e11.Google ScholarGoogle ScholarCross RefCross Ref
  5. Andrew R. Conn, Nicholas I. M. Gould, and Ph. L. Toint. 2000. Trust Region Methods. Vol. 1. Siam.Google ScholarGoogle ScholarCross RefCross Ref
  6. Jeffrey Dean and Sanjay Ghemawat. 2010. MapReduce: A flexible data processing tool. Communications of the ACM (CACM) 53, 1 (2010), 72--77.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Pascal Fradet, Alain Girault, Leila Jamshidian, Xavier Nicollin, and Arash Shafiei. 2018. Lossy channels in a dataflow model of computation. In Principles of Modeling. Springer, 254--266.Google ScholarGoogle Scholar
  8. Sabine Francis and Andreas Gerstlauer. 2017. A reactive and adaptive data flow model for network-of-system specification. IEEE Embedded Systems Letters (ESL) 9, 4 (2017), 121--124.Google ScholarGoogle ScholarCross RefCross Ref
  9. William D. Gropp, Ewing Lusk, and Anthony Skjellum. 1999. Using MPI: Portable Parallel Programming with the Message-passing Interface. Vol. 1. MIT press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Kirak Hong, David Lillethun, Umakishore Ramachandran, Beate Ottenwälder, and Boris Koldehofe. 2013. Mobile fog: A programming model for large-scale applications on the Internet of Things. In ACM SIGCOMM Workshop on Mobile Cloud Computing (MCC).Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Yann LeCun, Corinna Cortes, and Christopher J.C. Burges. 2010. MNIST handwritten digit database. AT8T Labs [Online]. Available: http://yann.lecun.com/exdb/mnist 2 (2010), 18.Google ScholarGoogle Scholar
  12. Edward A. Lee and David G. Messerschmitt. 1987. Synchronous data flow. Proc. IEEE 75, 9 (1987), 1235--1245.Google ScholarGoogle ScholarCross RefCross Ref
  13. Changfu Lin, Jingjing Zhan, Hanhua Chen, Jie Tan, and Hai Jin. 2018. Ares: A high performance and fault-tolerant distributed stream processing system. In International Conference on Network Protocols (ICNP).Google ScholarGoogle ScholarCross RefCross Ref
  14. Jiachen Mao, Xiang Chen, Kent W. Nixon, Christopher Krieger, and Yiran Chen. 2017. MoDNN: Local distributed mobile computing system for deep neural network. In Design, Automation 8 Test in Europe Conference 8 Exhibition (DATE).Google ScholarGoogle Scholar
  15. Kamyar Mirzazad Barijough. 2019. QLA-RTS. https://github.com/SLAM-Lab/QLA-RTS. Online.Google ScholarGoogle Scholar
  16. Stefan Nastic, Sanjin Sehic, Michael Vögler, Hong-Linh Truong, and Schahram Dustdar. 2013. PatRICIA--A novel programming model for IoT applications on cloud platforms. In International Conference on Service-Oriented Computing and Applications (SOCA).Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Thomas M. Parks, José Luis Pino, and Edward A. Lee. 1995. A comparison of synchronous and cycle-static dataflow. In Asilomar Conference on Signals, Systems and Computers (ACSSC).Google ScholarGoogle Scholar
  18. Per Persson and Ola Angelsmark. 2015. Calvin--Merging cloud and IoT. Procedia Computer Science 52 (2015), 210--217.Google ScholarGoogle ScholarCross RefCross Ref
  19. Esmond Pitt and Kathy McNiff. 2001. Java.rmi: The Remote Method Invocation Guide. Addison-Wesley Longman Publishing Co., Inc.Google ScholarGoogle Scholar
  20. Xukan Ran, Haolianz Chen, Xiaodan Zhu, Zhenming Liu, and Jiasi Chen. 2018. DeepDecision: A mobile deep learning framework for edge video analytics. In International Conference on Computer Communications (INFOCOM).Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Douglas C. Schmidt and Fred Kuhns. 2000. An overview of the real-time CORBA specification. Computer 33, 6 (2000), 56--63.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Henning Schulzrinne, Steve Casner, Ron Frederick, and Van Jacobson. 2003. RTP: A Transport Protocol for Real-Time Applications. RFC 3550. RFC Editor. 1--104 pages. https://www.rfc-editor.org/rfc/rfc3550.txt.Google ScholarGoogle Scholar
  23. Jon Siegel and Dan Frantz. 2000. CORBA 3 Fundamentals and Programming. Vol. 2. John Wiley 8 Sons New York, NY, USA.Google ScholarGoogle Scholar
  24. Hy Truong Son. 2015. Neural Network Implementation in C++ Running for MNIST database. https://github.com/HyTruongSon/Neural-Network-MNIST-CPP. Online.Google ScholarGoogle Scholar
  25. Sander Stuijk, Marc Geilen, and Twan Basten. 2006. Sdf^ 3: SDF for free. In International Conference on Application of Concurrency to System Design (ACSD).Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Ankit Toshniwal, Siddarth Taneja, Amit Shukla, Karthik Ramasamy, Jignesh M Patel, Sanjeev Kulkarni, Jason Jackson, Krishna Gade, Maosong Fu, Jake Donham, et al. 2014. [email protected]. In International Conference on Management of Data (SIGMOD).Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. András Varga and Rudolf Hornig. 2008. An overview of the OMNeT++ simulation environment. In International Conference on Simulation Tools and Techniques for Communications, Networks and Systems 8 Workshops (SIMUtools).Google ScholarGoogle ScholarCross RefCross Ref
  28. Guolu Wang, Jungang Xu, Renfeng Liu, and Shanshan Huang. 2018. A hard real-time scheduler for spark on YARN. In International Symposium on Cluster, Cloud and Grid Computing (CCGrid).Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Yuankun Xue, Ji Li, Shahin Nazarian, and Paul Bogdan. 2017. Fundamental challenges toward making the IoT a reachable reality: A model-centric investigation. ACM Transactions on Design Automation of Electronic Systems (TODAES) 22, 3 (2017), 53.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Yang Zhao, Jie Liu, and Edward A. Lee. 2007. A programming model for time-synchronized distributed real-time systems. In Real Time and Embedded Technology and Applications Symposium (RTAS).Google ScholarGoogle Scholar
  31. Zhuoran Zhao, Kamyar Mirzazad Barijough, and Andreas Gerstlauer. 2018. DeepThings: Distributed adaptive deep learning inference on resource-constrained IoT edge clusters. IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems (TCAD) 37, 11 (2018), 2348--2359.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Quality/Latency-Aware Real-time Scheduling of Distributed Streaming IoT Applications

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!