Commit 9f94c7f9 authored by Kyle Meyer's avatar Kyle Meyer Committed by Arnaldo Carvalho de Melo
Browse files

perf tools: Increase MAX_NR_CPUS and MAX_CACHES



Attempting to profile 1024 or more CPUs with perf causes two errors:

  perf record -a
  [ perf record: Woken up X times to write data ]
  way too many cpu caches..
  [ perf record: Captured and wrote X MB perf.data (X samples) ]

  perf report -C 1024
  Error: failed to set  cpu bitmap
  Requested CPU 1024 too large. Consider raising MAX_NR_CPUS

  Increasing MAX_NR_CPUS from 1024 to 2048 and redefining MAX_CACHES as
  MAX_NR_CPUS * 4 returns normal functionality to perf:

  perf record -a
  [ perf record: Woken up X times to write data ]
  [ perf record: Captured and wrote X MB perf.data (X samples) ]

  perf report -C 1024
  ...

Signed-off-by: default avatarKyle Meyer <kyle.meyer@hpe.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20190620193630.154025-1-meyerk@stormcage.eag.rdlabs.hpecorp.net


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent eb5d8544
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ static inline unsigned long long rdclock(void)
}

#ifndef MAX_NR_CPUS
#define MAX_NR_CPUS			1024
#define MAX_NR_CPUS			2048
#endif

extern const char *input_name;
+1 −1
Original line number Diff line number Diff line
@@ -1121,7 +1121,7 @@ static int build_caches(struct cpu_cache_level caches[], u32 size, u32 *cntp)
	return 0;
}

#define MAX_CACHES 2000
#define MAX_CACHES (MAX_NR_CPUS * 4)

static int write_cache(struct feat_fd *ff,
		       struct perf_evlist *evlist __maybe_unused)