Details
-
Improvement
-
Resolution: Fixed
-
Major
-
2.5.1
-
Security Level: Public
-
None
-
MacBook Pro (2012), 2.3GHz Intel Core i7 (8 CPUs)
Mac OS X 10.9.3
Description
The crc32_8 function is constraining performance of database writes, specifically, flushing the WAL. During a large fdb_commit that I've profiled, 32% of the time is spent in the crc32_8 function. (And the fdb_commit call was responsible for 70% of the time to write the database!)
I experimentally changed crc32_8 to call the adler32 function from libz, and saw a 20% improvement in commit time. (From the docs: "An Adler-32 checksum is almost as reliable as a CRC32 but can be computed much faster.")
Attachments
For Gerrit Dashboard: MB-11056 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
39207,2 | MB-11056 Adler32 checksum support | master | forestdb | Status: MERGED | +2 | +1 |