Messages in this thread | | | Date | Sat, 9 May 2009 18:57:42 +0800 | From | Wu Fengguang <> | Subject | Re: [patch] tracing/mm: add page frame snapshot trace |
| |
On Sat, May 09, 2009 at 06:01:37PM +0800, Ingo Molnar wrote: > > * Wu Fengguang <fengguang.wu@intel.com> wrote: > > > 2) support concurrent object iterations > > For example, a huge 1TB memory space can be split up into 10 > > segments which can be queried concurrently (with different options). > > this should already be possible. If you lseek the trigger file, that > will be understood as an 'offset' by the patch, and then write a > (decimal) value into the file, that will be the count. > > So it should already be possible to fork off nr_cpus helper threads, > one bound to each CPU, each triggering trace output of a separate > segment of the memory map - and each reading that CPU's > trace_pipe_raw file to recover the data - all in parallel.
How will this work out in general? More examples, when walking pages by file/process, is it possible to divide the files/processes into N sets, and dump their pages concurrently? When walking the (huge) inode lists of different superblocks, is it possible to fork one thread for each superblock?
In the above situations, they would demand concurrent instances with different filename/pid/superblock options.
| |