Re: [PATCH] perf bench: add new benchmark subsystem and suite "futex wait"
From: Hitoshi Mitake
Date: Thu Jun 07 2012 - 11:11:30 EST
On Thu, Jun 7, 2012 at 1:02 AM, Hitoshi Mitake <h.mitake@xxxxxxxxx> wrote:
> On Wed, Jun 6, 2012 at 4:39 PM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>>
>> * Darren Hart <dvhart@xxxxxxxxxxxxxxx> wrote:
>>
>>> On 05/20/2012 02:37 AM, Hitoshi Mitake wrote:
>>> > On Sun, May 20, 2012 at 5:32 PM, Hitoshi Mitake <h.mitake@xxxxxxxxx> wrote:
>>> >> On Fri, May 18, 2012 at 1:24 AM, Darren Hart <dvhart@xxxxxxxxxxxxxxx> wrote:
>>> >>> On 05/17/2012 08:21 AM, Hitoshi Mitake wrote:
>>> >>>> Hi Ingo, Eric and Darren,
>>> >>>> (CCed perf and futex folks)
>>> >>>>
>>> >>>> I wrote this patch for adding new subsystem "futex" and its suite "wait" to perf
>>> >>>> bench on tip/master. This is based on futextest by Darren Hart.
>>> >>>>
>>> >>>> Could you allow me to import your source code of futextest to perf bench, Darren?
>>> >>>>
>>> >>>
>>> >>> I do have some concerns I'd like to address first.
>>> >>>
>>> >>> What is advantage of incorporating this into perf as opposed to running
>>> >>> it with perf?
>>> >>
>>> >> The main and direct advantage is that perf bench can share useful
>>> >> utilities stored under tools/perf/util/ directory e.g. parse-options[ch].
>>> >>
>>> >
>>> > BTW, I often feel parse-options.[ch] of perf (this was come from git,
>>> > right?) is very useful not only for perf and git but also other
>>> > projects. So I think these stuff are worth independence as a
>>> > library. If the library contains unified feature for parsing and
>>> > evaluating configuration files, the hell of managing configurable
>>> > options will be reduced. e.g. I often use "strace -e open <command>"
>>> > to detect configuration files read by the <command>...
>>> >
>>> > I thought that if perf bench can be independent from perf with such
>>> > efforts, it can be smaller sized and statically linked binary. From my
>>> > experience, this will be good for embedded systems people.
>>> >
>>> > This independence also has risk: less people can find it or is
>>> > attracted even if it stays in the kernel tree (e.g. tools/bench/). But
>>> > it seems that very few people know about perf bench, so this will not
>>> > be a serious problem ;)
>>> >
>>> > I'd like to hear your opinion.
>>>
>>> I haven't been involved with perf tools/bench so I haven't
>>> really formed an opinion. Ingo and Arnaldo, would either of
>>> you care to weigh in on the pros/cons of merging futextest
>>> into perf?
>>
>> No objections from me - 'perf bench futex' seems rather natural
>> to type to me and it would certainly make futex performance
>> testing easier and more widespread.
>>
>> So it all depends on whether you'd like to host it upstream and
>> within tools/perf/bench/.
>>
There is another problem. futextest containts code not for benchmark,
for functional tests. My understand is: Darren doesn't like the
situation that the benchmark part is imported into perf bench and the
functional test part remains in futextest. Because this situation is
not good for maintenance.
I think that the functional tests part is not suitable for perf bench
because of its purpose, but suitable for tools/ directly of Linux
kernel.
If both of benchmark part and functional test part of futextest can be
imported into kernel source tree, maintenance problem will be solved.
Even if the benchmark part (in perf bench) and functional test part
are devided, they will be able to share common header files. For
example, these headers can be placed in tools/include directory.
Thanks,
--
Hitoshi Mitake
h.mitake@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/