The patches are also available at github. https://github.com/azhou-nicira/ovs-review/tree/poll-group
On Fri, Feb 19, 2016 at 12:40 PM, Andy Zhou <az...@ovn.org> wrote: > Introduce a new 'poll group' feature to improve the efficiency of poll > loop in dealing with large number of connections, and its first application > to improve ovsdb-server to scale up connections. > > Patch 6/6 commit log as some performance numbers. They are copied here > for reference. > > For ovsdb-server to maintain 1000 idle connections over TCP with the > default 5s probe interval, the CPU load droped from 48% to 14%. > > Andy Zhou (6): > lib: Introduce poll group provider class > lib: Add epoll poll group implementation for the Linux platform > lib: Update stream class to support poll group. > lib: Add poll group support in jsonrpc library. > lib: add poll_block_waken_by_timer > ovsdb: Change jsonrpc server to make use of poll group > > NEWS | 5 +- > lib/automake.mk | 4 + > lib/jsonrpc.c | 74 ++++++++++- > lib/jsonrpc.h | 7 + > lib/poll-group-epoll.c | 321 > ++++++++++++++++++++++++++++++++++++++++++++++ > lib/poll-group-provider.h | 156 ++++++++++++++++++++++ > lib/poll-group.c | 224 ++++++++++++++++++++++++++++++++ > lib/poll-group.h | 51 ++++++++ > lib/poll-loop.c | 11 ++ > lib/poll-loop.h | 3 + > lib/stream-fd.c | 32 +++++ > lib/stream-provider.h | 17 +++ > lib/stream-ssl.c | 40 +++++- > lib/stream-tcp.c | 3 + > lib/stream-unix.c | 3 + > lib/stream.c | 83 +++++++++++- > lib/stream.h | 5 + > ovsdb/jsonrpc-server.c | 75 ++++++++++- > ovsdb/jsonrpc-server.h | 2 +- > ovsdb/ovsdb-server.c | 43 +++++-- > tests/ovsdb-server.at | 11 ++ > 21 files changed, 1145 insertions(+), 25 deletions(-) > create mode 100644 lib/poll-group-epoll.c > create mode 100644 lib/poll-group-provider.h > create mode 100644 lib/poll-group.c > create mode 100644 lib/poll-group.h > > -- > 1.9.1 > > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev