A disproportionate amount of time is spent in bufputc() and bufgrow(). The pull request inlines them for a pretty big jump in performance. Check it out:
Hey, thanks for the performance boost. I hadn't even profiled the library yet, been too busy implementing the thousand features that the original was lacking. ;d
A disproportionate amount of time is spent in bufputc() and bufgrow(). The pull request inlines them for a pretty big jump in performance. Check it out:
Before (median of three):
After (idem):
If that isn't low hanging fruit, I don't know what is. :-)