tree: bc99b8631eefc7e43b85885b42b70fd43edb92e9 [path history] [tgz]
  1. meta/
  2. BUILD.gn
  3. channels.cc
  4. events.cc
  5. expose.cc
  6. fdio_spawn.cc
  7. fdio_spawn_helper.cc
  8. fifos.cc
  9. filesystem.cc
  10. handle.cc
  11. inspect.cc
  12. lazy_dir.cc
  13. mem_alloc.cc
  14. mmu.cc
  15. OWNERS
  16. ports.cc
  17. prng.cc
  18. pseudo_dir.cc
  19. pthreads.cc
  20. random_memcpy.cc
  21. README.md
  22. round_trip_service.fidl
  23. round_trips.cc
  24. round_trips.h
  25. sockets.cc
  26. test_runner.cc
  27. test_runner.h
  28. threads.cc
  29. util.cc
  30. util.h
  31. vmo.cc
garnet/bin/zircon_benchmarks/README.md

Zircon Benchmarks

Microbenchmarks for the Zircon kernel and services.

Writing Benchmarks

This uses Zircon's perftest library.

Running Benchmarks

There are two ways to run zircon_benchmarks:

  • perftest mode: This mode will record the times taken by each run of the benchmarks, allowing further analysis, which is useful for detecting performance regressions. It also prints some summary statistics. This uses the test runner provided by Zircon's perftest library.

    For this, run zircon_benchmarks -p --out=output.json. The result data will be written to output.json using our perf test result schema.

    See Zircon's perftest library for details of the other command line options.

  • Test-only mode: This runs on the bots via runtests, and it just checks that each benchmark still works. It runs quickly -- it runs only a small number of iterations of each benchmark. It does not print any performance information.

    For this, run run-test-component fuchsia-pkg://fuchsia.com/zircon_benchmarks#meta/zircon_benchmarks.cmx.