]> git.ipfire.org Git - thirdparty/haproxy.git/commit
OPTIM: mux-h1: subscribe rather than waking up at a few other places
authorWilly Tarreau <w@1wt.eu>
Wed, 4 Mar 2020 16:50:02 +0000 (17:50 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 4 Mar 2020 18:29:12 +0000 (19:29 +0100)
commit2c1f37d3537c725e87c728bd2c5e7d3b380cdd37
treed99a893bbea451bda37cd56b32527e89e11a509f
parent6f95f6e111304c40fd18eee78a7e3372596d599f
OPTIM: mux-h1: subscribe rather than waking up at a few other places

This is another round of conversion from a blind tasklet_wakeup() to
a more careful subscribe(). It has significantly improved the number
of function calls per HTTP request (/?s=1k/t=20) :
                        before    after
 tasklet_wakeup:          3         2
 conn_subscribe:          3         2
 h1_iocb:                 3         2
 h1_process:              3         2
 h1_parse_msg_hdrs:       4         3
 h1_rcv_buf:              5         3
 h1_send:                 5         4
 h1_subscribe:            2         1
 h1_wake_stream_for_send: 5         4
 http_wait_for_request:   2         1
 process_stream:          3         2
 si_cs_io_cb:             4         2
 si_cs_process:           3         1
 si_cs_rcv:               5         3
 si_sync_send:            2         1
 si_update_both:          2         1
 stream_int_chk_rcv_conn: 3         2
 stream_int_notify:       3         1
 stream_release_buffers:  9         4
src/mux_h1.c