5 research outputs found
Scalable and Modular Scheduling
Scheduling a program (i.e. constructing a timetable for the execution of its operations) is one of the most powerful methods for automatic parallelization. A schedule gives a blueprint for constructing a synchronous program, suitable for an ASIC or VLIW processor. However, constructing a schedule entails solving a large linear program. Even if one accept the (experimental) fact that the Simplex is almost always polynomial, the scheduling time is of the order of a large power of the program size. Hence, the method does not scale well. The present paper proposes two methods for improving the situation. Firstly, a big program can be divided in smaller units (processes) which can be scheduled separately. This is modular scheduling Second, one can use projection methods for solving linear programs incrementatly. This is specially efficient if the dependence graph is sparse
Symbolic Verification with Periodic Sets
peer reviewedSymbolic approaches attack the state explosion problem by introducing
implicit representations that allow the simultaneous manipulation of
large sets of states. The most commonly used representation in this
context is the Binary Decision Diagram (BDD). This paper takes the
point of view that other structures than BDD's can be useful for
representing sets of values, and that combining implicit and explicit
representations can be fruitful. It introduces a representation
of complex periodic sets of integer values, shows how this
representation can be manipulated, and describes its application to the
state-space exploration of protocols. Preliminary experimental results
indicate that the method can dramatically reduce the resources
required for state-space exploration