diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-09-03 03:06:17 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-09-03 03:06:17 +0000 |
commit | 9b16f906922fcb63a35c41b57bcec91f5791ad66 (patch) | |
tree | 591cfb42a2994968e13f0992eb83227d7f9e1589 /ChangeLog | |
parent | 51ee0a634ea4d7c5fc5000dd66c3b257c0a62d77 (diff) | |
download | ruby-9b16f906922fcb63a35c41b57bcec91f5791ad66.tar.gz |
* process.c (retry_fork_async_signal_safe): Use vfork() if available.
vfork() is still faster than fork() especially when the parent
process uses big memory.
ruby -rbenchmark -e 'a = "a" * 1_000_000_000; puts Benchmark.measure { system("true") }'
fork: 0.000000 0.010000 0.010000 ( 0.014968)
vfork: 0.000000 0.000000 0.000000 ( 0.000912)
on Debian sid.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,14 @@ +Wed Sep 3 12:05:17 2014 Tanaka Akira <akr@fsij.org> + + * process.c (retry_fork_async_signal_safe): Use vfork() if available. + vfork() is still faster than fork() especially when the parent + process uses big memory. + + ruby -rbenchmark -e 'a = "a" * 1_000_000_000; puts Benchmark.measure { system("true") }' + fork: 0.000000 0.010000 0.010000 ( 0.014968) + vfork: 0.000000 0.000000 0.000000 ( 0.000912) + on Debian sid. + Wed Sep 3 11:33:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> * test/openssl/test_pkey_rsa.rb (OpenSSL#test_sign_verify_memory_leak): |