This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Fri, Jun 21, 2013 at 03:06:19PM +0200, Andi Kleen wrote: > > To see if this is a case I added Andi. Andi, could you browse sources > > and tell if you think that benchtests are adequate to measure > > performance? > > It's hard to say in general and just from review. > > Normally I would recommend to not run the tests in a tight loop, > but have some cache / branch prediction thrashing code in between > to measure "cache cold" behaviour too. > > One objective approach to determine how good they are would be > to assemble benchmark tests on a set of non micro applications that are known > to be sensitive to memcpy/etc. performance (e.g. according to > perf sampling). Then do a set of results for them plus run the benchmarks. > I tried to cross check my running time on data collected when I ran computer and recorded memcpy calls, here kam.mff.cuni.cz/~ondra/dryrun_memcpy.tar.bz2 and got positive results but I cannot fully replicate environment. Then I tried to measure running time of code where I measure memcpy with attached scripts and results so far are not very conclusive(see below). Unless I LD_PRELOAD a byte-by-byte variant of memcpy which increases running time by around 50% > Change the memcpy et.al. to make it slower (for example or faster if you have > a good way). Rerun the applications. Rerun the benchmarks. > > Then see how the two sets of benchmark results correlate. > This is bit problematic. A benchmarks that are currently in libc measure minimum over 32 runs on same data. I am not sure how should it correlate with my benchmark/program running time. > This would be significant work of course. > > -Andi core2 Var1 mean: 1315.415459 standard error: 3.041025 Var2 mean: 1317.700483 standard error: 3.453736 Var3 mean: 1318.371981 standard error: 4.607385 nehalem Var1 mean: 1243.429864 standard error: 2.983470 Var2 mean: 1239.262443 standard error: 2.217374 Var3 mean: 1242.190045 standard error: 2.989906 ivy_bridge Var1 mean: 1158.254545 standard error: 4.059097 Var2 mean: 1170.781818 standard error: 6.427400 Var3 mean: 1155.736364 standard error: 3.514919 fx10 Var1 mean: 1457.435294 standard error: 5.376727 Var2 mean: 1460.470588 standard error: 5.031461 Var3 mean: 1461.894118 standard error: 6.820933
Attachment:
ben
Description: Text document
Attachment:
var.c
Description: Text document
Attachment:
report_memcpy
Description: Text document
Attachment:
res
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |