grpc/test/cpp/microbenchmarks
AJ Heller 2ee2c91c92
Reland x2: Make GetDefaultEventEngine return a shared_ptr (#30619)
* Reland x2: Make GetDefaultEventEngine return a shared_ptr

* remove thread leak from NativeDNSResolver

This is not going to work for resolvers that support cancellation.

* give resolvers bounded lifetimes

Some resolver own EventEngines. EventEngines cannot run off the end of
the process since they have unjoined threads (problematic in a small set
of environments). This gives resolvers bounded lifetimes, and allows
replacement of resolvers without ASAN issues of deleting resolvers in
active use (occurs in tests).

* fix

* fix windows

* fix surface init test

* fix

* sanitize

* use after move

* the test must wait for the callback to be destroyed

* windows fix: delete the resolver on iomgr shutdown, not before

* Make TimerManager threads non-joinable

On gRPC shutdown, any unjoined TimerManager threads will cause TSAN to
detect thread leaks. This fix resolves issues I saw in end2end test
shutdown in another PR, where a single timer manager thread was always
alive after the test ended.

The long-term solution is to integrate the new ThreadPool here, but this
unblocks me for now.

* backport fix

* fix

* shared_ptr<EventEngine> in EventEngine benchmarks
2022-09-28 08:39:56 -07:00
..
BUILD EventEngine::Run microbenchmarks (#30769) 2022-09-27 14:57:36 -07:00
bm_alarm.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_arena.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_byte_buffer.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_call_create.cc Removed GRPC_ERROR_NONE (#31131) 2022-09-27 23:17:39 -07:00
bm_callback_streaming_ping_pong.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_callback_unary_ping_pong.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_channel.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_channel_args.cc [channel_args] Improve comparison performance (#30322) 2022-07-19 15:40:09 -07:00
bm_chttp2_hpack.cc Removing GRPC_ERROR_[REF|UNREF|IS_NONE] (#31089) 2022-09-26 15:41:12 -07:00
bm_chttp2_transport.cc Removed GRPC_ERROR_NONE (#31131) 2022-09-27 23:17:39 -07:00
bm_closure.cc Removed GRPC_ERROR_NONE (#31131) 2022-09-27 23:17:39 -07:00
bm_cq.cc Removed GRPC_ERROR_NONE (#31131) 2022-09-27 23:17:39 -07:00
bm_cq_multiple_threads.cc Removed GRPC_ERROR_NONE (#31131) 2022-09-27 23:17:39 -07:00
bm_event_engine_run.cc Reland x2: Make GetDefaultEventEngine return a shared_ptr (#30619) 2022-09-28 08:39:56 -07:00
bm_exec_ctx.cc EventEngine::Run microbenchmarks (#30769) 2022-09-27 14:57:36 -07:00
bm_fullstack_streaming_ping_pong.cc [fixit] Reduce the size of this benchmark under expensive sanitizers (#30715) 2022-08-23 13:48:05 -07:00
bm_fullstack_streaming_pump.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_fullstack_unary_ping_pong.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_huffman_decode.cc Revert "Revert "[chttp2] Improve huffman decode efficiency (#30479)" (#30961)" (#30962) 2022-09-13 13:16:55 -07:00
bm_opencensus_plugin.cc [iwyu] c++ (#29721) 2022-05-19 07:34:48 -07:00
bm_pollset.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00
bm_work_queue.cc Performant thread-safe Work Queue (#30821) 2022-09-23 09:10:42 -07:00
callback_streaming_ping_pong.h [cleanup] Remove profiling timers (#30779) 2022-08-30 13:40:08 -07:00
callback_test_service.cc Reintroduce: Avoid fully qualifying namespaces (and add check) (#28917) 2022-02-18 16:18:54 -08:00
callback_test_service.h Adjust include order per style guide (#27175) 2021-09-08 12:14:44 -07:00
callback_unary_ping_pong.h [cleanup] Remove profiling timers (#30779) 2022-08-30 13:40:08 -07:00
fullstack_context_mutators.h Fix google-explicit-constructor 2020-12-03 15:03:39 -08:00
fullstack_fixtures.h [chttp2] use new channel args type (#30252) 2022-07-10 22:43:44 -07:00
fullstack_streaming_ping_pong.h [cleanup] Remove profiling timers (#30779) 2022-08-30 13:40:08 -07:00
fullstack_streaming_pump.h [cleanup] Remove profiling timers (#30779) 2022-08-30 13:40:08 -07:00
fullstack_unary_ping_pong.h [cleanup] Remove profiling timers (#30779) 2022-08-30 13:40:08 -07:00
grpc_benchmark_config.bzl Speed up microbenchmark tests (#27584) 2021-10-05 07:09:02 -07:00
helpers.cc [cleanup] Remove low level counters (#30611) 2022-08-30 21:13:15 -07:00
helpers.h [cleanup] Remove low level counters (#30611) 2022-08-30 21:13:15 -07:00
noop-benchmark.cc Refactor end2end tests to exercise each EventEngine (#29202) 2022-03-30 15:43:05 -07:00