CampusAR on a student's phone has four tasks for each second of operation. The phone has one big core (2.0 GHz, 2.0 W when busy) and one little core (1.0 GHz, 0.4 W when busy); idle cores use negligible power. Each task can run on either core; a core runs its tasks one after another; every task must finish within its deadline (measured from the start of the second, both cores start at 0).
| Task | Work (10⁹ cycles) | Deadline (s) |
|---|---|---|
| T1 frame recognition | 1.2 | 1.0 |
| T2 UI rendering | 0.3 | 0.2 |
| T3 photo backup | 0.4 | 1.0 |
| T4 sensor fusion | 0.1 | 0.5 |
- Compute each task's time and energy on each core.
- Find a feasible assignment (and an order on each core) with the minimum total energy. Show your reasoning; you may argue with a small search.
- Compare with two naive policies: "everything on big" (in the order T2, T4, T1, T3) and "everything on little". Are they feasible? What energy do they use?
- Explain in a paragraph how this small problem relates to research on scheduling on heterogeneous systems and edge offloading, and what makes the real problem harder.