skip to main content
research-article

On the Improved Hard Real-Time Scheduling of Cyclo-Static Dataflow

Published:02 August 2016Publication History
Skip Abstract Section

Abstract

Recently, it has been shown that the hard real-time scheduling theory can be applied to streaming applications modeled as acyclic Cyclo-Static Dataflow (CSDF) graphs. However, this recent approach is not always efficient in terms of throughput and processor utilization. Therefore, in this article, we propose an improved hard real-time scheduling approach to schedule streaming applications modeled as acyclic CSDF graphs on a Multiprocessor System-on-Chip (MPSoC) platform. The proposed approach converts each actor in a CSDF graph to a set of real-time periodic tasks. The conversion enables application of many hard real-time scheduling algorithms that offer fast calculation of the required number of processors for scheduling the tasks. In addition, we propose a method to reduce the graph latency when the converted tasks are scheduled as real-time periodic tasks. We evaluate the performance and time complexity of our approach in comparison to several existing scheduling approaches. Experiments on a set of real-life streaming applications demonstrate that our approach (1) results in systems with higher throughput and better processor utilization in comparison to the existing hard real-time scheduling approach for CSDF graphs, while requiring comparable time for the system derivation; (2) delivers shorter application latency by applying the proposed method for graph latency reduction while providing better throughput and processor utilization when compared to the existing hard real-time scheduling approach; (3) gives the same throughput as the existing periodic scheduling approach for CSDF graphs, but requires much shorter time to derive the task schedule and tasks’ parameters (periods, start times, and so on); and (4) gives the throughput that is equal to or very close to the maximum achievable throughput of an application obtained via self-timed scheduling, but requires much shorter time to derive the schedule. The total time needed for the proposed conversion approach and the calculation of the minimum number of processors needed to schedule the tasks and the calculation of the size of communication buffers between tasks is in the range of seconds.

