Performance of native promises and async functions in Node.js v8

Platform info:

  • Windows_NT 10.0.15063 x64
  • Intel(R) Core(TM) i7-3667U CPU @ 2.00GHz × 4

Async types tested:

  • Native Promises = ECMAScript 2015 Chrome V8 Promises
  • Bluebird Promises = Bluebird 3.5.0 Promises
  • Async w/ Native Promises = ECMAScript 2016 Chrome V8 Async Functions with Chrome V8 Promises
  • Async w/ Bluebird Promises = ECMAScript 2016 Chrome V8 Async Functions with Bluebird 3.5.0 Promises

Bluebirds benchmarks:

  • Doxbee sequential
  • Madeup parallel

Doxbee sequential

./bench doxbee

Performance of Chrome V8 Promises in current versions of Node.js

Node.js LTS Chrome V8 Time, ms Memory, MB
v4.8.2 Argon 4.5.103.46 1287 190.12
v6.10.2 Boron 5.1.281.95 1506 144.93
v7.9.0 - 5.5.372.43 1185 166.35
v8.0.0-rc.0 (Carbon) 5.8.283.38 823 90.24

Performance of Callbacks vs Promises vs Async Functions in Node.js v8.0.0

Node.js v8.0.0-rc.0 (Carbon) / V8 5.8.283.38

Async Type Time, ms Memory, MB
Callbacks 99 23.94
Bluebird Promises 300 47.03
Async w/ Bluebird Promises 463 66.38
Async w/ Native Promises 690 105.74
Native Promises 823 90.24

Madeup parallel

./bench parallel

Performance of Chrome V8 Promises in current versions of Node.js

Node.js LTS Chrome V8 Time, ms Memory, MB
v4.8.2 Argon 4.5.103.46 3269 496.14
v6.10.2 Boron 5.1.281.95 3365 447.03
v7.9.0 - 5.5.372.43 3087 399.39
v8.0.0-rc.0 (Carbon) 5.8.283.38 1413 296.74

Performance of Callbacks vs Promises vs Async Functions in Node.js v8

Node.js v8.0.0-rc.0 (Carbon) / V8 5.8.283.38

Async Type Time, ms Memory, MB
Callbacks 304 70.90
Bluebird Promises 593 99.18
Async w/ Bluebird Promises 618 111.11
Native Promises 1705 296.31
Async w/ Native Promises 1846 313.09