On a device it’s not uncommon to share power domains between secure and non-secure side, for example between a TEE and Linux kernel. With that comes some challenges that needs to be taken care of and that is the theme for this presentation. We’ve identified a couple of challenges when it comes to power management and security. One case is when sharing power resources (clock, power domains, ...) between secure and non-secure devices. Another is to make a proper shutdown and boot-up sequence (CPU on/off etc) and finally there has been some concerns regarding the latency when communicating with PSCI. In this session we would like to highlight those and discuss what the short and long term plans are.

Read more

The CPUidle is one component of the power management framework. It behaves in an opportunistic way when there is nothing to do on the system, by trying to predict the next CPU wake up and select an idle state. But the current design has some weaknesses as it mixes the different sources of wakeup, resulting in an already non-deterministic situation getting worse. This presentation will describe the issues faced with the current approach and will show another approach to predict the next wake up event with a better accuracy, leading, under some circumstances, to 100% right predictions.

Read more

After deadline scheduling for processes (SCHED_DEADLINE scheduling policy) has been merged in the Linux kernel in Mar-2014 (version 3.14) a considerable effort has been put into actively maintaining it, but no further development really happened after that date, until recently. In this presentation, Juri Lelli, after giving a (very briefly) review of the current set of features, will deep dive into the details of all the new features currently under development: CPU capacity and clock frequency scaling, bandwidth reclaiming, coupling with clock frequency selection and cgroups support.

Read more

The Per Entity Load Tracking (PELT) is a key stone in tasks placement of the scheduler but suffers of some weakness when it’s not just bugs. During the last LPC, it has been decided to fix all pending issues of PELT before starting to consider another load tracking mechanism for scheduler and/or EAS. This session will show the improvement reached since the last connect and the LPC as well as the next ones. We will also looks at the RT class which lacks a good load tracking.

Read more

This session is a sequel of the “Bus scaling QoS” session from LAS16. During LAS16 we have discussed the challenges of the SoC architecture, the on-chip interconnects and the Network On Chip concept. Now we are trying to add support for interconnect management in the Linux kernel, which involves extending some frameworks and introducing a new API. This session will give an update about the current status and the next steps.

Read more

Continuing the discussion from Linaro Connect Bangkok 2016, we discuss further experiments with Window Assisted Load Tracking (WALT, formerly WinLT) on other architectures such as x86 and with different workloads including laptop/desktop and server usecases. We propose that WALT is more accurate in tracking cpu/task utilization than PELT (which we believe is better at load rather than util tracking) and that better utilization estimation schemes can be built on top of WALT. Experiments use the new schedutil governor. Examination of individual use cases in detail as well as how to handle migration and potential caveats of a windowing scheme are discussed.

Read more

Continuing the discussion from Linaro Connect Bangkok 2016, we discuss further experiments with Window Assisted Load Tracking (WALT, formerly WinLT) on other architectures such as x86 and with different workloads including laptop/desktop and server usecases. We propose that WALT is more accurate in tracking cpu/task utilization than PELT (which we believe is better at load rather than util tracking) and that better utilization estimation schemes can be built on top of WALT. Experiments use the new schedutil governor. Examination of individual use cases in detail as well as how to handle migration and potential caveats of a windowing scheme are discussed.

Read more

The Energy Aware Scheduler relies on a power model, rather than on heuristics, to make decisions and reduce power usage. As a result of this fact-based decision making EAS presents very few tunables and thus requires a significantly different approach to tuning and optimization when compared to the traditional tune/benchmark/repeat cycle. Tuning EAS has perhaps more similar to debugging: using trace tools such as ftrace, kernelshark and LISA, we can examine its decision making and look for ways to improve this decision making. This talk will offer a practical introduction to using these trace tools.

Read more

Being able to see the performance and power impacts of changes in a real world environment such as Android is a prerequisite to doing meaningful development on scheduler-guided frequency (or many other sensitive subsystems). The first half of this session will review setting up the tools to automate testing for performance and power in Android. The second half will cover the results of using these tests to compare the schedutil and interactive governors.

Read more

System has a lot of interconnect bus that have to be set to provide throughputs to devices of the system. We are working on adding missing pieces to let device set the performance requirements to the performance provider that are interconnect bus.

Read more
Page 1 of 3123