Allowing extract_array calls to use pre-indexed grid information?
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- r
- 領域
- performance
調査の方向性
まず extract_array と rowAutoGrid のエントリポイントを読み、次に LTLA/beachmat#20 に記載された dgCMatrix の行ブロックを事前インデックス化するアプローチを確認してください。完全な変更では、適切な DelayedArray バックエンドが事前インデックス化されたグリッド情報を利用できる一般的な方法を定義し、行ベースの抽出性能の向上を実証します。
索引モデルが issue の本文から書いたものです。
説明
The recent conversation in theislab/zellkonverter#34 reminded me of some work I did in LTLA/beachmat#20. Briefly, the idea was to speed up row-based block processing of dgCMatrix by performing a single pass over the non-zero elements beforehand to identify the start and end of each row block in each column. This avoids the need for costly per-column binary searches when each row block is extracted in the usual way, and gives a ~10-fold speed-up in row-based processing of dgCMatrixes.
Now I'm wondering whether this approach can be generalized somehow so that other DelayedArray backends can benefit. Perhaps functions like rowAutoGrid() can decorate the grid object with extra information that allows extract_array to efficiently obtain the necessary bits and pieces, if a suitable object like a dgCMatrix is passed?
Happy to give this - or other ideas - a crack with a PR if there is some interest.
- 主要言語
- R
- スター
- 29
- フォーク
- 12
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Bioconductor/DelayedArray のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
Bioconductor/DelayedArray#129 · コメント 5 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
Bioconductor/DelayedArray#127 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
Bioconductor/DelayedArray#125 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
Bioconductor/DelayedArray#123 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
Bioconductor/DelayedArray#122 ·
Bioconductor/DelayedArray の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
robjhyndman/forecast#1220 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
JamesHWade/deputy#192 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
bug triage_needed
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
pharmaverse/rtables#1123 · コメント 1 件 ·