| Commit message (Collapse) | Author | Age |
... | |
| |\ \
| | | |
| | | | |
Account the memory usage of channel and call by resource quota
|
| | | | |
|
| |/ / |
|
| | |
| | |
| | |
| | | |
Suggested-by: vjpai@google.com
|
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure paddings are GPR_CACHELINE_SIZE minus the
size of fields in that cache line. Otherwise, we will waste an
additional cache line for no good reason.
|
| | |
| | |
| | |
| | | |
Explain that the input parameter cannot be nullptr.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit contains a few improvements:
1. Using a consequetive range of [0..4], will allow us to merge all
branches of error_is_special into one comparison.
2. With (1), we can remove the for loops to find entries in
error_status_map with a single O(1) lookup.
3. grpc_error_is_special() code paths should be inlined for ref
and unref to avoid callq for the majority of cases where speical
error is used.
4. grpc_error_get_int() should never accept a nullptr argument to
avoid an expensive branch in the hot path. Callers should all
allocate a dummy int on the stack when calling.
|
| |\ \
| | | |
| | | | |
Protect Spammy Log with Tracer
|
| |\ \ \
| | | | |
| | | | | |
fix: while using eventfd, a random fd will be closed when error occurs during creating eventfd
|
| | |/ /
| |/| | |
|
| |\ \ \
| | | | |
| | | | | |
Simple optimizations in TCP read
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We overallocate by 2x for target. Unless buffer is more than half
full, we should not delay read for more allocation.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If we have a continous stream of bytes on the socket, we will
never grow the buffer, because we will never get EAGAIN, and
call finish. This is a serious performance issue, which can
be misued.
As soon as we have a full buffer, update the estimate.
|
| |\ \ \ \
| | |/ / /
| |/| | | |
Unify fallthrough comment in switch statements
|
| | | | | |
|
| |/ / / |
|
| |\ \ \
| | | | |
| | | | | |
Clean some timer code
|
| |\ \ \ \
| | | | | |
| | | | | | |
Disable error tracking until Fathom changes are commited
|
| |\ \ \ \ \
| | | | | | |
| | | | | | | |
Core infrastructure for timer manager debug
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | |/ / / /
| |/| | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | |/ /
| | | | |
| | | | |
| | | | | |
while using eventfd, when error occurs during creating eventfd, a random fd will be closed]
|
| |\ \ \ \
| | | |/ /
| | |/| | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| |/ / / |
|
| | | | |
|
| |\ \ \
| | | | |
| | | | | |
Increase the maximum number of timer shards to 32.
|
| |\ \ \ \
| | | | | |
| | | | | | |
Avoid extra branches in grpc_error_get_(str|int).
|
| | |_|/ /
| |/| | | |
|
| | | | | |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
Commit 82f9886e accidentally sets the maximum number of timer shards 1, from
previously 32.
We probably want to increase the max shards further.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Moving the check for "which" inside the for loop, will let the compiler
unroll the loop and merge it with the branches grpc_error_is_especial.
This is visible in the following godbolts:
Before: https://godbolt.org/z/Nqujh1
After: https://godbolt.org/z/fA2PX-
|
| |/ |
|
| |\ |
|
| | | |
|
| | | |
|
| | |\ |
|
| | | |\ |
|
| | | | |\ |
|
| | | | | | |
|
| | | | | | |
|