Race-Condition-Aware and Hardware-Oriented Task Partitioning and Scheduling Using Entropy Maximization

In a multithreaded execution environment, race condition leads to computational errors and system hazards. Up to date, a series of task scheduling strategies have been presented in the literature to reduce the risk of race condition. Because of the increasing complexity of this problem in multi-core systems, existing task scheduling approaches are not very efficient. To deal with this challenge, in this work, we develop a race-condition-aware and hardware-oriented task partitioning and scheduling algorithm using entropy maximization model. We model uncertainty as a probabilistic occurrence within a time interval, and hence the characteristics of event ordering are analyzed through an uncertainty matrix. Next, a metric is developed to measure the uncertainty of task execution in various execution environments. Finally, a maximum entropy model is generated to ensure the lowest probability of race condition during task execution. The smallest one among maximum entropy values is chosen and used in our proposed task scheduling algorithm. Experimental results show that the proposed task scheduling strategy based on our maximum entropy model outperforms existing state-of-the-art approaches. For example, in a 128-core computing system, the task execution time, CPU utilization ratio, and throughput of our proposed task scheduling is improved by <inline-formula> <tex-math notation="LaTeX">$15.3\sim 36.4$</tex-math><alternatives><inline-graphic xlink:href="li-ieq1-2784829.gif"/> </alternatives></inline-formula> percent, <inline-formula><tex-math notation="LaTeX">$8.2\sim 17.6$</tex-math> <alternatives><inline-graphic xlink:href="li-ieq2-2784829.gif"/></alternatives></inline-formula> percent, and <inline-formula><tex-math notation="LaTeX">$20.7\sim 41.4$</tex-math><alternatives> <inline-graphic xlink:href="li-ieq3-2784829.gif"/></alternatives></inline-formula> percent, respectively. Moreover, our proposed scheduling algorithm exhibits low computational complexity and good adaptivity to diverse execution environments.

[1]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[2]  Koen De Bosschere,et al.  RecPlay: a fully integrated practical record/replay system , 1999, TOCS.

[3]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[4]  Chen-Nee Chuah,et al.  Race conditions in coexisting overlay networks , 2008, TNET.

[5]  Liang Chen,et al.  Efficient task scheduling for Many Task Computing with resource attribute selection , 2014, China Communications.

[6]  Xu Han,et al.  Eliminating race conditions in system-level models by using parallel simulation infrastructure , 2012, 2012 IEEE International High Level Design Validation and Test Workshop (HLDVT).

[7]  Chi-Yeh Chen,et al.  Task Scheduling for Maximizing Performance and Reliability Considering Fault Recovery in Heterogeneous Distributed Systems , 2016, IEEE Transactions on Parallel and Distributed Systems.

[8]  Eduard Ayguadé,et al.  Task Scheduling Techniques for Asymmetric Multi-Core Systems , 2017, IEEE Transactions on Parallel and Distributed Systems.

[9]  Albert Mo Kim Cheng,et al.  Transparent Real-Time Task Scheduling on Temporal Resource Partitions , 2016, IEEE Transactions on Computers.

[10]  Barton P. Miller,et al.  What are race conditions?: Some issues and formalizations , 1992, LOPL.

[11]  Jürgen Teich,et al.  Game-theoretic analysis of decentralized core allocation schemes on many-core systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[12]  Hidenori Nakazato,et al.  Clustering-Based Task Scheduling in a Large Number of Heterogeneous Processors , 2016, IEEE Transactions on Parallel and Distributed Systems.

[13]  R Ic Race Condition and Its Analysis Approach of Real-time Embedded Systems , 2010 .

[14]  Eric Bodden,et al.  Aspect-Oriented Race Detection in Java , 2010, IEEE Transactions on Software Engineering.

[15]  Bill Mitchell,et al.  Resolving race conditions in asynchronous partial order scenarios , 2005, IEEE Transactions on Software Engineering.

[16]  Andrew Marshall Mismatch and Noise in Modern IC Processes , 2009, Mismatch and Noise in Modern IC Processes.

[17]  Barton P. Miller,et al.  Improving the accuracy of data race detection , 1991, PPOPP '91.

[18]  Assaf Schuster,et al.  Efficient on-the-fly data race detection in multithreaded C++ programs , 2003, PPoPP '03.

[19]  Kang G. Shin,et al.  Composition of Schedulability Analyses for Real-Time Multiprocessor Systems , 2015, IEEE Transactions on Computers.

[20]  Chan-Gun Lee,et al.  Monitoring of Timing Constraints with Confidence Threshold Requirements , 2007, IEEE Transactions on Computers.

[21]  Peter J. Keleher,et al.  A Protocol-Centric Approach to on-the-Fly Race Detection , 2000, IEEE Trans. Parallel Distributed Syst..

[22]  Sang Joon Kim,et al.  A Mathematical Theory of Communication , 2006 .

[23]  R. Baierlein Probability Theory: The Logic of Science , 2004 .

[24]  Hamid Reza Naji,et al.  A Clustering Algorithm for Communication-Aware Scheduling of Task Graphs on Multi-Core Reconfigurable Systems , 2017, IEEE Transactions on Parallel and Distributed Systems.

[25]  Benjamin C. Lee,et al.  The Computational Sprinting Game , 2016, ASPLOS.

[26]  Yan Chen,et al.  Uncertainty Analysis of Race Conditions in Real-Time Systems , 2015, 2015 IEEE International Conference on Software Quality, Reliability and Security.

[27]  Laura Carnevali,et al.  Compositional Verification for Hierarchical Scheduling of Real-Time Systems , 2013, IEEE Transactions on Software Engineering.

[28]  Sanjay Ranka,et al.  Using game theory for scheduling tasks on multi-core processors for simultaneous optimization of performance and energy , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[29]  H. Cohen,et al.  UNIX time-sharing system: The network operations center system , 1978, The Bell System Technical Journal.

[30]  Camille Coti,et al.  A Model for Coherent Distributed Memory for Race Condition Detection , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[31]  Sandip Kundu,et al.  Game theoretic approach for run-time task scheduling on an multi-processor system on chip , 2013, IET Circuits Devices Syst..

[32]  Harald Richter,et al.  A static analysis approach to data race detection in SystemC designs , 2013, 2013 IEEE 16th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS).

[33]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[34]  Richard H. Carver,et al.  Use of sequencing constraints for specification-based testing of concurrent programs , 1998 .

[35]  Chao-Tsung Huang Fast Distribution Fitting for Parameter Estimation of Range-Weighted Neighborhood Filters , 2016, IEEE Signal Processing Letters.

[36]  Kenli Li,et al.  Scheduling Precedence Constrained Stochastic Tasks on Heterogeneous Cluster Systems , 2015, IEEE Transactions on Computers.

[37]  Bharadwaj Veeravalli,et al.  Dynamic Scheduling of Hybrid Real-Time Tasks on Clusters , 2014, IEEE Transactions on Computers.