[issue19236] Add Tornado HTTP benchmark

2013-10-24 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 9a1136898539 by Antoine Pitrou in branch 'default':
Close #19236: add a Tornado-based HTTP benchmark
http://hg.python.org/benchmarks/rev/9a1136898539

--
nosy: +python-dev
resolution:  - fixed
stage: patch review - committed/rejected
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-20 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Attached patch makes the get() function asynchronous.

--
Added file: http://bugs.python.org/file32263/tornado_bench2.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-14 Thread Antoine Pitrou

Changes by Antoine Pitrou pit...@free.fr:


--
nosy: +georg.brandl

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-13 Thread Stefan Behnel

Stefan Behnel added the comment:

Another thing: you are only using one thread for both the client and the 
server, and the app writes the entire content in one go (during one call to 
get()). Wouldn't it be more interesting to make the app's get() method 
asynchronous as well, so that each chunk actually gets passed separately? 
Otherwise, the fact that it's writing chunks wouldn't really contribute all 
that much to the benchmark.

Or maybe split it up into two benchmarks, one that exercises the asynchronous 
client (as your current code does) and one that shifts more work to the server 
side? Not sure if it's worth it, but might be worth trying. I think it would 
cover two different use cases that way.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-13 Thread Antoine Pitrou

Antoine Pitrou added the comment:

 Wouldn't it be more interesting to make the app's get() method
 asynchronous as well, so that each chunk actually gets passed
 separately?

That's a good point. I'll try to look into it.

 Or maybe split it up into two benchmarks, one that exercises the
 asynchronous client (as your current code does) and one that shifts more 
 work to the server side? Not sure if it's worth it, but might be worth
 trying. I think it would cover two different use cases that way.

You still need a client to exercise the server, and a server to exercise the 
client, so I'm not sure how to separate them (short of using an external 
utility, which would add dependencies).

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-12 Thread Antoine Pitrou

New submission from Antoine Pitrou:

Tornado 3.1.1 is compatible with Python 2.6, 2.7, 3.2 and upwards, which makes 
it a good candidate for a networking benchmark.

Here is a patch adding a HTTP (server + client) benchmark. A trivial HTTP 
server is spawned which writes a sizable body in response to requests. HTTP 
clients then connect with a certain amount of concurrency and fetch the HTTP 
server's resource.

(note: the patch omits the Tornado lib itself for readability)

--
files: tornado_bench.patch
keywords: patch
messages: 199613
nosy: brett.cannon, pitrou
priority: normal
severity: normal
stage: patch review
status: open
title: Add Tornado HTTP benchmark
type: enhancement
versions: 3rd party
Added file: http://bugs.python.org/file32067/tornado_bench.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-12 Thread Stefan Behnel

Changes by Stefan Behnel sco...@users.sourceforge.net:


--
components: +Benchmarks
nosy: +scoder

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-12 Thread Gregory P. Smith

Gregory P. Smith added the comment:

makes sense to me.

--
nosy: +gregory.p.smith

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-12 Thread Stefan Behnel

Stefan Behnel added the comment:

+1. Does it give reasonably predictable timings?

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19236] Add Tornado HTTP benchmark

2013-10-12 Thread Antoine Pitrou

Antoine Pitrou added the comment:

 +1. Does it give reasonably predictable timings?

Yes. There is a small warmup phase at the beginning (the first few
rounds are skipped). The benchmark eats 100% CPU on one core, mostly
userspace (at least under Linux).

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19236
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com