From: Charles-François Natali Date: Tue, 1 Jan 2013 15:31:54 +0000 (+0100) Subject: Issue #16787: Increase asyncore and asynchat default output buffers size, to X-Git-Tag: v3.4.0a1~1725 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fe22dcaba7c5df856359b364fc3c51e76cc3cc67;p=python Issue #16787: Increase asyncore and asynchat default output buffers size, to decrease CPU usage and increase throughput. --- diff --git a/Lib/asynchat.py b/Lib/asynchat.py index bb636ab7a5..f055d63ba4 100644 --- a/Lib/asynchat.py +++ b/Lib/asynchat.py @@ -56,8 +56,8 @@ class async_chat (asyncore.dispatcher): # these are overridable defaults - ac_in_buffer_size = 4096 - ac_out_buffer_size = 4096 + ac_in_buffer_size = 65536 + ac_out_buffer_size = 65536 # we don't want to enable the use of encoding by default, because that is a # sign of an application bug that we don't want to pass silently diff --git a/Lib/asyncore.py b/Lib/asyncore.py index b15ddeb91b..f1466436d1 100644 --- a/Lib/asyncore.py +++ b/Lib/asyncore.py @@ -532,7 +532,7 @@ class dispatcher_with_send(dispatcher): def initiate_send(self): num_sent = 0 - num_sent = dispatcher.send(self, self.out_buffer[:512]) + num_sent = dispatcher.send(self, self.out_buffer[:65536]) self.out_buffer = self.out_buffer[num_sent:] def handle_write(self): diff --git a/Misc/NEWS b/Misc/NEWS index 88a73e4790..ccbf416e3a 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -200,7 +200,10 @@ Core and Builtins Library ------- -- Issue 10527: make multiprocessing use poll() instead of select() if available. +- Issue #16787: Increase asyncore and asynchat default output buffers size, to + decrease CPU usage and increase throughput. + +- Issue #10527: make multiprocessing use poll() instead of select() if available. - Issue #16688: Fix backreferences did make case-insensitive regex fail on non-ASCII strings. Patch by Matthew Barnett.