RT and non-RT tasks placement within isolated CPU cores

Solution Verified - Updated -

Issue

There's a difference in task placement within isolated CPU cores between normal and realtime (RT) tasks.

Normal tasks (those with scheduling classes SCHED_OTHER, SCHED_BATCH and SCHED_IDLE) begin to run on one isolated CPU only (usually, on the one with the lowest index) and are not balanced automatically across other isolated CPUs regardless of the affinity masks.

RT tasks (those with scheduling classes SCHED_FIFO, SCHED_RR and SCHED_DEADLINE), by default, can be placed on any isolated CPU core and then can migrate from one isolated core to another while running.

Tasks that have got a mixed set of isolated and non-isolated CPUs in their affinity masks are never scheduled to isolated CPUs regardless of the scheduling class assigned.

Environment

  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content