Esun Kim
e18ed03c04
Made gRPC inialized after entering main function in microbenchmarks.
6 years ago
xtao
7766912dda
fix more detected mu/cv leaks
6 years ago
Noah Eisen
e8157e662c
remove unnecessary blank line
7 years ago
Noah Eisen
39a6bb6c3e
Fix asan closure bug
7 years ago
ncteisen
40ec89ff67
Support microbenchmarks internally
7 years ago
Mark D. Roth
dbdf495f61
Split lib/support into lib/gpr and lib/gpr++.
7 years ago
Muxi Yan
38fcd0c6c3
clang-format
7 years ago
Yash Tibrewal
8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed""
7 years ago
Yash Tibrewal
ad4d2dde00
Revert "All instances of exec_ctx being passed around in src/core removed"
7 years ago
Yash Tibrewal
c354269ba7
Remove _ prefixed variable names
7 years ago
Yash Tibrewal
6c26b16fe0
Move ExecCtx to grpc_core namespace. Make exec_ctx a private static in ExecCtx and some minor changes
7 years ago
Yash Tibrewal
75122c2357
Address some PR comments
7 years ago
Craig Tiller
be98d24841
clang-format after nullptr changes
7 years ago
Craig Tiller
4ac2b8e585
Enable clang-tidy as a sanity check, fix up all known failures
7 years ago
Yash Tibrewal
3150744c71
Removing more exec_ctx instances
7 years ago
Craig Tiller
baa14a975e
Update clang-format to 5.0
7 years ago
Yash Tibrewal
39aed1ae8b
Remove unnecessary extern Cs
7 years ago
Yash Tibrewal
0ee7574732
Removing instances of exec_ctx being passed around in functions in
...
src/core. exec_ctx is now a thread_local pointer of type ExecCtx instead of
grpc_exec_ctx which is initialized whenever ExecCtx is instantiated. ExecCtx
also keeps track of the previous exec_ctx so that nesting of exec_ctx is
allowed. This means that there is only one exec_ctx being used at any
time. Also, grpc_exec_ctx_finish is called in the destructor of the
object, and the previous exec_ctx is restored to avoid breaking current
functionality. The code still explicitly calls grpc_exec_ctx_finish
because removing all such instances causes the code to break.
7 years ago
ncteisen
969b46ef73
Add rich closure debug mode
8 years ago
ncteisen
274bbbe6a0
Add rich closure debug mode
8 years ago
Jan Tattermusch
7897ae9308
auto-fix most of licenses
8 years ago
Craig Tiller
38e94c2805
Fix C++ build
8 years ago
Craig Tiller
c945c12b47
Revert "Revert "Split bm_fullstack into pieces, reuse infrastructure across other microbenchmarks""
...
This reverts commit 0cb7fef406
.
8 years ago
Jan Tattermusch
0cb7fef406
Revert "Split bm_fullstack into pieces, reuse infrastructure across other microbenchmarks"
8 years ago
Craig Tiller
e4a2419597
Bugfixes
8 years ago
Craig Tiller
5e3215338f
Move helpers to a common place, use them everywhere
8 years ago
Craig Tiller
edbf2b9d13
Add a spinlock type.
...
Useful for situations where we need to repeatedly trylock, not useful
for cases where we need to lock (due to spinning).
Add a variant of sync_test to test it (with the same tests we run for
gpr_mu).
Add a benchmark to bm_closure to demonstrate single threaded performance.
8 years ago
Craig Tiller
7f4d30a032
Separate CAS/ADD RMWs
8 years ago
Craig Tiller
f3dec9c995
Add counters for rmw atomic operations to microbenchmarks
8 years ago
Craig Tiller
f4ea01b71a
Complete microbenchmarks
8 years ago
Craig Tiller
4dde8b277d
Fix stack corruption
8 years ago
Craig Tiller
96f8728b06
Add a comparison benchmark of acquiring a mutex
8 years ago
Craig Tiller
b3f34b6c2b
Add benchmarks of closures, combiners, exec_ctx primitives
8 years ago