Bug #85999 Optimize zlib 's fill_window with SIMD instructions
Submitted: 19 Apr 2017 9:14 Modified: 19 Apr 2017 9:55
Reporter: Jun He (OCA) Email Updates:
Status: Verified Impact on me:
Category:MySQL Server: InnoDB storage engine Severity:S5 (Performance)
Version:5.7.17 OS:Any
Assigned to: CPU Architecture:Any

[19 Apr 2017 9:14] Jun He
The zlib shipped within MySQL doesn't use advanced instructions for modern CPUs.
This will cause performance drop for InnoDB when compression is used.
The hash table rebase in deflate:fill_window is a typical routine which can be acclerated with SIMD instructions. And hash table rebase can take up to 7% in zlib compression. So it worths integrate SIMD optimized code for this routine. 

How to repeat:
Set compression level to 1.
Run sysbench with InnoDB engine, 10M data records and complex oltp-test-mode.
Check trx with and without SIMD changes.
[19 Apr 2017 9:17] Jun He
Hash table rebase optimization using Neon

Attachment: fill_window_neon.patch (application/octet-stream, text), 2.52 KiB.

[19 Apr 2017 9:55] MySQL Verification Team
Hello Jun He,

Thank you for the report and contribution.