Download presentation
Presentation is loading. Please wait.
Published byEthelbert Ross Modified over 9 years ago
1
CHALLENGING SCHEDULING PROBLEM IN THE FIELD OF SYSTEM DESIGN Alessio Guerri Michele Lombardi * Michela Milano DEIS, University of Bologna
2
Talk outline OUTLINE Talk topic Present a mixed resource allocation and scheduling problem arising in the design flow of embedded systems Discuss some problem variants (including a stochastic one) Discuss the instances we used… …and the instance generator
3
Motivation MOTIVATION & CONTEXT Mainly due to the resource allocation phase Why is this stuff interesting? 1.It’s challenging 2.It’s a real world problem 3.We considered many problem variants It’s important to test solvers on real problems Different objective function Deterministic vs stochastic 4.The instance generator Flexible, from random to “real like” instances
4
Embedded system MOTIVATION & CONTEXT Embedded system They are special purpose automotivedigital convergence market share any information processing device embedded in another product They are finding widespread application: They often run a fixed set of applications Strong off-line optimization before the deployment
5
Platforms for embedded systems MOTIVATION & CONTEXT General trend: A promising platform: MPSoCs H/S co-design: special purpose application “general purpose” platform IBM, CELL processor
6
Embedded system design MOTIVATION & CONTEXT System design with MPSoCs Exploit application and platform parallelism to achieve real time performance Given a platform description and an application abstraction compute an allocation & schedule verify results & perform changes Design flow 1 23 4 5 P1P2ram P1 P2 12 3 4 5 12 3 4 5 t Crucial role of the allocation & scheduling algorithm
7
MPSoC platform Identical processing elements (PE) Local storage devices Remote on-chip memory Shared bus PROBLEM DESCRIPTION MPSoC platform Resources: Constraints: PEs Local memory devices Shared BUS PE frequencies Local device capacity Bus bandwidth (additive resource) Architecture dependent constraints DVS
8
Application Nodes are tasks/processes Arcs are data communication PROBLEM DESCRIPTION Task graph 1 23 4 5 6 RD Each task: Reads data for each ingoing arc Performs some computation Writes data for each outgoing arc EXEC WR COMM. BUFFER LOC/REM PE PROG. DATA LOC/REM FREQ.
9
Application Memory allocation Remote memory is slower than the local ones Execution frequency PROBLEM DESCRIPTION Task graph 1 23 4 5 6 RDEXEC WR COMM. BUFFER LOC/REM PE PROG. DATA LOC/REM FREQ. Durations depend on: Different phases have different bus requirements
10
Application PROBLEM VARIANTS O. F. We focused on problem variants with different Objective function Graph features G.F. Bus traffic Energy consumption Makespan Pipelined Generic Generic with cond. branches DVS no DVS
11
Objective function PROBLEM VARIANTS Bus traffic Tasks produce traffic when they access the bus Completely depends on memory allocation Makespan Completely depends on the computed schedule Energy (DVS) The higher the frequency, the higher the energy consumption Cost for frequency switching 123 t 4 Time & energy cost Allocation dependent Schedule dependent
12
Graph structure PROBLEM VARIANTS 1234 Pipelined Typical of stream processing applications Generic 1 23 4 5 6 Generic with cond. branches 1 23 4 5 6 a !a b !b Stochastic problem 0.3 0.7 0.5 Stochastic O.F. (exp. value)
13
Instances – an overview INSTANCES & INSTANCE GENERATOR Real world instances “Synthetic” instances Random instances …different instances Different needs… Solve real problems Test the solvers and the models Perform computation studies Where do they come from?
14
Real world instances INSTANCES & INSTANCE GENERATOR Real world instances 1 23 4 5 6 From application code… …extract a task graph… …and compute durations by repeated runs The extraction phase is tricky and slow
15
Synthetic instances INSTANCES & INSTANCE GENERATOR Synthetic instances 1 23 4 5 6 Randomly generate a graph… …wrap it into a synthetic computer program… …again, compute durations by repeated runs Faster, but not enough for a statistical complexity study
16
Random instances INSTANCES & INSTANCE GENERATOR Why random instances? Quickly available “real like” instances Completely random instances to test the solvers Instance generator* able to provide both Generation algorithm Start from a bipartite graph…..repeatedly replace an arc with series of nodes… * Soon available for download at http://www-lia.deis.unibo.it/Staff/AlessioGuerri/Sched_LIB
17
Random instances INSTANCES & INSTANCE GENERATOR..randomly add some nodes…..randomly add some arcs..cut arcs to turn some nodes into “tails”… Random Real like Many types of instances by balancing these two steps
18
Random instances INSTANCES & INSTANCE GENERATOR The generation process is tuned by means of “random parameters” rp(MIN, MAX, DISTRIBUTION) mrp(MEAN, ST. DEV., DISTRIBUTION) Linear, quadratic, exponential Nodes and arc attributes can depend on each other and are specified via a simple functional language node_attrdurrp(100, 200, LIN) node_attrlong_dursum(dur, rp(50, 100, EXP)) Nodes and arcs are labeled with custom lists of attributes Crucial to have “real like” instances
19
Conclusions CONCLUSIONS Mixed allocation & scheduling problem Complex allocation phase It’s important for a competition to evaluate solvers on real problems Different O.F.s Deterministic & Stochastic problems Random instances Realistic instances needed for real problems Questions?
20
CHALLENGING SCHEDULING PROBLEM IN THE FIELD OF SYSTEM DESIGN Alessio Guerri Michele Lombardi * Michela Milano DEIS, University of Bologna
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.