[ https://issues.apache.org/jira/browse/LUCENE-10130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17423515#comment-17423515 ]
ASF subversion and git services commented on LUCENE-10130: ---------------------------------------------------------- Commit 3dee08a09a36e782fa750416e54d9490733b2c48 in lucene's branch refs/heads/main from Robert Muir [ https://gitbox.apache.org/repos/asf?p=lucene.git;h=3dee08a ] LUCENE-10130: small optimizations to SparseFixedBitSet set() codepath Don't spend so many cycles updating ramBytesUsed when setting each bit. Avoid recomputing some shifts that the caller already computes. > HnswGraph could make use of a SparseFixedBitSet.getAndSet > --------------------------------------------------------- > > Key: LUCENE-10130 > URL: https://issues.apache.org/jira/browse/LUCENE-10130 > Project: Lucene - Core > Issue Type: Task > Reporter: Robert Muir > Priority: Major > Attachments: LUCENE-10130.patch, LUCENE-10130_round2.patch > > > Currently HnswGraph uses SparseFixedBitSet "visited" to track where it has > already been. The logic currently looks like this: > {code} > if (visited.get(entryPoint) == false) { > visited.set(entryPoint); > ... logic ... > } > {code} > If SparseFixedBitSet had a {{getAndSet}} (like FixedBitSet), the code could > be: > {code} > if (visited.getAndSet(entrypoint) == false) { > ... logic ... > } > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org