ABSTRACT

CONTENTS 12.1 Introduction 308 12.2 DSL-Kit 309

12.2.1 Semantics 310 12.2.2 DSL Instantiation and Domain Model 314 12.2.3 Tool Support 315

12.3 Domain Model 316 12.3.1 Event-B 316 12.3.2 Event-B Domain Model Specication 317

12.3.2.1 Cores 317 12.3.2.2 Frequency and Voltage 317

12.3.3 Heat Generation 319 12.3.3.1 Threads 320 12.3.3.2 Application 321 12.3.3.3 Workload 322 12.3.3.4 Timing 323 12.3.3.5 Job Deadlines 324 12.3.3.6 Scheduling 326

12.3.4 Power Budgeting 327 12.3.4.1 Reliability Control 327 12.3.4.2 Interpretation of Some Constant Functions 328

12.4 Core-DSL 329 12.5 Conclusion 334 Acknowledgments 335 References 335

12.1 INTRODUCTION With the end of processor frequency growth, scaling into the direction of multi-and many-core systems has become the primary way to translate advances in manufacturing technology into increased computer performance. This change has already started to aect operating systems and application software design. Clearly, we have to plan now for the many-core systems of tomorrow. The problem of scheduling and core management is an example of a challenging Cyber-Physical System (CPS) where operating environment (temperature and background radiation), core physical states (temperature, age, frequency, voltage, and heat dissipation) and software load and deadlines are all intertwined in a complex fashion requiring an intricate balance for a smooth, sustained operation.