Skip to content

Instantly share code, notes, and snippets.

@zertosh
Last active April 24, 2016 00:22
Show Gist options
  • Save zertosh/84e157d4e0e0353a16c9f19daed1b3e7 to your computer and use it in GitHub Desktop.
Save zertosh/84e157d4e0e0353a16c9f19daed1b3e7 to your computer and use it in GitHub Desktop.
time rx load times
.DS_Store
/node_modules
require('rxjs/bundles/Rx.umd');
var before = Object.keys(require.cache);
require('rxjs/observable/using');
var after = Object.keys(require.cache);
console.log(after.filter(x => before.indexOf(x) === -1));
{
"name": "rx-load-test",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "./time-requires.sh"
},
"dependencies": {
"@reactivex/rxjs": "5.0.0-beta.6",
"react": "^15.0.0",
"rxjs": "5.0.0-beta.6"
}
}
$ ./time-requires.sh
rxjs: 112.411ms
rxjs: 112.154ms
rxjs: 112.119ms
rxjs: 109.854ms
rxjs: 111.980ms
rxjs/bundles/Rx.umd: 79.925ms
rxjs/bundles/Rx.umd: 77.012ms
rxjs/bundles/Rx.umd: 79.998ms
rxjs/bundles/Rx.umd: 82.042ms
rxjs/bundles/Rx.umd: 81.486ms
rxjs/bundles/Rx.umd.min: 63.297ms
rxjs/bundles/Rx.umd.min: 63.000ms
rxjs/bundles/Rx.umd.min: 63.575ms
rxjs/bundles/Rx.umd.min: 65.477ms
rxjs/bundles/Rx.umd.min: 65.899ms
@reactivex/rxjs: 130.066ms
@reactivex/rxjs: 131.753ms
@reactivex/rxjs: 134.604ms
@reactivex/rxjs: 149.409ms
@reactivex/rxjs: 132.310ms
@reactivex/rxjs/dist/global/Rx.umd: 76.707ms
@reactivex/rxjs/dist/global/Rx.umd: 80.689ms
@reactivex/rxjs/dist/global/Rx.umd: 79.504ms
@reactivex/rxjs/dist/global/Rx.umd: 80.581ms
@reactivex/rxjs/dist/global/Rx.umd: 79.063ms
@reactivex/rxjs/dist/global/Rx.umd.min: 69.610ms
@reactivex/rxjs/dist/global/Rx.umd.min: 63.525ms
@reactivex/rxjs/dist/global/Rx.umd.min: 63.752ms
@reactivex/rxjs/dist/global/Rx.umd.min: 71.866ms
@reactivex/rxjs/dist/global/Rx.umd.min: 65.921ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd: 90.006ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd: 90.787ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd: 90.766ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd: 91.778ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd: 91.563ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min: 81.791ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min: 73.793ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min: 75.163ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min: 80.763ms
@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min: 73.994ms
#!/bin/bash
# npm install react
# npm install rx@3
# npm install @reactivex/rxjs
# for i in {1..5}; do node -p "s=Date.now();require('@reactivex/rxjs');Date.now()-s"; done
# for i in {1..5}; do node -p "s=Date.now();require('rx');Date.now()-s"; done
names=(
'rxjs'
'rxjs/bundles/Rx.umd'
'rxjs/bundles/Rx.umd.min'
'@reactivex/rxjs'
'@reactivex/rxjs/dist/global/Rx.umd'
'@reactivex/rxjs/dist/global/Rx.umd.min'
'@reactivex/rxjs/dist/global/Rx.KitchenSink.umd'
'@reactivex/rxjs/dist/global/Rx.KitchenSink.umd.min'
)
for name in "${names[@]}"; do
for i in {1..5}; do node -e "
console.time('$name');
require('$name');
console.timeEnd('$name');
"
done
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment