Yash Tibrewal
56a0153f16
Heap allocate the stream object for other benchmark cases too
2019-06-14 14:44:49 -07:00
Yash Tibrewal
cceca10a8a
Fix data race, heap use-after-free issue in bm_chttp2_transport
2019-06-13 17:05:51 -07:00
Esun Kim
e18ed03c04
Made gRPC inialized after entering main function in microbenchmarks.
2019-05-02 16:58:37 -07:00
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.
2019-04-24 16:39:03 -07:00
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%)
2019-03-06 22:15:53 -05:00
Vijay Pai
fab05d336c
Dynamic callback requesting, graceful server shutdown, and separate ExecCtx for callbacks
2019-01-23 11:21:50 -08:00
Yash Tibrewal
bab043e865
Cleanup
2018-11-16 18:11:42 -08:00
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.
2018-11-05 10:12:39 -05:00
Yash Tibrewal
8d47cd4992
Revert "Revert "Fathom tcp changes""
2018-08-27 14:56:01 -07:00
Jan Tattermusch
97ba943f17
Revert "Fathom tcp changes"
2018-08-27 12:43:20 +02:00
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.
2018-07-16 16:28:15 -07:00
ncteisen
40ec89ff67
Support microbenchmarks internally
2018-04-25 17:41:23 -07:00
Mark D. Roth
41c396ec88
Merge pull request #14607 from markdroth/c++_byte_stream
...
Convert byte_stream API to C++.
2018-03-12 11:05:36 -07:00
Mark D. Roth
3d8b32d8b3
Convert byte_stream API to C++.
2018-03-09 13:25:40 -08:00
Vijay Pai
c90a85649b
Change grpc++ references in names to grpcpp
2018-03-08 22:04:59 -08:00
Yash Tibrewal
8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed""
2017-12-06 09:47:54 -08:00
Yash Tibrewal
ad4d2dde00
Revert "All instances of exec_ctx being passed around in src/core removed"
2017-12-06 09:05:05 -08:00
Yash Tibrewal
73bb67d054
Merge master into execctx
2017-12-05 17:49:11 -08:00
Yash Tibrewal
c354269ba7
Remove _ prefixed variable names
2017-11-29 19:07:44 -08:00
Yash Tibrewal
177039b2f8
Merge master
2017-11-16 19:31:28 -08:00
Mark D. Roth
03610f672e
Merge remote-tracking branch 'upstream/master' into server_connection_timeout
2017-11-15 12:54:28 -08:00
Yash Tibrewal
6c26b16fe0
Move ExecCtx to grpc_core namespace. Make exec_ctx a private static in ExecCtx and some minor changes
2017-11-14 18:11:22 -08:00
Yash Tibrewal
75122c2357
Address some PR comments
2017-11-14 01:36:28 -08:00
Craig Tiller
4ac2b8e585
Enable clang-tidy as a sanity check, fix up all known failures
2017-11-10 14:14:17 -08:00
Yash Tibrewal
0032548674
Correction to closure.cc,bm_chttp2_hpack and few more
2017-11-10 10:48:15 -08:00
Yash Tibrewal
3150744c71
Removing more exec_ctx instances
2017-11-09 18:27:37 -08:00
Mark D. Roth
04c97d0e0d
Add notify_on_receive_settings closure to chttp2 transport.
2017-11-09 09:14:14 -08:00
Craig Tiller
baa14a975e
Update clang-format to 5.0
2017-11-03 09:09:36 -07:00
Yuchen Zeng
c01c7cbd85
Merge pull request #12219 from y-zeng/http2_connector
...
Add the endpoint used by the handshake process to connector's pollset_set
2017-10-24 11:54:29 -07:00
Yuchen Zeng
6a0874b405
Fix bm_chttp2_transport
2017-10-23 20:47:53 -07:00
Craig Tiller
3273648a87
flow control fixes
2017-10-12 22:02:28 -07:00
Craig Tiller
99fafa17a3
Fix compilation
2017-10-11 08:26:32 -07:00
Craig Tiller
bbe282f600
Merge github.com:grpc/grpc into grpc_millis
2017-09-11 12:11:40 -07:00
Craig Tiller
dfc6cffdf8
Merge github.com:grpc/grpc into write_completion
2017-09-07 14:48:40 -07:00
Mark D. Roth
764cf04a13
Revert "Revert "Implement call combiner""
...
This reverts commit bf19961d0a .
2017-09-01 09:00:06 -07:00
Craig Tiller
8fd40d5ed9
Merge github.com:grpc/grpc into wc
2017-08-31 10:54:11 -07:00
Mark D. Roth
bf19961d0a
Revert "Implement call combiner"
2017-08-29 16:59:07 -07:00
Craig Tiller
d9b82bdecb
Merge github.com:grpc/grpc into grpc_millis
2017-08-29 12:16:56 -07:00
Mark D. Roth
76e264b8df
Implement call combiner.
2017-08-25 09:03:33 -07:00
Craig Tiller
4c0ac4a9f5
Fix fix fix chttp2_transport
2017-07-21 10:38:18 -07:00
Craig Tiller
cbb384007e
Fix bm_chttp2_transport
2017-07-21 09:52:25 -07:00
Craig Tiller
89c1428a60
Propagate grpc_millis further
2017-07-19 15:32:27 -07:00
ncteisen
3c909d55fd
Pull out flow control objects
2017-07-18 17:06:58 -07:00
ncteisen
06f052b35d
Get rid of local window, fix qps worker
2017-07-18 17:06:58 -07:00
ncteisen
268a82398c
Pull flow control into one module
2017-07-18 17:06:57 -07:00
ncteisen
274bbbe6a0
Add rich closure debug mode
2017-06-08 15:29:29 -07:00
Craig Tiller
b3899fd18b
Merge github.com:grpc/grpc into ALL-the-things
2017-06-08 07:54:10 -07:00
Jan Tattermusch
7897ae9308
auto-fix most of licenses
2017-06-08 11:22:41 +02:00
Craig Tiller
d8e896ecd7
Remove function
2017-05-24 15:55:43 -07:00
Muxi Yan
29723ee1ba
Revert "Revert "Implement lazy deframe""
2017-04-12 20:24:42 -07:00