apache / apache/arrow

[C++] Investigate scalar.h usage and reduce cost of function.h include

オープン
#36,246 コメント 23 件 リアクション 0 件 担当者 0 名 GitHub で見る
Component: C++ good-second-issue Type: enhancement
主要言語
C++
スター
17.1k
フォーク
4.3k
平均マージ
3日 23時間
マージ済み PR(30日)
101

説明

### Describe the enhancement requested

Scalars are usually passed around via shared_ptr. So we can often get away with a forward declaration. However, clang build analyzer reports that the scalar.h header is included quite often. We should investigate why this is and see if we can shave a bit of time off our builds by fixing it.

In addition, the function.h include is rather heavy. It is included often because it is needed by the api_xyz.h files in the compute module. However, these files only need the function options. We should see if breaking function options into its own file helps shave down the build time.

### Component(s)

C++

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

clang build analyzerを使って、scalar.hが頻繁にインクルードされる理由を調査し、shared_ptrの使用箇所と前方宣言の機会に焦点を当てます。次に、computeモジュールのfunction.hとapi_xyz.hファイルを調べ、関数オプションを分離することでインクルードコストが削減されるかどうかを判断します。測定したビルドへの影響を文書化し、インクルード構造を適切に軽量化できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
build-system, performance
issue の種類
リファクタリング
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
42/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。