References

  1. M. Bamakhrama. 2012. Retrieved July 2, 2016 from http://daedalus.liacs.nl/darts.Google ScholarGoogle Scholar
  2. M. Bamakhrama and T. Stefanov. 2013. On the hard-real-time scheduling of embedded streaming applications. International Journal on Design Automation for Embedded Systems 17, 2, 221--249. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Baruah and N. Fisher. 2005. The partitioned multiprocessor scheduling of sporadic task systems. In Proceedings of RTSS. 321--329. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. K. Baruah, N. K. Cohen, C. G. Plaxton, and D. A. Varvel. 1993. Proportionate progress: A notion of fairness in resource allocation. In Proceedings of STOC. 345--354. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Benazouz, O. Marchetti, A. Munier Kordon, and T. Michel. 2010. A new method for minimizing buffer sizes for cyclo-static dataflow graphs. In Proceedings of ESTIMedia. 11--20.Google ScholarGoogle Scholar
  6. G. Bilsen, M. Engels, R. Lauwereins, and J. Peperstraete. 1996. Cyclo-static dataflow. IEEE Transactions on Signal Processing 44, 2, 397--408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. B. Bodin, A. Munier-Kordon, and B. D. de Dinechin. 2013. Periodic schedules for cyclo-static dataflow. In Proceedings of ESTIMedia. 105--114.Google ScholarGoogle ScholarCross RefCross Ref
  8. A. Bouakaz, J.-P. Talpin, and J. Vitek. 2012. Affine data-flow graphs for the synthesis of hard real-time applications. In Proceedings of ACSD. 183--192. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. E. G. Coffman, Jr., M. R. Garey, and D. S. Johnson. 1996. Approximation algorithms for bin packing: A survey. In Approximation Algorithms for NP-Hard Problems. 46--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. I. Davis and A. Burns. 2011. A survey of hard real-time scheduling for multiprocessor systems. ACM Computing Surveys 43, 4, 35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Grant and S. Boyd. 2014. CVX:MATLAB software for disciplined convex programming, version 2.1. Retrieved from http://cvxr.com/cvx.Google ScholarGoogle Scholar
  12. J. P. H. M. Hausmans, S. J. Geuns, M. H. Wiggers, and M. J. G. Bekooij. 2013. Two parameter workload characterization for improved dataflow analysis accuracy. In Proceedings of RTAS. 117--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. P. Holman and J. H. Anderson. 2006. Group-based Pfair scheduling. Real-Time Systems 32, 1--2, 125--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. IBM. 2012. IBM ILOG CPLEX Optimization Studio V12.4. Retrieved from https://www.ibm.com/developerworks/downloads/ws/ilogcplex.Google ScholarGoogle Scholar
  15. E. A. Lee and D. G. Messerschmitt. 1987. Synchronous data flow. Proceedings of IEEE 75, 9, 1235--1245.Google ScholarGoogle ScholarCross RefCross Ref
  16. J. Y.-T. Leung and J. Whitehead. 1982. On the complexity of fixed-priority scheduling of periodic, real-time tasks. Performance Evaluation 2, 4, 237--250.Google ScholarGoogle Scholar
  17. G. Lipari and E. Bini. 2003. Resource partitioning among real-time applications. In Proceedings of ECRTS. 151--158.Google ScholarGoogle Scholar
  18. C. L. Liu and J. W. Layland. 1973. Scheduling algorithms for multiprogramming in a hard-real-time environment. Journal of the ACM 20, 1, 46--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. D. Liu, J. Spasic, J. T. Zhai, T. Stefanov, and G. Chen. 2014. Resource optimization for CSDF-modeled streaming applications with latency constraints. In Proceedings of DATE. 188:1--188:6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. O. Moreira, J.-D. Mol, M. Bekooij, and J. van Meerbergen. 2005. Multiprocessor resource allocation for hard-real-time streaming with a dynamic job-mix. In Proceedings of RTAS. 332--341. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. H. Oh and S. Ha. 2004. Fractional rate dataflow model for efficient code synthesis. Journal of VLSI Signal Processing 37, 1, 41--51. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. R. Pellizzoni, P. Meredith, M.-Y. Nam, M. Sun, M. Caccamo, and L. Sha. 2009. Handling mixed-criticality in SoC-based real-time embedded systems. In Proceedings of EMSOFT. 235--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. O. U. Pereira Zapata and P. Mejía Alvarez. 2004. EDF and RM Multiprocessor Scheduling Algorithms: Survey and Performance Evaluation. Technical Report CINVESTAV-CS-RTG-02.Google ScholarGoogle Scholar
  24. J. Spasic, D. Liu, E. Cannella, and T. Stefanov. 2015. Improved hard real-time scheduling of CSDF-modeled streaming applications. In Proceedings of CODES+ISSS. 65--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. S. Stuijk, M. Geilen, and T. Basten. 2006. SDF3: SDF for free. In Proceedings of ACSD. 276--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. S. Stuijk, M. Geilen, and T. Basten. 2008. Throughput-buffering trade-off exploration for cyclo-static and synchronous dataflow graphs. IEEE Transactions on Computers 57, 10, 1331--1345. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. W. Thies and S. Amarasinghe. 2010. An empirical characterization of stream programs and its implications for language and compiler design. In Proceedings of PACT. 365--376. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. M. Wiggers, M. Bekooij, P. G. Jansen, and G. J. M. Smit. 2007. Efficient computation of buffer capacities for cyclo-static real-time systems with back-pressure. In Proceedings of RTAS. 281--292. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. J. T. Zhai, M. Bamakhrama, and T. Stefanov. 2013. Exploiting just-enough parallelism when mapping streaming applications in hard real-time systems. In Proceedings of DAC. 170:1--170:8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. C. L. Zitnick and T. Kanade. 2000. A cooperative algorithm for stereo matching and occlusion detection. IEEE Transactions on Pattern Analysis and Machine Intelligence 22, 7, 675--684. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On the Improved Hard Real-Time Scheduling of Cyclo-Static Dataflow

        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
        About Cookies On This Site

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

        Learn more

        Got it!