Я не уверен, но я был бы очень удивлен, если бы кто-то говорил о том, что время исходит не от Ruby, а от вашей базовой операционной системы (Linux, я думаю).
Я написал сценарий, аналогичный вашему, в PythonЯ мог бы наблюдать ту же разницу, что и вы.
Я смотрю, как это системный вызов, используя:
sudo strace -T -e trace=open,close,write -p <my_process_pid>
И, по крайней мере, для системного вызова open
я мог бы также наблюдатьнекоторые звонки занимают в 100 раз больше времени, чем другие.