Skip to content

Commit

Permalink
improve example benchmark
Browse files Browse the repository at this point in the history
  • Loading branch information
rsms committed Jul 1, 2021
1 parent 2938af6 commit 571f5ce
Showing 1 changed file with 17 additions and 3 deletions.
20 changes: 17 additions & 3 deletions example/example.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,32 @@ console.log(fs.readFileSync(outfile, "utf8"))

// mini benchmark
if (process.argv.includes("-bench")) {
console.log("benchmark start (sampling ~2s of data)")
benchmark("bytes", {
bytes: true,
})
benchmark("bytes + onCodeBlock", {
bytes: true,
onCodeBlock(lang, body) {
return null // causes the body to be HTML-escaped & included as is
},
})
}

function benchmark(name, options) {
console.log(`benchmark start ${name} (sampling ~2s of data)`)
const timeStart = Date.now()
const N = 1000, T = 2000
let ntotal = 0
while (Date.now() - timeStart < 2000) {
for (let i = 0; i < N; i++) {
global["dont-optimize-away"] = md.parse(source, { bytes: true })
global["dont-optimize-away"] = md.parse(source, options)
}
ntotal += N
}
const timeSpent = Date.now() - timeStart
console.log(`benchmark end -- avg parse time: ${((timeSpent / ntotal) * 1000).toFixed(1)}us`)
console.log(
`benchmark end ${name} -- avg parse time: ` +
`${((timeSpent / ntotal) * 1000).toFixed(1)}us`)
}

function html_escape(str) {
Expand Down

0 comments on commit 571f5ce

Please sign in to comment.