When activating ignore_nice_load with governor ondemand performance drops for normal processes.
A message that is not in the archive (sent off-list or not yet received): [email protected]/
https://bugzilla.kernel.org/show_bug.cgi?id=100771
Aaron Lu <[email protected]> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
CC| |[email protected]
Component|Power-Processor |cpufreq
Assignee|acpi_power-processor@kernel |[email protected]
|-bugs.osdl.org |
Product|ACPI |Power Management--- Comment #2 from Aaron Lu <[email protected]> --- Looks like a cpufreq issue to me, move there.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
--- Comment #3 from Chen Yu <[email protected]> --- This is a normal behavior IMO.
1. task_b with nice = 1 does not mean task_a will always occupy the time slice, it is CFS scheduler, which means even task with nice = 19 will get chance to run.
2.When you enable ignore_nice_load, the task_b with nice = 1 will be considered to be idle, which means that, the total time task_b is running, will be added to current cpu's idle time, which will cause the cpufreq governor to treat the cpu load lower than when ignore_nice_load disabled.
Yu
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
--- Comment #4 from [email protected] ---
(In reply to Chen Yu from comment #3)
Quoted 4 lines
2.When you enable
ignore_nice_load, thetask_bwith nice = 1 will be considered to be idle, which means that, the total timetask_bis running, will be added to current cpu's idle time, which will cause the cpufreq governor to treat the cpu load lower than whenignore_nice_loaddisabled.
I understand the rationale you explain if we apply it only to idle tasks. What I don't agree with is that tasks with idle priority can slow down tasks with normal priority.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
--- Comment #5 from Chen Yu <[email protected]> --- (In reply to calvaris from comment #4)
Quoted 9 lines
(In reply to Chen Yu from comment #3)
Quoted 4 lines
2.When you enable
ignore_nice_load, thetask_bwith nice = 1 will be considered to be idle, which means that, the total timetask_bis running, will be added to current cpu's idle time, which will cause the cpufreq governor to treat the cpu load lower than whenignore_nice_loaddisabled.I understand the rationale you explain if we apply it only to idle tasks. What I don't agree with is that tasks with idle priority can slow down tasks with normal priority.
Do you mean idle tasks = task_b in above context? Why task_b slows down the normal priority task is because that, the cpufreq decrease due to task_b's high nice value, and task_a is scheduled on the same cpu.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
--- Comment #6 from [email protected] ---
(In reply to Chen Yu from comment #5)
Quoted 3 lines
Do you mean idle tasks =
task_bin above context? Whytask_bslows down the normal priority task is because that, the cpufreq decrease due to task_b's high nice value, andtask_ais scheduled on the same cpu.
Yes, I understand that it's what's happenning and I think that is what shouldn't happen because, IMHO, it doesn't make sense. I think it should be exactly the opposite, as an idle task is scheduled on the same cpu as a higher priority one, it should be run at the frequency of the higher one.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
--- Comment #7 from Chen Yu <[email protected]> --- (In reply to calvaris from comment #6)
Quoted 9 lines
(In reply to Chen Yu from comment #5)
Quoted 3 lines
Do you mean idle tasks =
task_bin above context? Whytask_bslows down the normal priority task is because that, the cpufreq decrease due to task_b's high nice value, andtask_ais scheduled on the same cpu.Yes, I understand that it's what's happenning and I think that is what shouldn't happen because, IMHO, it doesn't make sense. I think it should be exactly the opposite, as an idle task is scheduled on the same cpu as a higher priority one, it should be run at the frequency of the higher one.
Well, currently the cpufreq framework is based on the total load of one CPU, but not on single task/or a group of tasks. According to your requirement, it looks like a 'cgroup' cpufreq scheduling. It would be of another new semantic IMO.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.kernel.org/show_bug.cgi?id=100771
Zhang Rui <[email protected]> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |[email protected] Assignee|[email protected] |[email protected]
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.