Commit Graph

8 Commits

Author SHA1 Message Date
aarongreen
a4b7366b78 pw_perf_test: Rework docs
This CL updates the module docs according to the guidance given in
//docs/contributing/module_docs.html#docs-contrib-moduledocs.

Change-Id: Ibbb3b64e9e1cb9a839652eec07f6cf414b5e6582
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/179610
Reviewed-by: Kayce Basques <kayce@google.com>
Commit-Queue: Aaron Green <aarongreen@google.com>
2023-11-21 21:24:26 +00:00
aarongreen
e596056be5 pw_perf_test: Reogranize source files
This CL moves `internal::Framework`, `internal::TestInfo`, and `State`
out of pw_perf_test.h and into their own separate files.

It also moves performance_test_generic.cc to
examples/example_perf_test.cc.

Finally, it removes perf_test_test.cc as this file created a no-op unit
test.

Change-Id: Id5e984cdf80bb7ed801be1f81ebb8cba8c05b91b
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/178914
Reviewed-by: Armando Montanez <amontanez@google.com>
Commit-Queue: Aaron Green <aarongreen@google.com>
2023-11-10 22:56:41 +00:00
Armando Montanez
6174c052a8 pw_perf_test: Gate on pw_chrono_SYSTEM_TIMER_BACKEND
A backend for the system timer is required for the chrono timer test.
This changes the test to gate on that rather than the system clock, as a
target with a system clock set up might not necessarily have a timer
backend set up yet.

Change-Id: Ifc01c65228e48e4a5c15878c550e475d5c48b708
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/174650
Commit-Queue: Auto-Submit <auto-submit@pigweed-service-accounts.iam.gserviceaccount.com>
Pigweed-Auto-Submit: Armando Montanez <amontanez@google.com>
Reviewed-by: Wyatt Hepler <hepler@google.com>
2023-10-05 04:05:55 +00:00
Brian Barcenas
a0882f8e6c pw_perf_test: Added ARM Cortex timing interface
Change-Id: I132abcf5db391e090311d45e7df636a786d74100
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/119970
Pigweed-Auto-Submit: Brian Barcenas <bbarcenas@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Wyatt Hepler <hepler@google.com>
2022-12-07 02:00:45 +00:00
Brian Barcenas
35714d4ced pw_perf_test: Added PW_PERF_TEST macro and its supporting components
Change-Id: I7dd3e7a1b5a48b38457647fc3fdbc8dd422f1934
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/118111
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Brian Barcenas <bbarcenas@google.com>
2022-12-03 02:32:03 +00:00
Brian Barcenas
23304eb9d5 pw_perf_test: State object support
Introducing the state object, which manages iterations and timings of
the tests.

Change-Id: I3dca90878681ba816aa15d7ef85b6423a6391140
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/114550
Commit-Queue: Brian Barcenas <bbarcenas@google.com>
Reviewed-by: Wyatt Hepler <hepler@google.com>
2022-11-21 22:28:58 +00:00
Brian Barcenas
fbd6d5d792 pw_perf_test: Added internal timing facade + backend
pw_perf_test now has a backend for which it will use
to time the tested components. This update includes
an implementation with pw_chrono, which will be used
for time-based measurements(nanoseconds).

Change-Id: I9a1bb9cf0964caa4d911a1c7c016bab3a41f1e32
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/113890
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Brian Barcenas <bbarcenas@google.com>
Reviewed-by: Erik Gilling <konkers@google.com>
2022-10-20 21:24:39 +00:00
Brian Barcenas
051673443f pw_perf_test: Initialized using pw module create
pw_perf_test is an upcoming module that will be similar to unit_test
but will instead display performance data. A small overview of the
timing interface is provided in pw_perf_test/docs.rst.

Change-Id: I74798931b769e99b3b4c7822c9b467db96b7883c
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/112971
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Brian Barcenas <bbarcenas@google.com>
2022-10-10 18:20:10 +00:00