From 5201602c276115ae4be8442d73c567c95af22f7b Mon Sep 17 00:00:00 2001 From: kosaki Date: Sat, 30 Apr 2011 07:49:29 +0000 Subject: * benchmark/bm_io_select3.rb: New. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ benchmark/bm_io_select2.rb | 2 +- benchmark/bm_io_select3.rb | 17 +++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 benchmark/bm_io_select3.rb diff --git a/ChangeLog b/ChangeLog index 9c2c61022e..2168610e53 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sat Apr 30 16:48:36 2011 KOSAKI Motohiro + + * benchmark/bm_io_select3.rb: New. + Sat Apr 30 16:27:09 2011 KOSAKI Motohiro * io.c (copy_stream_body, rb_io_s_copy_stream): move rb_fd_init() diff --git a/benchmark/bm_io_select2.rb b/benchmark/bm_io_select2.rb index b48651349e..a4925b5100 100644 --- a/benchmark/bm_io_select2.rb +++ b/benchmark/bm_io_select2.rb @@ -1,4 +1,4 @@ -# IO.select performance. worst case +# IO.select performance. worst case of single fd. ios = [] nr = 1000000 diff --git a/benchmark/bm_io_select3.rb b/benchmark/bm_io_select3.rb new file mode 100644 index 0000000000..fcdbb96e0e --- /dev/null +++ b/benchmark/bm_io_select3.rb @@ -0,0 +1,17 @@ +# IO.select performance. a lot of fd + +ios = [] +nr = 100 +max = Process.getrlimit(Process::RLIMIT_NOFILE)[0] +puts "max fd: #{max} (results not apparent with <= 1024 max fd)" + +(max - 10).times do + r, w = IO.pipe + r.close + ios.push w +end + +nr.times do + IO.select nil, ios +end + -- cgit v1.2.3