AJ Heller
d10617edb5
Move resource_user ownership into chttp2 transport/server/connector v2 ( #27032 )
...
Reintroducing PR #26643 , which was reverted in #27029
Fixed a memory leak and added a test that would have caught it (ASAN build): ca0c8c4
3 years ago
Craig Tiller
f5d3ed2db1
Revert "Move resource_user ownership into chttp2 transport/server/connector ( #26643 )" ( #27029 )
...
This reverts commit d1935a65a1
. Will be rolled forward with a fix.
3 years ago
AJ Heller
d1935a65a1
Move resource_user ownership into chttp2 transport/server/connector ( #26643 )
3 years ago
Vijay Pai
0f80378a21
Resolve race between OnReadDone(ok=false) and IsCancelled ( #26245 )
...
* Resolve and test race between OnReadDone(ok=false) and IsCancelled
* Fix retry case
* Fix health check case
* Address reviewer comments.
* ADD TODO requested by markdroth
4 years ago
Esun Kim
ca945a58e9
Introduced grpc_error_handle ( #25902 )
...
- Define grpc_error_handle
- Replace grpc_error* with grpc_error_handle
4 years ago
Yash Tibrewal
7021b72d1f
Revert Revert Xds Status Notifier ( #25718 )
...
* Revert "Revert "xDS status notifier (#25321 )" (#25702 )"
This reverts commit 3c9f3972e3
.
* Remove connection from map when OnClose is not registered
* Reviewer comments
4 years ago
Yash Tibrewal
3c9f3972e3
Revert "xDS status notifier ( #25321 )" ( #25702 )
...
This reverts commit 81e90432e1
.
4 years ago
Yash Tibrewal
81e90432e1
xDS status notifier ( #25321 )
...
* Serving status notification for xds enabled servers
4 years ago
AJ Heller
0e3a02e903
Revert "Remove the `urgent` argument from iomgr tcp read API ( #25494 )" ( #25592 )
...
This reverts commit a3398f9
. Justification: see b/181367644. tl;dr: assuming urgent==false does not hold in all situations.
4 years ago
AJ Heller
a3398f924c
Remove the `urgent` argument from iomgr tcp read API ( #25494 )
...
The urgent argument is a platform-specific flag that leaked into the (ideally) platform-independent HTTP/2 transport layer. In an effort to clean up the cross-platform API surface, it would be helpful if we can remove this argument from the TCP Read api without losing the performance optimization that was introduced along with it (see #18240 ).
4 years ago
Yash Tibrewal
f4e55b85bc
Replace disrespectful term
4 years ago
Esun Kim
53ab235fb8
Fix google-explicit-constructor
4 years ago
Esun Kim
2ff84ed8c2
C++ cast for void*
4 years ago
Michael Wang
c6586f087f
implemented get_local_address accessor for grpc_endpoint
4 years ago
Esun Kim
62ac3f075a
Added call to grpc::testing::TestEnvironment in tests
4 years ago
Esun Kim
b92c3a2879
Changed Closure to TestClosure to avoid name conflict
5 years ago
Yash Tibrewal
79aa21fa71
Reviewer comments
5 years ago
Yash Tibrewal
61020b55f9
Remove GRPC_CLOSURE_LIST_SCHED and remove scheduler field from grpc_closure
5 years ago
Yash Tibrewal
08ba7246c0
Remove GRPC_CLOSURE_RUN and replace with grpc_core::Closure::Run
5 years ago
Yash Tibrewal
3a189d7e08
test changes
5 years ago
Vijay Pai
82e185399d
clang-format
5 years ago
Vijay Pai
6ca827a008
Remove unused parameter warning (18 of 20)
5 years ago
Yash Tibrewal
0a57e9cc69
Fix bm chttp2 transport
5 years ago
Hope Casey-Allen
6dfe27ab08
Fix race in bm_chttp2_transport
5 years ago
Hope Casey-Allen
59564ebd96
Fix warnings to unblock gcc8 support
5 years ago
Yash Tibrewal
56a0153f16
Heap allocate the stream object for other benchmark cases too
6 years ago
Yash Tibrewal
cceca10a8a
Fix data race, heap use-after-free issue in bm_chttp2_transport
6 years ago
Esun Kim
e18ed03c04
Made gRPC inialized after entering main function in microbenchmarks.
6 years ago
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
18b19105f2
Implement TCP_INQ for gRPC in Linux
...
TCP_INQ is a socket option we added to Linux to report pending bytes
on the socket as a control message.
Using TCP_INQ we can accurately decide whether to continue read or not.
Add an urgent parameter, when we do not want to wait for EPOLLIN.
This commit improves the latency of 1 RPC unary (minimal benchmark)
significantly:
Before:
l_50: 61.3584984733
l_90: 94.8328711277
l_99: 126.211351174
l_999: 158.722406029
After:
l_50: 51.3546011488 (-16%)
l_90: 72.3420731581 (-23%)
l_99: 103.280218974 (-18%)
l_999: 130.905689996 (-17%)
6 years ago
Vijay Pai
fab05d336c
Dynamic callback requesting, graceful server shutdown, and separate ExecCtx for callbacks
6 years ago
Yash Tibrewal
bab043e865
Cleanup
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
Yash Tibrewal
8d47cd4992
Revert "Revert "Fathom tcp changes""
6 years ago
Jan Tattermusch
97ba943f17
Revert "Fathom tcp changes"
6 years ago
Yash Tibrewal
f0397933b0
Fathom TCP level changes. TracedBuffer for keeping track of all buffers
...
to be traced. Adding tests for Fathom and TracedBuffer. A lot more.
Please read PR description.
6 years ago
ncteisen
40ec89ff67
Support microbenchmarks internally
7 years ago
Mark D. Roth
3d8b32d8b3
Convert byte_stream API to C++.
7 years ago
Vijay Pai
c90a85649b
Change grpc++ references in names to grpcpp
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
Mark D. Roth
e204e5e497
Apply #13336 to v1.8.x branch.
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
Mark D. Roth
04c97d0e0d
Add notify_on_receive_settings closure to chttp2 transport.
7 years ago