Arjun Roy
8ce42f67b2
Shrink arena size by 40 bytes and add additional
...
alignment options (for cache-alignment).
We shrink by:
1) Removing an unnecessary zone pointer.
2) Replacing gpr_mu (40 bytes when using pthread_mutex_t) with
std::atomic_flag.
We also header-inline the fastpath alloc (ie. when not doing a zone
alloc) and move the malloc() for a zone alloc outside of the mutex
critical zone, which allows us to replace the mutex with a spinlock.
We also cache-align created arenas.
6 years ago
Soheil Hassas Yeganeh
48e4a81b05
Remeve memset(0) from arena allocated memory.
...
Callers are updated to properly initialize the memory.
This behavior can be overridden using GRPC_ARENA_INIT_STRATEGY
environment variable.
6 years ago
Hope Casey-Allen
4c6e7ce15d
Destroy metadata buffer at end of benchmark loop
6 years ago
Hope Casey-Allen
d44feec92f
Reassign arena pointer instead of stomping on memory
6 years ago
Hope Casey-Allen
4b721fbde0
Destroy arena at end of benchmark to not leak memory
6 years ago
Hope Casey-Allen
29d9489ea9
Increase initial arena size to be more representative of real workload scenario and increase frequency of recreating the arena to avoid oom
6 years ago
Hope Casey-Allen
91727bd015
Move arena create outside of benchmark, format, and typo fix
6 years ago
Hope Casey-Allen
967bbcd5d3
Fixing benchmark name and adding a new one
6 years ago
Noah Eisen
58e0cbf9fb
Enable the performance-* clang-tidy checks
7 years ago
ncteisen
40ec89ff67
Support microbenchmarks internally
7 years ago
Vijay Pai
2f4161c210
Use stack frame size limits for consistency with internal builds
7 years ago
Noah Eisen
4d20a66685
Run clang fmt
7 years ago
Noah Eisen
be82e64b3d
Autofix c casts to c++ casts
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
4ac2b8e585
Enable clang-tidy as a sanity check, fix up all known failures
7 years ago
Yash Tibrewal
0032548674
Correction to closure.cc,bm_chttp2_hpack and few more
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
ncteisen
c296e82e11
clang fmt
7 years ago
ncteisen
9e3eedb6af
Remove old header benchmark
7 years ago
ncteisen
6bf4bcef04
Fix bm_diff
7 years ago
yang-g
83085aa74f
Add a microbm, seeing 195ns with current impl and 162ns with new impl
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
yang-g
c010d1d18a
Update benchmark according to new encoding method
7 years ago
yang-g
c94c7cc5b5
restore existing fixtures
7 years ago
yang-g
377636f4d2
Make hpack micro bm more representative
7 years ago
Mark D. Roth
bd3b93b4b5
Add support for Trailers-Only responses.
...
- When receiving a Trailers-Only response, return the metadata as
trailing metadata instead of initial metadata.
- Send Trailers-Only response when we have no non-default initial metadata,
no message to send, and trailing metadata to send.
8 years ago
Jan Tattermusch
7897ae9308
auto-fix most of licenses
8 years ago
Craig Tiller
85a747ed06
better representative output
8 years ago
Craig Tiller
e76a0ecc03
Update hpack benchmarks for true binary
8 years ago
Craig Tiller
eb0e34f736
Convert everything to new encode API
8 years ago
Craig Tiller
83643bd5cb
Fix build on mac
8 years ago
Craig Tiller
61c317b624
Fix leak
8 years ago
Craig Tiller
0d04e0697b
Add a benchmark of base16 encoding
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
681507aa24
Fix memory leak
8 years ago
Craig Tiller
523d54beeb
Refine to just be a HPACK benchmark
8 years ago
Craig Tiller
0db30f3dd0
HPACK parsing benchmarks
8 years ago
Craig Tiller
5cd989e95a
Basic parsing tests
8 years ago
Craig Tiller
29dd982487
...
8 years ago
Craig Tiller
2f792d9d16
Initial http2 benchmarks
8 years ago