Thread (28 messages) 28 messages, 8 authors, 2012-05-25

Re: [PATCH v1 5/6] mm: make vmstat_update periodic run conditional

From: Gilad Ben-Yossef <gilad@benyossef.com>
Date: 2012-05-08 15:25:12
Also in: lkml

On Mon, May 7, 2012 at 10:40 PM, Christoph Lameter [off-list ref] wrote:
On Mon, 7 May 2012, KOSAKI Motohiro wrote:
quoted
quoted
quoted
@@ -1204,8 +1265,14 @@ static int __init setup_vmstat(void)
          register_cpu_notifier(&vmstat_notifier);

+ INIT_DELAYED_WORK_DEFERRABLE(&vmstat_monitor_work,
+                         vmstat_update_monitor);
+ queue_delayed_work(system_unbound_wq,
+                         &vmstat_monitor_work,
+                         round_jiffies_relative(HZ));
+
          for_each_online_cpu(cpu)
-         start_cpu_timer(cpu);
+         setup_cpu_timer(cpu);
  #endif
  #ifdef CONFIG_PROC_FS
          proc_create("buddyinfo", S_IRUGO,
NULL,&fragmentation_file_operations);
So the monitoring thread just bounces around the system? Hope that the
scheduler does the right thing to keep it on processors that do some other
work.
Good point. Usually, all cpus have update items and monitor worker only makes
new noise. I think this feature is only useful some hpc case.  So I wonder if
this vmstat improvemnt can integrate Frederic's Nohz cpusets activity. I.e.
vmstat-update integrate timer house keeping and automatically stop when
stopping
hz house keeping.
Right. We could do the same processing in vmstat update and the
thread could check if it is the last vmstat update thread. If so simply
continue and do not terminate.

But this would still mean that the vmstat update thread would run on an
arbitrary cpu. If I have a sacrificial lamb processor for OS processing
then I would expect the vmstat update thread to stick to that processor
and avoid to run on the other processor that I would like to be as free
from OS noise as possible.
OK, what about -

- We pick a scapegoat cpu (the first to come up gets the job).
- We add a knob to let user designate another cpu for the job.
- If scapegoat cpus goes offline, the cpu processing the off lining is
the new scapegoat.

Does this makes better sense?

Gilad


-- 
Gilad Ben-Yossef
Chief Coffee Drinker
gilad@benyossef.com
Israel Cell: +972-52-8260388
US Cell: +1-973-8260388
http://benyossef.com

"If you take a class in large-scale robotics, can you end up in a
situation where the homework eats your dog?"
 -- Jean-Baptiste Queru

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help