apache / apache/arrow-java

[Java] Optimize bit operations performance

未關閉
#368 6 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
Type: enhancement
主要語言
Java
星號
94
分支
152
平均合併
3 天 16 小時
30 天內合併 PR
11

描述

From @animeshtrivedi's benchmark finding:

2) Materialize values from Validity and Value direct buffers instead of
calling getInt() function on the IntVector. This is implemented as a new
Unsafe reader type (

)

3) Optimize bitmap operation to check if a bit is set or not (

)

**Reporter**: [Li Jin](https://issues.apache.org/jira/browse/ARROW-3495) / @icexelloss
#### Subtasks:
- [X] [[Java] Remove Long.bitCount with simple bitmap operations](https://github.com/apache/arrow/issues/20485)
#### PRs and other links:
- [GitHub Pull Request apache/arrow#5930](https://github.com/apache/arrow/pull/5930)

**Note**: *This issue was originally created as [ARROW-3495](https://issues.apache.org/jira/browse/ARROW-3495). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

貢獻指南

開啟貢獻指南

研究方向

從 benchmark 中對 ArrowReaderUnsafe.java 的參照開始,檢查 Apache Arrow PR #5930,然後檢視已完成的點陣圖操作子任務,以確定還剩下什麼。將要求的直接緩衝區具現化和點陣圖檢查與現有的 Java 實作進行比較;完成的標準是實作剩餘的最佳化,並驗證其效能影響。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
java
領域
performance
Issue 類型
重構
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
15/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。