[$] Scheduling for asymmetric Arm systems

Post Syndicated from original https://lwn.net/Articles/838339/rss

The Arm processor architecture has pushed the boundaries in a number of
ways, some of which have required significant kernel changes in response.
For example, the big.LITTLE architecture
placed fast (but power-hungry) and slower (but more power-efficient) CPUs
in the same system-on-chip (SoC); significant scheduler changes were needed
for Linux to be able to properly distribute tasks on such systems. For all
their quirkiness, big.LITTLE systems still feature CPUs that are in some
sense identical: they can all run any task in the system. What is the
scheduler to do, though, if confronted with a system where that is no
longer true?