Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preparation for the new background poller 'epollbg' #17244

Merged
merged 7 commits into from
Nov 28, 2018

Conversation

guantaol
Copy link
Contributor

Extend ev_posix.* to prepare for the new background poller 'epollbg',
and get rid of the dependency loop on the grpc shutdown path. Make sure
all background closures are complete before shutting down the other grpc
modules.

Avoid using the backup poller in TCP endpoints if using the background
poller.

and get rid of the dependency loop on the grpc shutdown path. Make sure
all background closures are complete before shutting down the other grpc
modules.

Avoid using the backup poller in TCP endpoints if using the background
poller.
@guantaol guantaol added lang/core release notes: yes Indicates if PR needs to be in release notes labels Nov 19, 2018
@guantaol guantaol requested a review from vjpai November 19, 2018 20:50
@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                           FILE SIZE
 ++++++++++++++ GROWING                                             ++++++++++++++
  +0.1%    +968 [None]                                              +1.57Ki  +0.0%
      +0.1%    +960 [Unmapped]                                          +1.53Ki  +0.0%
      +3.1%     +40 vtable                                                  +40  +3.1%
  +1.1%     +80 src/core/lib/iomgr/tcp_posix.cc                         +80  +1.1%
      [NEW]    +268 tcp_handle_write                                       +268  [NEW]
       +18%     +96 notify_on_write                                         +96   +18%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                          +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                        +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                     +12  [NEW]
      +3.0%      +7 [Unmapped]                                               +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                   +16  +0.2%
      +4.5%     +14 [Unmapped]                                              +14  +4.5%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                  +16  +0.1%
      +4.9%     +14 [Unmapped]                                              +14  +4.9%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                     +16  +0.1%
      +3.3%     +14 [Unmapped]                                              +14  +3.3%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                             +16  +1.0%
       +19%     +11 [Unmapped]                                              +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                   +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                      +16  +4.8%
       +56%     +14 [Unmapped]                                              +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure               +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                    +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure         +10  [NEW]
       +19%      +6 [Unmapped]                                               +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                       +16  +9.3%
       +26%     +11 [Unmapped]                                              +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure               +5  [NEW]

  +0.1% +1.16Ki TOTAL                                               +1.79Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,020,670      Total (>)      2,020,494

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,970,422       Core (>)      3,968,890

11,177,157      Total (>)     11,175,631


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] No significant performance differences

@guantaol
Copy link
Contributor Author

The test failures are because we forget to update iomgr_windows.cc etc. Add the missing changes now.

@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                           FILE SIZE
 ++++++++++++++ GROWING                                             ++++++++++++++
  +0.1%    +968 [None]                                              +1.57Ki  +0.0%
      +0.1%    +960 [Unmapped]                                          +1.53Ki  +0.0%
      +3.1%     +40 vtable                                                  +40  +3.1%
  +1.1%     +80 src/core/lib/iomgr/tcp_posix.cc                         +80  +1.1%
      [NEW]    +268 tcp_handle_write                                       +268  [NEW]
       +18%     +96 notify_on_write                                         +96   +18%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                          +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                        +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                     +12  [NEW]
      +3.0%      +7 [Unmapped]                                               +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                   +16  +0.2%
      +4.5%     +14 [Unmapped]                                              +14  +4.5%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                  +16  +0.1%
      +4.9%     +14 [Unmapped]                                              +14  +4.9%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                     +16  +0.1%
      +3.3%     +14 [Unmapped]                                              +14  +3.3%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                             +16  +1.0%
       +19%     +11 [Unmapped]                                              +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                   +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                      +16  +4.8%
       +56%     +14 [Unmapped]                                              +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure               +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                    +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure         +10  [NEW]
       +19%      +6 [Unmapped]                                               +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                       +16  +9.3%
       +26%     +11 [Unmapped]                                              +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure               +5  [NEW]

  +0.1% +1.16Ki TOTAL                                               +1.79Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,020,670      Total (>)      2,020,494

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,970,422       Core (>)      3,968,890

11,177,158      Total (>)     11,175,630


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] No significant performance differences

@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                           FILE SIZE
 ++++++++++++++ GROWING                                             ++++++++++++++
  +0.1%    +968 [None]                                              +1.57Ki  +0.0%
      +0.1%    +960 [Unmapped]                                          +1.53Ki  +0.0%
      +3.1%     +40 vtable                                                  +40  +3.1%
  +1.1%     +80 src/core/lib/iomgr/tcp_posix.cc                         +80  +1.1%
      [NEW]    +268 tcp_handle_write                                       +268  [NEW]
       +18%     +96 notify_on_write                                         +96   +18%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                          +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                        +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                     +12  [NEW]
      +3.0%      +7 [Unmapped]                                               +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                   +16  +0.2%
      +4.5%     +14 [Unmapped]                                              +14  +4.5%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                  +16  +0.1%
      +4.9%     +14 [Unmapped]                                              +14  +4.9%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                     +16  +0.1%
      +3.3%     +14 [Unmapped]                                              +14  +3.3%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                             +16  +1.0%
       +19%     +11 [Unmapped]                                              +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                   +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                      +16  +4.8%
       +56%     +14 [Unmapped]                                              +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure               +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                    +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure         +10  [NEW]
       +19%      +6 [Unmapped]                                               +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                       +16  +9.3%
       +26%     +11 [Unmapped]                                              +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure               +5  [NEW]

  +0.1% +1.16Ki TOTAL                                               +1.79Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,020,670      Total (>)      2,020,494

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,970,422       Core (>)      3,968,890

