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

Reply via email to