-
Notifications
You must be signed in to change notification settings - Fork 208
Description
The docs refer to instructions and stdlib procedures as taking some number of "cycles", for example the following procedure is documented to take 4+11+4 = 19
cycles:
begin
push.5.0
push.6.0
exec.u64::lt
dropw
end
but miden-vm run
and miden-vm analyze
reports "VM cycles: 41 extended to 64 steps (35% padding), and "Stack rows: 30". In a conversation with @plafer I was told that "stack rows" are what the documentation is calling "cycles" for purposes of instructions and procedures. And also that you may get more rows if there are relatively few, but heavy, instructions, and that to get the number I actually want, I should look at the per-instruction cycle counts given by
miden-vm analyze`.
The docs could use an explanation for why the above example reports "41 cycles", "30 stack rows", "39 range checker rows", etc.