Skip to content

Instantly share code, notes, and snippets.

@silverwind
silverwind / readdirbench.js
Created Aug 5, 2018
recursive fs.readdir benchmark
View readdirbench.js
"use strict";
const fs = require("fs");
const util = require("util");
const p = process.argv[2];
function time() {
const t = process.hrtime();
return Math.round((t[0] * 1e9 + t[1]) / 1e6);
}
View github-wrap-toggle.js
// ==UserScript==
// @name github-wrap-toggle
// @namespace silverwind
// @include /^https?://github.com/
// @version 1
// @grant GM_addStyle
// ==/UserScript==
var $ = document.querySelectorAll.bind(document);
NodeList.prototype.__proto__ = Array.prototype;
View valgrind-output
==24862== 18,393,915 bytes in 284 blocks are possibly lost in loss record 934 of 937
==24862== at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==24862== by 0xD543E1: node::StreamWrap::OnReadImpl(long, uv_buf_t const*, uv_handle_type, void*) (in /root/t/iojs)
==24862== by 0xD551A2: node::StreamWrap::OnRead(uv_stream_s*, long, uv_buf_t const*) (in /root/t/iojs)
==24862== by 0xDA24DE: uv__read (stream.c:1168)
==24862== by 0xDA2AE7: uv__stream_io (stream.c:1231)
==24862== by 0xDA8114: uv__io_poll (linux-core.c:345)
==24862== by 0xD99835: uv_run (core.c:328)
==24862== by 0xD26017: node::Start(int, char**) (in /root/t/iojs)
==24862== by 0x5CA2EC4: (below main) (libc-start.c:287)
View memory-leak.js
var http = require('http');
var streamifier = require('streamifier');
var Busboy = require('busboy');
var FormData = require('form-data');
var PORT = 6666;
var data = new Buffer(100 * 1024 * 1024);
http.createServer(function(req, res) {
var busboy = new Busboy({headers: req.headers});
busboy.on('file', function() {
View busboy-memory-test.js
var http = require('http');
var fs = require('fs');
var Busboy = require('busboy');
var PORT = 6666;
http.createServer(function(req, res) {
if (req.url === '/') {
res.writeHead(200, {'content-type': 'text/html'});
res.end('<form action="/upload" enctype="multipart/form-data" method="post">'+
'<input type="file" name="upload" multiple="multiple" onchange="this.parentNode.submit()">'+
View big-file-upload-test.js
var http = require('http');
var util = require('util');
var fs = require('fs');
var multiparty = require('multiparty');
var PORT = process.env.PORT || 27372
http.createServer(function(req, res) {
if (req.url === '/') {
res.writeHead(200, {'content-type': 'text/html'});
res.end(
'<form action="/upload" enctype="multipart/form-data" method="post">'+
@silverwind
silverwind / nodelay.js
Last active Aug 29, 2015
TCP_NODELAY test
View nodelay.js
"use strict";
const net = require("net");
const port = 4000;
var time, times = [];
function now() {
let hrtime = process.hrtime();
return hrtime[0] * 1e9 + hrtime[1];
}
View gist:6b1f0bf7225f0ce8ced3
make -C out BUILDTYPE=Release V=1
make[1]: Entering directory '/home/silverwind/git/io.js/out'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/silverwind/git/io.js/out'
ln -fs out/Release/iojs iojs
/usr/bin/python tools/test.py --mode=release message parallel sequential -J
=== release test-child-process-fork-net2 ===
Path: parallel/test-child-process-fork-net2
[m] closeServer
[m] calling server.close
View gist:1a06574749820ae8bd83
target arm v6 vfp3 hard
ARMv7=1 VFP3=1 VFP32DREGS=1 NEON=0 SUDIV=0 UNALIGNED_ACCESSES=1 MOVW_MOVT_IMMEDIATE_LOADS=0 COHERENT_CACHE=0 USE_EABI_HARDFLOAT=1
Usage:
shell [options] -e string
execute string in V8
shell [options] file1 file2 ... filek
run JavaScript scripts in file1, file2, ..., filek
shell [options]
shell [options] --shell [file1 file2 ... filek]
run an interactive JavaScript shell
View gist:1b7d251e48cadc65c984
make -C out BUILDTYPE=Release V=1
make[1]: Entering directory '/home/silverwind/git/io.js/out'
LD_LIBRARY_PATH=/home/silverwind/git/io.js/out/Release/lib.host:/home/silverwind/git/io.js/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8/tools/gyp; mkdir -p /home/silverwind/git/io.js/out/Release/obj.target/v8_snapshot/geni; "/home/silverwind/git/io.js/out/Release/mksnapshot" --log-snapshot-positions --logfile "/home/silverwind/git/io.js/out/Release/obj.target/v8_snapshot/geni/snapshot.log" "/home/silverwind/git/io.js/out/Release/obj.target/v8_snapshot/geni/snapshot.cc"
/bin/sh: line 1: 16261 Illegal instruction (core dumped) "/home/silverwind/git/io.js/out/Release/mksnapshot" --log-snapshot-positions --logfile "/home/silverwind/git/io.js/out/Release/obj.target/v8_snapshot/geni/snapshot.log" "/home/silverwind/git/io.js/out/Release/obj.target/v8_snapshot/geni/snapshot.cc"
deps/v8/tools/gyp/v8_snapshot.target.mk:13: recipe for target '/home/silverwind/git/io.js/out/Release/obj.ta
You can’t perform that action at this time.