From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934402AbdDGQsp (ORCPT ); Fri, 7 Apr 2017 12:48:45 -0400 Received: from mga05.intel.com ([192.55.52.43]:5510 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933435AbdDGQsg (ORCPT ); Fri, 7 Apr 2017 12:48:36 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,166,1488873600"; d="scan'208";a="71134547" Date: Fri, 7 Apr 2017 09:48:34 -0700 From: Andi Kleen To: Peter Zijlstra Cc: Jin Yao , acme@kernel.org, jolsa@kernel.org, mingo@redhat.com, alexander.shishkin@linux.intel.com, Linux-kernel@vger.kernel.org, kan.liang@intel.com, yao.jin@intel.com, linuxppc-dev@lists.ozlabs.org Subject: Re: [PATCH v2 2/5] perf/x86/intel: Record branch type Message-ID: <20170407164834.GA4021@tassilo.jf.intel.com> References: <1491562066-7472-1-git-send-email-yao.jin@linux.intel.com> <1491562066-7472-3-git-send-email-yao.jin@linux.intel.com> <20170407152031.k2auigfkj7ek4suo@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170407152031.k2auigfkj7ek4suo@hirez.programming.kicks-ass.net> User-Agent: Mutt/1.8.0 (2017-02-23) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 07, 2017 at 05:20:31PM +0200, Peter Zijlstra wrote: > On Fri, Apr 07, 2017 at 06:47:43PM +0800, Jin Yao wrote: > > Perf already has support for disassembling the branch instruction > > and using the branch type for filtering. The patch just records > > the branch type in perf_branch_entry. > > > > Before recording, the patch converts the x86 branch classification > > to common branch classification and compute for checking if the > > branches cross 4K or 2MB areas. It's an approximate computing for > > crossing 4K page or 2MB page. > > The changelog is completely empty of rationale. Why do we care? > > Not having the binary is a very bad reason; you can't do much of > anything if that's missing. It's a somewhat common situation with partially JITed code, if you don't have an agent. You can still do a lot of useful things. We found it useful to have this extra information during workload analysis. Forward conditionals and page crossing jumps are indications of frontend problems. -Andi