On 9/19/19 1:37 AM, Parth Shah wrote: > >> >> $> Separating AVX512 tasks and latency sensitive tasks on separate cores >> ------------------------------------------------------------------------- >> Another usecase we are considering is to segregate those workload that will >> pull down >> core cpu frequency (e.g. AVX512) from workload that are latency sensitive. >> There are certain tasks that need to provide a fast response time (latency >> sensitive) >> and they are best scheduled on cpu that has a lighter load and not have other >> tasks running on the sibling cpu that could pull down the cpu core frequency. >> >> Some users are running machine learning batch tasks with AVX512, and have >> observed >> that these tasks affect the tasks needing a fast response. They have to >> rely on manual CPU affinity to separate these tasks. With appropriate >> latency hint on task, the scheduler can be taught to separate them. >> > > Thanks for listing out your usecase. > > This is interesting. If scheduler has the knowledge of AVX512 tasks then > with these interface the scheduler can refrain from picking such core > occupying AVX512 tasks for the task with "latency-nice = -19". > > So I guess for this specific use-case, the value for such per-task > attribute should have range (most probably [-19,20]) and the name > "latency-nice" also suits the need.
Yes. > > Do you have any specific values in mind for such attr? Not really. I assume a [-19 20] range that the user who launch the task will set. Probably something towards the -19 end for latency sensitive task and something towards the 20 end for AVX512 tasks. And 0 as default for most tasks. Tim