Sha256: 19c8e8728b016b3190f6b2a40d8f33b5ef453311438328ada4bd2b755abd29a3

Contents?: true

Size: 852 Bytes

Versions: 1

Compression:

Stored size: 852 Bytes

Contents

is_darwin = RUBY_PLATFORM.include? 'darwin'

#output = (1..1000000).to_a.inspect
output = (1..1000).to_a.inspect

file_name = "./junk.out"

ss = Time.now
10.times do | i |
  s = Time.now
  File.open("./junk-a-#{ i }.out", 'w') { | f | f.print output; f.fsync }
  puts "time puts: #{ Time.now - s }"
end

puts "TOTAL: #{ Time.now - ss}\n"

ss = Time.now
10.times do | i |
  s = Time.now
  File.open("./junk-b-#{ i }.out", 'w') do | f |
    f.write output
    f.fsync
    if is_darwin then
      f.fcntl(51, 0) # Attempt an F_FULLFSYNC fcntl to commit data to disk
    end
  end
  puts "time sync write: #{ Time.now - s }"
end

puts "TOTAL: #{ Time.now - ss}\n"

ss = Time.now
10.times do | i |
  s = Time.now
  File.open("./junk-b-#{ i }.out", 'w') { | f | f.write output }
  puts "time write: #{ Time.now - s }"
end

puts "TOTAL: #{ Time.now - ss}\n"

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
xamplr-1.3.15 examples/write-testing/write-speed-test.rb