From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934008AbcAZI1Y (ORCPT ); Tue, 26 Jan 2016 03:27:24 -0500 Received: from szxga02-in.huawei.com ([119.145.14.65]:46061 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932758AbcAZI1T (ORCPT ); Tue, 26 Jan 2016 03:27:19 -0500 Message-ID: <56A72DC8.2090306@huawei.com> Date: Tue, 26 Jan 2016 16:26:48 +0800 From: "Wangnan (F)" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: CC: , , , He Kuang , "Alexei Starovoitov" , Arnaldo Carvalho de Melo , Brendan Gregg , Jiri Olsa , Masami Hiramatsu , Namhyung Kim , Zefan Li , Subject: Re: [PATCH 0/5] perf core: Read from overwrite ring buffer References: <1453710833-2865-1-git-send-email-wangnan0@huawei.com> In-Reply-To: <1453710833-2865-1-git-send-email-wangnan0@huawei.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.111.66.109] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020204.56A72DDC.0080,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: c36364237015f97be4a89856b7e99880 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Peter, Do you have any further comments about this patchset? What should be the correct route for them to be merged into mainline? Thank you. On 2016/1/25 16:33, Wang Nan wrote: > This is the v3 of this series. Compare with v2, tailsize method is > removed, ioctl command PERF_EVENT_IOC_PAUSE_OUTPUT is changed to > _IOW('$', 9, __u32) since it has an input value, commit message > is slightly adjusted. > > New test result on ARM64 is below (x86_64 result is copied from previous > email, test method is described in previous version [1]): > > x86_64 | ARM64 > -----------------------+--------------------- > MEAN STDVAR | MEAN STDVAR > BASE : 879870.81 11913.13 | 808302.67 6951.47 > RAWPERF : 2603854.70 706658.40 | 3461675.12 54075.69 > WRTBKWRD : 2313301.22 6727.96 | 3350177.98 23125.48 > TAILSIZE : 2383051.86 5248.06 | 3556496.56 24802.17 > RAWOVWRT : 2315273.18 5221.03 | 3458767.49 41560.32 > RAWOVWRT*: 2323970.45 5103.39 | 3438967.06 34095.83 > > ARM64 platform is a smartphone with 8 Hisilicon arm64 cores > (big/little). > > Benckmarking result on both architechure support removing tailsize > method because its performance penalty is higher than WRTBKWRD. Also, it > seems we don't need to consider tailheader method (putting whole header > at the end of records, kernel write to the ring buffer from beginning to > end), because the above result shows WRTBKWRD and RAWOVWRT are similar, > and tailheader is impossible to outperform RAWOVWRT in theory. > > [1] http://lkml.kernel.org/g/1453464834-233200-1-git-send-email-wangnan0@huawei.com > > Wang Nan (5): > perf core: Introduce new ioctl options to pause and resume ring buffer > perf core: Set event's default overflow_handler > perf core: Prepare writing into ring buffer from end > perf core: Add backward attribute to perf event > perf core: Reduce perf event output overhead by new overflow handler > > include/linux/perf_event.h | 22 +++++++++++-- > include/uapi/linux/perf_event.h | 4 ++- > kernel/events/core.c | 73 +++++++++++++++++++++++++++++++++++------ > kernel/events/internal.h | 11 +++++++ > kernel/events/ring_buffer.c | 63 +++++++++++++++++++++++++++++++---- > 5 files changed, 153 insertions(+), 20 deletions(-) > > Signed-off-by: Wang Nan > Cc: He Kuang > Cc: Alexei Starovoitov > Cc: Arnaldo Carvalho de Melo > Cc: Brendan Gregg > Cc: Jiri Olsa > Cc: Masami Hiramatsu > Cc: Namhyung Kim > Cc: Peter Zijlstra > Cc: Zefan Li > Cc: pi3orama@163.com >