ABSTRACT

Loopsoptimization is an important and effective techniquefor achieving a better performance without replacing or enhancing hardware. This chapter introduces another approach for optimizing mobile embedded systems. In some practical scenarios, the performance of the mobile embedded systems can be measured by two parameters, namely time and power. One of the optimal schemas is accomplishing tasks under timing constraints with a lower-level energy consumption. For reaching this goal, this chapter provides students with a method that uses the Loop Scheduling technique to increase the working efficiency and power management capability, since completing loops is one of the most time-consuming and energy-consuming parts of a mobile application. Optimizing Loops is an important and effec-

tive technique for achieving a better performance by using the existing mobile infrastructure. The main contents of this chapter include:

1. The concepts related to the loop scheduling optimization

2. Categories of scheduling

3. Optimization methods of loop scheduling

4. Differences between assignments and rotations with timing constraints

5. Using Probability Data Flow Graph (PDFG) technique for loop scheduling optimization

This chapter aims to instruct students to gain the knowledge of mobile embedded systems using loop scheduling and parallel computing techniques. Students should discern the operating principle of the timing optimizations and understand how to implement the schemas introduced in this chapter. Crucial concepts should be fully cognized from reading this chapter, such as Probabilistic Data-Flow Graph (PDFG), Retiming, Rotation Scheduling, and Parallel Computing. After reading this chapter, students need to perceive the scenarios of leveraging and implementing the mentioned techniques. Throughout this chapter, students should be able to answer the following questions:

1. What are the differences between Probabilistic Data-Flow Graph and Data-Flow Graph? Which one is more effective in the realworld context?