eleventy-img
eleventy-img copied to clipboard
Avoid utf8 encoding binary image files in getHash.
Here are 2 profiles of building the same website, first without the PR, and then with the PR.
With the PR, getHash
takes 3.1% (30.7ms) of the total build time. Without the PR, it took 34% (549ms) of the total time.
The profile without the PR shows 518ms spent in buffer.toString.
Using samply to capture a profile showing the native code, I could see that almost all the time spent in toString
is spent in node::StringBytes::Encode
.
Profiles were captured using node --cpu-prof node_modules/.bin/eleventy
and then loaded in the Firefox Profiler to visualize and share them.