The case BenchmarkRange seems has some problem ?
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 40/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 領域
- testing
調査の方向性
issue の benchmark コードを見てください; map が空なのは setup 関数が nil だからです。benchmark ファイル(おそらく repository root か test ディレクトリ内)を見つけて、BenchmarkRange test を調べてください。timer が開始する前に map がどのように populate されているか確認してください。fix は、b.ResetTimer() の前に map をデータで埋める適切な setup を追加することです。benchmark を実行して、結果が現実的であることを検証してください。
索引モデルが issue の本文から書いたものです。
説明
// syncmap code:
b.Run(fmt.Sprintf("%T", &IntMap{}), func(b *testing.B) {
m := &IntMap{}
// setup:
// reset:
b.ResetTimer()
// perG:
perG := func(b *testing.B, pb *testing.PB, i int, m *IntMap) {
for ; pb.Next(); i++ {
m.Range(func(_, _ int) bool { return true })
}
}
var i int64
b.RunParallel(func(pb *testing.PB) {
id := int(atomic.AddInt64(&i, 1) - 1)
perG(b, pb, id*b.N, m)
})
})
seems the setup function is nil, then the map is empy, so at the benrchmark result, it seems vary fast
- 主要言語
- Go
- スター
- 257
- フォーク
- 17
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
a8m/syncmap のほかの issue
-
Fails with errorオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
GetValues & GetKeysオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
似ている issue
-
automation models
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
bug llm-stack needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
P3 Type: Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
grpc/grpc-go#9483 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
needs-area needs-kind needs-priority needs-status needs-triage
難易度 2/5 1時間未満 初心者へのやさしさ 85/100
cncf/automation#736 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
jesseduffield/lazygit#6094 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信