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.
- M. Bamakhrama. 2012. Retrieved July 2, 2016 from http://daedalus.liacs.nl/darts.Google Scholar
- 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 Scholar
Digital Library
- S. Baruah and N. Fisher. 2005. The partitioned multiprocessor scheduling of sporadic task systems. In Proceedings of RTSS. 321--329. Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- G. Bilsen, M. Engels, R. Lauwereins, and J. Peperstraete. 1996. Cyclo-static dataflow. IEEE Transactions on Signal Processing 44, 2, 397--408. Google Scholar
Digital Library
- B. Bodin, A. Munier-Kordon, and B. D. de Dinechin. 2013. Periodic schedules for cyclo-static dataflow. In Proceedings of ESTIMedia. 105--114.Google Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- R. I. Davis and A. Burns. 2011. A survey of hard real-time scheduling for multiprocessor systems. ACM Computing Surveys 43, 4, 35. Google Scholar
Digital Library
- M. Grant and S. Boyd. 2014. CVX:MATLAB software for disciplined convex programming, version 2.1. Retrieved from http://cvxr.com/cvx.Google Scholar
- 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 Scholar
Digital Library
- P. Holman and J. H. Anderson. 2006. Group-based Pfair scheduling. Real-Time Systems 32, 1--2, 125--168. Google Scholar
Digital Library
- IBM. 2012. IBM ILOG CPLEX Optimization Studio V12.4. Retrieved from https://www.ibm.com/developerworks/downloads/ws/ilogcplex.Google Scholar
- E. A. Lee and D. G. Messerschmitt. 1987. Synchronous data flow. Proceedings of IEEE 75, 9, 1235--1245.Google Scholar
Cross Ref
- 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 Scholar
- G. Lipari and E. Bini. 2003. Resource partitioning among real-time applications. In Proceedings of ECRTS. 151--158.Google Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- H. Oh and S. Ha. 2004. Fractional rate dataflow model for efficient code synthesis. Journal of VLSI Signal Processing 37, 1, 41--51. Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
Digital Library
- S. Stuijk, M. Geilen, and T. Basten. 2006. SDF3: SDF for free. In Proceedings of ACSD. 276--278. Google Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
Index Terms
On the Improved Hard Real-Time Scheduling of Cyclo-Static Dataflow
Recommendations
Simulation-based evaluations of DAG scheduling in hard real-time multiprocessor systems
The scheduling of parallel real-time tasks on multiprocessor systems is more complicated than the one of independent sequential tasks, specially for the Directed Acyclic Graph (DAG) model. The complexity is due to the structure of DAG tasks and the ...
Suspension-Aware Analysis for Hard Real-Time Multiprocessor Scheduling
ECRTS '13: Proceedings of the 2013 25th Euromicro Conference on Real-Time SystemsIn many real-time systems, tasks may experience suspension delays when accessing external devices. The problem of analyzing task systems with such suspensions on multiprocessors has been relatively unexplored. The commonly used suspension-oblivious ...
A survey of hard real-time scheduling for multiprocessor systems
This survey covers hard real-time scheduling algorithms and schedulability analysis techniques for homogeneous multiprocessor systems. It reviews the key results in this field from its origins in the late 1960s to the latest research published in late ...






Comments