Skip to content

Instantly share code, notes, and snippets.

@speg
Last active November 1, 2015 22:14
Show Gist options
  • Save speg/f09f6af8d4959575e4c0 to your computer and use it in GitHub Desktop.
Save speg/f09f6af8d4959575e4c0 to your computer and use it in GitHub Desktop.

Revisions

  1. Steve Hiemstra revised this gist Nov 1, 2015. 1 changed file with 7 additions and 3 deletions.
    10 changes: 7 additions & 3 deletions writeTest.js
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,6 @@
    fs = require('fs')

    var bufferA = new Buffer(1e+9)
    var bufferA = new Buffer(1e+8)
    bufferA.fill(0)

    var bufferB = new Buffer(1e+0)
    @@ -18,5 +18,9 @@ fs.write(fileB, bufferB, 0, bufferB.length, function(err) { console.timeEnd('B')
    // expected output: B << A

    // actual output on OS X node v5.0.0:
    //A: 4443.194ms
    //B: 4444.997ms
    // A: 314.564ms
    // B: 315.864ms

    // Output on Linux:
    // B: 4ms <-- yes!
    // A: 306ms
  2. Steve Hiemstra revised this gist Nov 1, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion writeTest.js
    Original file line number Diff line number Diff line change
    @@ -12,7 +12,7 @@ var fileB = fs.openSync('fileB', 'w')
    console.time('A')
    fs.write(fileA, bufferA, 0, bufferA.length, function(err) { console.timeEnd('A')})
    console.time('B')
    fs.write(fileB, bufferA, 0, bufferB.length, function(err) { console.timeEnd('B')})
    fs.write(fileB, bufferB, 0, bufferB.length, function(err) { console.timeEnd('B')})


    // expected output: B << A
  3. Steve Hiemstra created this gist Nov 1, 2015.
    22 changes: 22 additions & 0 deletions writeTest.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,22 @@
    fs = require('fs')

    var bufferA = new Buffer(1e+9)
    bufferA.fill(0)

    var bufferB = new Buffer(1e+0)
    bufferB.fill(0)

    var fileA = fs.openSync('fileA', 'w')
    var fileB = fs.openSync('fileB', 'w')

    console.time('A')
    fs.write(fileA, bufferA, 0, bufferA.length, function(err) { console.timeEnd('A')})
    console.time('B')
    fs.write(fileB, bufferA, 0, bufferB.length, function(err) { console.timeEnd('B')})


    // expected output: B << A

    // actual output on OS X node v5.0.0:
    //A: 4443.194ms
    //B: 4444.997ms