Can PForUtil be further auto-vectorized? [LUCENE-9918]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
While working on #10889, we discovered the loop in PForUtil::prefixSumOf is not getting auto-vectorized by the HotSpot compiler. We tried a few different tweaks to see if we could change this, but came up empty. There are some additional suggestions in the related [PR](https://github.com/apache/lucene/pull/69#discussion_r608412309) that could still be experimented with, and it may be worth doing so to see if further improvements could be squeezed out.
---
Migrated from [LUCENE-9918](https://issues.apache.org/jira/browse/LUCENE-9918) by Greg Miller (@gsmiller), updated Aug 20 2021
Contributor guide
Research direction
Start by reading PForUtil::prefixSumOf and the additional suggestions in the linked PR discussion. Experiment with the suggested changes and verify whether HotSpot auto-vectorizes the loop and whether the change produces a measurable improvement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- performance, search
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100