Test your Ruby performance using:

strace -c ruby -e '1.upto(100000) {|i| i.to_s}'

% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
100.00    0.004702           0    200006           sigprocmask

By default in most distro's Ruby is compiled with Posix threads support in order to work with TK. If you don't need TK, you can recompile Ruby using:

./configure --prefix=/usr

For Gentoo use:

USE="-ipv6 -threads cjk" emerge ruby

And for Archlinux:

yaourt -S ruby-nothreads

After recompilition check again:

strace -c ruby -e '1.upto(100000) {|i| i.to_s}'

% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
   nan    0.000000           0         5           read