perf bench: Add memcpy() benchmark

'perf bench mem memcpy' is a benchmark suite for measuring memcpy()
performance.

Example on a Intel(R) Core(TM)2 Duo CPU E6850 @ 3.00GHz:

| % perf bench mem memcpy -l 1GB
| # Running mem/memcpy benchmark...
| # Copying 1MB Bytes from 0xb7d98008 to 0xb7e99008 ...
|
|     726.216412 MB/Sec

Signed-off-by: Hitoshi Mitake <mitake@dcl.info.waseda.ac.jp>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <1258471212-30281-1-git-send-email-mitake@dcl.info.waseda.ac.jp>
[ v2: updated changelog, clarified history of builtin-bench.c ]
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Hitoshi Mitake
2009-11-18 00:20:09 +09:00
committed by Ingo Molnar
parent b269876c8d
commit 827f3b4974
4 changed files with 202 additions and 1 deletions

View File

@@ -12,6 +12,7 @@
*
* Available subsystem list:
* sched ... scheduler and IPC mechanism
* mem ... memory access performance
*
*/
@@ -43,6 +44,15 @@ static struct bench_suite sched_suites[] = {
NULL }
};
static struct bench_suite mem_suites[] = {
{ "memcpy",
"Simple memory copy in various ways",
bench_mem_memcpy },
{ NULL,
NULL,
NULL }
};
struct bench_subsys {
const char *name;
const char *summary;
@@ -53,9 +63,12 @@ static struct bench_subsys subsystems[] = {
{ "sched",
"scheduler and IPC mechanism",
sched_suites },
{ "mem",
"memory access performance",
mem_suites },
{ NULL,
NULL,
NULL }
NULL }
};
static void dump_suites(int subsys_index)