11,177,157      Total (>)     11,175,631


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] No significant performance differences

@guantaol
Copy link
Contributor Author

Known issues for the failing tests:
Basic Tests Multi-language Linux: #17138
Bazel RBE UBSAN C/C++: #17208

GRPC_CLOSURE_INIT(&tcp->write_done_closure,
tcp_drop_uncovered_then_handle_write, tcp,
grpc_schedule_on_exec_ctx);
if (grpc_event_engine_run_in_background()) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this will be constant once the code has started, can this information be memoized rather than having to continuously call a virtual function?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In retrospect, I think my comment here was misguided because this isn't an actual virtual function after all. It lives in the vtbl but is just a boolean, and I hadn't noticed that at first.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I think it should be fine to call grpc_event_engine_run_in_background() in the if condition, right? Given that grpc_event_engine_run_in_background() only accesses a boolean member of a global struct, it should not be very costly.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Revert the last two commits.

@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                                                            FILE SIZE
 ++++++++++++++ GROWING                                                                              ++++++++++++++
  +0.2% +1.24Ki [None]                                                                               +5.94Ki  +0.1%
      +0.2% +1.14Ki [Unmapped]                                                                           +5.90Ki  +0.1%
      +4.9%     +55 [None]                                                                                     0  [ = ]
      +3.1%     +40 vtable                                                                                   +40  +3.1%
      [NEW]      +8 guard variable for notify_on_write((anonymous namespace)::grpc_tcp*)::event_engine_r       0  [ = ]
      [NEW]      +1 notify_on_write((anonymous namespace)::grpc_tcp*)::event_engine_run_in_background          0  [ = ]
  +2.0%    +160 src/core/lib/iomgr/tcp_posix.cc                                                         +160  +2.0%
      [NEW]    +268 tcp_handle_write                                                                        +268  [NEW]
       +34%    +176 notify_on_write                                                                         +176   +34%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                                                           +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                                                         +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                                                      +12  [NEW]
      +3.0%      +7 [Unmapped]                                                                                +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                                                    +16  +0.2%
      +4.5%     +14 [Unmapped]                                                                               +14  +4.5%
      [NEW]      +2 shutdown_background_closure                                                               +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                                                   +16  +0.1%
      +4.9%     +14 [Unmapped]                                                                               +14  +4.9%
      [NEW]      +2 shutdown_background_closure                                                               +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                                                      +16  +0.1%
      +3.3%     +14 [Unmapped]                                                                               +14  +3.3%
      [NEW]      +2 shutdown_background_closure                                                               +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                                                              +16  +1.0%
       +19%     +11 [Unmapped]                                                                               +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                                                    +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                                                       +16  +4.8%
       +56%     +14 [Unmapped]                                                                               +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure                                                +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                                                     +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure                                          +10  [NEW]
       +19%      +6 [Unmapped]                                                                                +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                                                        +16  +9.3%
       +26%     +11 [Unmapped]                                                                               +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure                                                +5  [NEW]

  +0.1% +1.54Ki TOTAL                                                                                +6.23Ki  +0.1%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]




static bool event_engine_run_in_background =
grpc_event_engine_run_in_background();
if (event_engine_run_in_background) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is going to compile down to a lock / call / unlock . Can this memoization be done in the plugin initialization instead?

Copy link
Member

@vjpai vjpai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I think your previous version was right and my comment was misguided. I just realized that this wasn't a real virtual call even though it's in a vtbl.

@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,021,748      Total (>)      2,021,324

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,973,150       Core (>)      3,970,922

11,179,890      Total (>)     11,177,664


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] No significant performance differences

…gine runs in background or not"

