Mavryk_webassembly_interpreter.Tick_model
This module implements a generic tick model. These values were benchmarked from `MemoryCopy`, `MemoryFill` and `MemoryInit`.
val zero : tick
val one : tick
val of_int32 : int32 -> tick option
of_int32 i
returns the tick representation of i
, or None
if i
is negative.
val of_int32_exn : int32 -> tick
of_int32_exn i
returns the tick representation of i
.
val to_int32 : tick -> int32 option
to_int32 t
returns the signed int32 representation of t
or None
if t
overflows the signed int32 representation.
val to_int32_exn : tick -> int32
to_int32_exn t
returns the signed int32 representation of t
.
val of_int64 : int64 -> tick option
of_int64 i
returns the tick representation of i
, or None
if i
is negative.
val of_int64_exn : int64 -> tick
of_int64_exn i
returns the tick representation of i
.
val to_int64 : tick -> int64 option
to_int64 t
returns the signed int64 representation of t
or None
if t
overflows the signed int64 representation.
val to_int64_exn : tick -> int64
to_int64_exn t
returns the signed int64 representation of t
.
val of_z : Z.t -> tick option
val to_z : tick -> Z.t
val nop : tick
nop
consumes zero tick. This is used specifically for `write_debug`.
val ticks_per_byte_copied : tick
ticks_per_byte_copied
is the consumption for a byte read in the memory and written in the memory in the context of reading a chunk of bytes.
val ticks_per_byte_read : tick
ticks_per_byte_read
is the consumption for a byte read from the memory in the context of reading a chunk of bytes.
val ticks_per_byte_written : tick
ticks_per_byte_written
is the consumption for a byte written in the memory in the context of writing a chunk of bytes.