Improve perf of RubyRange.begLenInt
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 42/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Ambito
- backend, performance
Direzione di ricerca
The issue names RubyRange.begLenInt and its callers in String and Array slicing, but no source files or tests. Start by locating the method and its call sites, then inspect relevant slicing tests and benchmark coverage. Compare the allocation-free approaches mentioned in the issue; done means preserving begin/length behavior while reducing the extra allocation on the hot path.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The begLenInt method in RubyRange returns the coerced begin and length as an int[2]. This is an extra allocation that could be eliminate by simply packing both values into a long as ((long) begin << 32) | length, or it could be turned into a record that can eventually become a value object and allocation-free.
This method is used for some common slicing methods in String and Array and eliminating the extra allocation could improve code on that hot path.
- Lingua principale
- Ruby
- Stelle
- 3.9k
- Fork
- 951
- Merge medio
- 1g 23h
- PR unite (30g)
- 94
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di jruby/jruby
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
ffi stdlib
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
jruby/jruby#4863 · 9 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 80/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 70/100
jruby/jruby#9883 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
FinanceFlash/unvibecode#273 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Widget de foto do aluno duplica os controles quando o mesmo aluno está aberto em duas ediçõesAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
we-promise/sure#4481 ·
I maintainer di solito rispondono entro 1 giorno
-
data error
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
riscv/riscv-unified-db#2772 ·
I maintainer di solito rispondono entro 1 giorno