io_uring for stream_copy_to_stream
まだ誰も着手していません。
- 主要言語
- C
- スター
- 40.4k
- フォーク
- 8.1k
- 平均マージ
- 2日 13時間
- マージ済み PR(30日)
- 96
説明
Description
Hello,
It would be really nice to implement io_uring like here https://lwn.net/Articles/879724/ (talked in hn on https://news.ycombinator.com/item?id=30144652) to get stream_copy_to_stream() really performant.
example code here : https://lwn.net/ml/linux-kernel/af0d6b3e-85d0-9b61-4acd-5eef1375f934@gmail.com/
It would help a lot of stream proxy in php to be handled directly in the kernel, and increase drastically the performance.
From many test, stream_copy_to_stream() is sadly "slow" because it didn't use any trick, like sendfile() or 0copy, but instead is just a warper for a classic read/write loop, no gain in performance.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
このリクエストでは stream_copy_to_stream() が示されていますが、ソースファイルやテストは特定されていません。リンク先の io_uring の記事と例を読み、その後、stream_copy_to_stream() の C 実装と関連するテストを見つけてください。完了条件には、合意された実装方針と、要求されたパフォーマンス動作が機能することの検証を含める必要があります。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- c, linux, php
- 領域
- backend, performance
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100