This reverts commit 9bbda89.
@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                           FILE SIZE
 ++++++++++++++ GROWING                                             ++++++++++++++
  +0.1% +1.01Ki [None]                                              +1.49Ki  +0.0%
      +0.1%    +960 [Unmapped]                                          +1.45Ki  +0.0%
      +3.1%     +40 vtable                                                  +40  +3.1%
      +3.0%     +32 [None]                                                    0  [ = ]
  +1.0%     +80 src/core/lib/iomgr/tcp_posix.cc                         +80  +1.0%
      [NEW]    +268 tcp_handle_write                                       +268  [NEW]
       +18%     +96 notify_on_write                                         +96   +18%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                          +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                        +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                     +12  [NEW]
      +3.0%      +7 [Unmapped]                                               +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                   +16  +0.2%
      +4.5%     +14 [Unmapped]                                              +14  +4.5%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                  +16  +0.1%
      +4.9%     +14 [Unmapped]                                              +14  +4.9%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                     +16  +0.1%
      +3.3%     +14 [Unmapped]                                              +14  +3.3%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                             +16  +1.0%
       +19%     +11 [Unmapped]                                              +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                   +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                      +16  +4.8%
       +56%     +14 [Unmapped]                                              +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure               +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                    +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure         +10  [NEW]
       +19%      +6 [Unmapped]                                               +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                       +16  +9.3%
       +26%     +11 [Unmapped]                                              +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure               +5  [NEW]

  +0.1% +1.23Ki TOTAL                                               +1.71Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,020,400      Total (>)      2,020,224

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,949,022       Core (>)      3,947,490

11,155,758      Total (>)     11,154,225


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] No significant performance differences

@grpc-testing
Copy link

****************************************************************

libgrpc.so

     VM SIZE                                                           FILE SIZE
 ++++++++++++++ GROWING                                             ++++++++++++++
  +0.1% +1.01Ki [None]                                              +1.49Ki  +0.0%
      +0.1%    +960 [Unmapped]                                          +1.45Ki  +0.0%
      +3.1%     +40 vtable                                                  +40  +3.1%
      +3.0%     +32 [None]                                                    0  [ = ]
  +1.0%     +80 src/core/lib/iomgr/tcp_posix.cc                         +80  +1.0%
      [NEW]    +268 tcp_handle_write                                       +268  [NEW]
       +18%     +96 notify_on_write                                         +96   +18%
  +1.5%     +32 src/core/lib/iomgr/ev_posix.cc                          +32  +1.5%
      [NEW]     +13 grpc_shutdown_background_closure                        +13  [NEW]
      [NEW]     +12 grpc_event_engine_run_in_background                     +12  [NEW]
      +3.0%      +7 [Unmapped]                                               +7  +3.0%
  +0.2%     +16 src/core/lib/iomgr/ev_epoll1_linux.cc                   +16  +0.2%
      +4.5%     +14 [Unmapped]                                              +14  +4.5%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_epollex_linux.cc                  +16  +0.1%
      +4.9%     +14 [Unmapped]                                              +14  +4.9%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +0.1%     +16 src/core/lib/iomgr/ev_poll_posix.cc                     +16  +0.1%
      +3.3%     +14 [Unmapped]                                              +14  +3.3%
      [NEW]      +2 shutdown_background_closure                              +2  [NEW]
  +1.0%     +16 src/core/lib/iomgr/iomgr.cc                             +16  +1.0%
       +19%     +11 [Unmapped]                                              +11   +19%
      [NEW]      +5 grpc_iomgr_shutdown_background_closure                   +5  [NEW]
  +4.8%     +16 src/core/lib/iomgr/iomgr_custom.cc                      +16  +4.8%
       +56%     +14 [Unmapped]                                              +14   +56%
      [NEW]      +2 iomgr_platform_shutdown_background_closure               +2  [NEW]
   +18%     +16 src/core/lib/iomgr/iomgr_internal.cc                    +16   +18%
      [NEW]     +10 grpc_iomgr_platform_shutdown_background_closure         +10  [NEW]
       +19%      +6 [Unmapped]                                               +6   +19%
  +9.3%     +16 src/core/lib/iomgr/iomgr_posix.cc                       +16  +9.3%
       +26%     +11 [Unmapped]                                              +11   +26%
      [NEW]      +5 iomgr_platform_shutdown_background_closure               +5  [NEW]

  +0.1% +1.23Ki TOTAL                                               +1.71Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



@grpc-testing
Copy link

[trickle] No significant performance differences

@grpc-testing
Copy link

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,020,400      Total (>)      2,020,224

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
 3,949,022       Core (>)      3,947,490

11,155,764      Total (>)     11,154,221


@grpc-testing
Copy link

Corrupt JSON data (indicates timeout or crash): 
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.new: 10
    bm_call_create.BM_IsolatedFilter_ClientChannelFilter_NoOp_.counters.old: 10


[microbenchmarks] Performance differences noted:
Benchmark                   cpu_time    real_time
--------------------------  ----------  -----------
BM_ClosureSched3OnCombiner  +4%         +4%

@guantaol
Copy link
Contributor Author

New flaky test:
Tsan C++: #16721

@guantaol guantaol merged commit 99673fc into grpc:master Nov 28, 2018
@lock lock bot locked as resolved and limited conversation to collaborators Feb 27, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
lang/core release notes: yes Indicates if PR needs to be in release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants