History log of /system/extras/micro_bench/micro_bench.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7b8ef7a5eb547303fd6335c69bbce940f068759c 18-May-2016 Chih-Hung Hsieh <chh@google.com> Fix misc-macro-parentheses warnings in micro_bench.

Bug: 28705665
Change-Id: I04d393ae608a7b803001f763c544fc13e8f2e9e6
/system/extras/micro_bench/micro_bench.cpp
ae4366e358e60d3c1c4cb6c6b7128d11688dd033 02-Feb-2016 Chih-Hung Hsieh <chh@google.com> Fix/suppress potential memory leaks warnings.

* One simple problem fixed by calling free.
* Others are suppressed since we don't care memory leaks
in this soon-to-be-obsolete test program.

BUG: 26910807
Change-Id: I5ac10115db9644b53e9e8b5fd40a5dc87b2019dc
/system/extras/micro_bench/micro_bench.cpp
85c34c3ee94998dd961b4669a9b12f714c2a035f 12-Jan-2016 Christopher Ferris <cferris@google.com> Remove cpu benchmark.

This benchmark is completely misnamed. All it does is this in a hard loop:

- Read from memory and store in a register.
- Add one to the memory value.
- Store that value back to memory.

Since this is completely useless, I'm going to remove it.

Bug: 26210850
Change-Id: If3e0af0a1faa7875d3d106cccab1ed8205847b62
/system/extras/micro_bench/micro_bench.cpp
867c8c8a1aa500c2ad6a7ae4596ec484c857ff20 09-Apr-2015 Christopher Ferris <cferris@google.com> Add memmove benchmarking.

Change-Id: I75bb907f5633d155cd411941ea6d9d39b9787983
/system/extras/micro_bench/micro_bench.cpp
7e2587fb24473a693c0da3343f5149b4ca9ccbb9 28-Jan-2015 Elliott Hughes <enh@google.com> Add missing <string.h> include.

Change-Id: Iffdfed00ac49a7920844fa5f9e1a3ffc6a77e641
/system/extras/micro_bench/micro_bench.cpp
8ec652ca6fbb2ae3cde3a70d21c4c75fbb60efc8 20-Mar-2014 Mark Salyzyn <salyzyn@google.com> micro_bench: 64 bit compile issues

- use %zu for size_t operands
- suppress unused argument warning messages

Change-Id: Ib39b8763414320d9e3a29408bc1b396ddb376293
/system/extras/micro_bench/micro_bench.cpp
991bcd464d67c3cff76477140331619ff138aafc 25-Jul-2013 Christopher Ferris <cferris@google.com> Add cold versions of benchmarks.

- Created macros for one and two buffer benchmarks to simplify
addition of new benchmarks.
- Created cold versions of all benchmarks that work on buffer benchmarks.
This means that the benchmark is given buffers that are not in the cache.
- Verified the cold versions are working as intended by
changing it so that the same buffer is written in each loop
instead of the strided buffer. Using this method, the cold and
normal benchmark run at the same speed.

Change-Id: Ie5d1b015dd70d3935cfa2830a82955429a2f5b3c
/system/extras/micro_bench/micro_bench.cpp
7401bc1263d9b9d9f7605a3c5bdaaf3171c7e9c0 11-Jul-2013 Christopher Ferris <cferris@google.com> Adding strlen, strcat, strcpy benchmarks.

Change-Id: I31542ecdec95c2d1d3fb9b2795581ad4d5e13c5c
/system/extras/micro_bench/micro_bench.cpp
014cf9dc226a775e27b2e6ace2461c510d9c6c19 26-Jun-2013 Christopher Ferris <cferris@google.com> Add a benchmark of strcpy.

List of all changes:
- Add a strcpy benchmark.
- Create a macro that is used to create all of the code for the main
loop of the benchmark.
- Fix the strcmp benchmark to use two buffers. The single buffer was
an experiment that should not have been committed. It also crashes
when a large alignment is used because it hard-coded an extra 2048
allocation regardless of the alignment chosen.
- Modify the libc benchmarks to take the function to bench as a
parameter. This will allow us to benchmark new potential libc
optimizations by adding a single line to the function table list.

Change-Id: Id7129667669318acbd001c1bfa3db82764a39029
/system/extras/micro_bench/micro_bench.cpp
25ada90c4b99bd5471e3677542b62cef8d439399 02-Apr-2013 Christopher Ferris <cferris@google.com> Add strcmp benchmarking.

NOTE: After this change memcpy results will be significantly lower
for larger sized copies.

Changes:
- Addition of strcmp benchmarking.
- Fix memcpy to initialize memory before copy. If this is not done, the
results of memcpy are artificially higher.
- Add a min and max when printing averages.
- Add two new options --dst_or_mask and --src_or_mask to allow more
flexibility when testing different alignments.

Change-Id: Ia2859d5569ab5ffa35e5ac0f6d5d1f248fef6533
/system/extras/micro_bench/micro_bench.cpp
82ac1af86d8ca3b7a42af9ca02e4d0b556681bc8 15-Feb-2013 Christopher Ferris <cferris@google.com> Update micro_bench.

Moving the code to cpp to access the cpuset CPU* macros (these
macros are defined in sched.h inside of __USE_GNU which is not
defined for the thumb C compiler). The C++ code is also slightly
easier to read.
Add code to set the priority of the process to the highest value.
Add code to lock the process to a single cpu.
Add the ability to compute average and standard deviation over
a number of iterations.
Change the timing code to use nanosecond resolution timing.
Add options to allow modification of the alignment of the src/dst
pointers for memcpy and the dst pointer for memset.
Add an option to change the size of the data being copied in each
iteration.

Change-Id: Ib7c50ed4463f94e638eb81690fe8fe0d0bc3ea80
/system/extras/micro_bench/micro_bench.cpp