When interacting with TimerOutputs.jl, only displays lowered code
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Inizia riproducendo la MWE fornita con Julia 1.11.3, Debugger 0.7.10 e TimerOutputs 0.5.27, usando @timeit e @enter. Esamina come Debugger gestisce la funzione sottoposta a misurazione dei tempi e la sua visualizzazione dopo il lowering. Il lavoro è completato quando l'esecuzione passo-passo del codice sorgente della funzione originale funziona normalmente mentre la misurazione dei tempi rimane abilitata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
If I try to debug a function that I'm also timing using TimerOutputs, only lowered code is displayed, and I cannot step normally through the function.
MWE:
julia> using TimerOutputs
julia> using Debugger
julia> my_timer = TimerOutput()
────────────────────────────────────────────────────────────────────
Time Allocations
─────────────────────── ────────────────────────
Tot / % measured: 91.5ms / 0.0% 4.68MiB / 0.0%
Section ncalls time %tot avg alloc %tot avg
────────────────────────────────────────────────────────────────────
────────────────────────────────────────────────────────────────────
julia> @timeit my_timer foo() = begin
println("hello")
end
foo (generic function with 1 method)
julia> @enter foo()
In foo() at none:0
3 │ Core.NewvarNode(:(b₀#233))
4 │ Core.NewvarNode(:(accumulated_data#232))
5 │ local_to#230 = Main.my_timer
6 │ %6 = local_to#230
> 7 │ enabled#231 = Base.getproperty(%6, :enabled)
8 │ %8 = enabled#231
9 └─── goto #3 if not %8
10 2 ── %10 = local_to#230
11 └─── accumulated_data#232 = (push!)(%10, "foo")
About to run: <getproperty(─────────────────────────────...>
1|debug> n
hello
In foo() at none:0
28 10 ┄ %28 = @_8 === 1
29 └─── goto #12 if not %28
30 11 ─ Base.rethrow()
31 12 ┄ %31 = val#235
>32 └─── return %31
About to run: return
1|debug>
julia>
This using Julia-1.11.3, Debugger-0.7.10 and TimerOutputs-0.5.27.
Obvious workaround is to take out the timing while I'm debugging, but that's not ideal especially in a bigger code where there might be many timed functions.
- Lingua principale
- Julia
- Stelle
- 515
- Fork
- 50
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
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 JuliaDebug/Debugger.jl
-
tagbot-manual
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
JuliaDebug/Debugger.jl#410 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
JuliaDebug/Debugger.jl#423 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
JuliaDebug/Debugger.jl#422 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
JuliaDebug/Debugger.jl#418 · 1 commento ·
-
Syntax highlighting warningAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
JuliaDebug/Debugger.jl#417 · 1 commento ·
Tutte le issue di JuliaDebug/Debugger.jl
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
JuliaDebug/Cthulhu.jl#716 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Review dependenciesAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
rafaqz/DimensionalData.jl#1253 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
osrep/Runes2P.jl#283 ·
I maintainer di solito rispondono entro 1 giorno