From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752239AbaDQRjx (ORCPT ); Thu, 17 Apr 2014 13:39:53 -0400 Received: from mx1.redhat.com ([209.132.183.28]:15192 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750982AbaDQRjf (ORCPT ); Thu, 17 Apr 2014 13:39:35 -0400 From: Jiri Olsa To: linux-kernel@vger.kernel.org Cc: Corey Ashford , David Ahern , Frederic Weisbecker , Ingo Molnar , Namhyung Kim , Paul Mackerras , Peter Zijlstra , Arnaldo Carvalho de Melo , Jean Pihet , Jiri Olsa Subject: [PATCH 0/3] perf tools: Speedup DWARF unwind Date: Thu, 17 Apr 2014 19:39:09 +0200 Message-Id: <1397756352-26694-1-git-send-email-jolsa@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org hi, trying to speedup DWARF unwind report code by factoring related code: - caching sample's registers access - keep dso data file descriptor open for the life of the dso object - replace dso cache code by mapping dso data file directly for the life of the dso object The speedup is mainly for libunwind unwind. The libdw will benefit mainly from cached registers access, because it handles dso data accesses by itself.. and anyway it's still faster ;-). Also reachable in here: git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git perf/core_unwind_speedup thanks, jirka Cc: Corey Ashford Cc: David Ahern Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Namhyung Kim Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Jean Pihet Signed-off-by: Jiri Olsa --- Jiri Olsa (3): perf tools: Cache register accesses for unwind processing perf tools: Cache dso data file descriptor perf tools: Replace dso data cache with mapped data tools/perf/tests/dso-data.c | 7 ++++ tools/perf/util/dso.c | 200 +++++++++++++++++++++++++++--------------------------------------------------------------------- tools/perf/util/dso.h | 14 ++----- tools/perf/util/event.h | 5 +++ tools/perf/util/perf_regs.c | 10 ++++- tools/perf/util/perf_regs.h | 4 +- tools/perf/util/unwind-libunwind.c | 2 - 7 files changed, 83 insertions(+), 159 deletions(-)