# Emulator events
This is a exhaustive list of the events recognized by the emulator.
Built on Jun 17 2024.
## Model nanos6
List of events for the model *nanos6* with identifier **`6`** at version `1.1.0`:
6Yc+(u32 typeid, str label)
 
- creates task type %{typeid} with label "%{label}"
 
6Tc(u32 taskid, u32 typeid)
 
- creates task %{taskid} with type %{typeid}
 
6Tx(u32 taskid)
 
- executes the task %{taskid}
 
6Te(u32 taskid)
 
- ends the task %{taskid}
 
6Tp(u32 taskid)
 
- pauses the task %{taskid}
 
6Tr(u32 taskid)
 
- resumes the task %{taskid}
 
6W[
 
- enters worker main loop, looking for tasks
 
6W]
 
- leaves worker main loop, looking for tasks
 
6Wt
 
- begins handling a task via handleTask()
 
6WT
 
- ceases handling a task via handleTask()
 
6Ww
 
- begins switching to another worker via switchTo()
 
6WW
 
- ceases switching to another worker via switchTo()
 
6Wm
 
- begins migrating the current worker to another CPU
 
6WM
 
- ceases migrating the current worker to another CPU
 
6Ws
 
- begins suspending the worker via suspend()
 
6WS
 
- ceases suspending the worker via suspend()
 
6Wr
 
- begins resuming another worker via resume()
 
6WR
 
- ceases resuming another worker via resume()
 
6Wg
 
- enters sponge mode (absorbing system noise)
 
6WG
 
- leaves sponge mode (absorbing system noise)
 
6W*
 
- signals another worker to wake up
 
6Pp
 
- sets progress state to Progressing
 
6Pr
 
- sets progress state to Resting
 
6Pa
 
- sets progress state to Absorbing
 
6C[
 
- begins creating a new task
 
6C]
 
- ceases creating a new task
 
6U[
 
- begins submitting a task via submitTask()
 
6U]
 
- ceases submitting a task via submitTask()
 
6F[
 
- begins spawning a function via spawnFunction()
 
6F]
 
- ceases spawning a function via spawnFunction()
 
6t[
 
- enters the task body
 
6t]
 
- leaves the task body
 
6O[
 
- begins running the task body as taskfor collaborator
 
6O]
 
- ceases running the task body as taskfor collaborator
 
6Ma
 
- starts allocating memory
 
6MA
 
- stops  allocating memory
 
6Mf
 
- starts freeing memory
 
6MF
 
- stops  freeing memory
 
6Dr
 
- begins registration of task dependencies
 
6DR
 
- ceases registration of task dependencies
 
6Du
 
- begins unregistration of task dependencies
 
6DU
 
- ceases unregistration of task dependencies
 
6S[
 
- begins scheduler serving mode
 
6S]
 
- ceases scheduler serving mode
 
6Sa
 
- begins submitting a ready task via addReadyTask()
 
6SA
 
- ceases submitting a ready task via addReadyTask()
 
6Sp
 
- begins processing ready tasks via processReadyTasks()
 
6SP
 
- ceases processing ready tasks via processReadyTasks()
 
6S@
 
- self assigns itself a task
 
6Sr
 
- receives a task from another thread
 
6Ss
 
- sends a task to another thread
 
6Bb
 
- begins blocking the current task
 
6BB
 
- ceases blocking the current task
 
6Bu
 
- begins unblocking a task
 
6BU
 
- ceases unblocking a task
 
6Bw
 
- enters a task wait
 
6BW
 
- leaves a task wait
 
6Bf
 
- enters a wait for
 
6BF
 
- leaves a wait for
 
6He
 
- begins execution as external thread
 
6HE
 
- ceases execution as external thread
 
6Hw
 
- begins execution as worker
 
6HW
 
- ceases execution as worker
 
6Hl
 
- begins execution as leader
 
6HL
 
- ceases execution as leader
 
6Hm
 
- begins execution as main thread
 
6HM
 
- ceases execution as main thread
 
## Model nodes
List of events for the model *nodes* with identifier **`D`** at version `1.0.0`:
DR[
 
- begins registering task accesses
 
DR]
 
- ceases registering task accesses
 
DU[
 
- begins unregistering task accesses
 
DU]
 
- ceases unregistering task accesses
 
DW[
 
- enters a blocking condition (waiting for an If0 task)
 
DW]
 
- leaves a blocking condition (waiting for an If0 task)
 
DI[
 
- begins the inline execution of an If0 task
 
DI]
 
- ceases the inline execution of an If0 task
 
DT[
 
- enters a taskwait
 
DT]
 
- leaves a taskwait
 
DC[
 
- begins creating a task
 
DC]
 
- ceases creating a task
 
DS[
 
- begins submitting a task
 
DS]
 
- ceases submitting a task
 
DP[
 
- begins spawning a function
 
DP]
 
- ceases spawning a function
 
## Model kernel
List of events for the model *kernel* with identifier **`K`** at version `1.0.0`:
KCO
 
- out of CPU
 
KCI
 
- back to CPU
 
## Model mpi
List of events for the model *mpi* with identifier **`M`** at version `1.0.0`:
MUf
 
- enters MPI_Finalize()
 
MUF
 
- leaves MPI_Finalize()
 
MUi
 
- enters MPI_Init()
 
MUI
 
- leaves MPI_Init()
 
MUt
 
- enters MPI_Init_thread()
 
MUT
 
- leaves MPI_Init_thread()
 
MW[
 
- enters MPI_Wait()
 
MW]
 
- leaves MPI_Wait()
 
MWa
 
- enters MPI_Waitall()
 
MWA
 
- leaves MPI_Waitall()
 
MWs
 
- enters MPI_Waitsome()
 
MWS
 
- leaves MPI_Waitsome()
 
MWy
 
- enters MPI_Waitany()
 
MWY
 
- leaves MPI_Waitany()
 
MT[
 
- enters MPI_Test()
 
MT]
 
- leaves MPI_Test()
 
MTa
 
- enters MPI_Testall()
 
MTA
 
- leaves MPI_Testall()
 
MTy
 
- enters MPI_Testany()
 
MTY
 
- leaves MPI_Testany()
 
MTs
 
- enters MPI_Testsome()
 
MTS
 
- leaves MPI_Testsome()
 
MS[
 
- enters MPI_Send()
 
MS]
 
- leaves MPI_Send()
 
MSb
 
- enters MPI_Bsend()
 
MSB
 
- leaves MPI_Bsend()
 
MSr
 
- enters MPI_Rsend()
 
MSR
 
- leaves MPI_Rsend()
 
MSs
 
- enters MPI_Ssend()
 
MSS
 
- leaves MPI_Ssend()
 
MR[
 
- enters MPI_Recv()
 
MR]
 
- leaves MPI_Recv()
 
MRs
 
- enters MPI_Sendrecv()
 
MRS
 
- leaves MPI_Sendrecv()
 
MRo
 
- enters MPI_Sendrecv_replace()
 
MRO
 
- leaves MPI_Sendrecv_replace()
 
MAg
 
- enters MPI_Allgather()
 
MAG
 
- leaves MPI_Allgather()
 
MAr
 
- enters MPI_Allreduce()
 
MAR
 
- leaves MPI_Allreduce()
 
MAa
 
- enters MPI_Alltoall()
 
MAA
 
- leaves MPI_Alltoall()
 
MCb
 
- enters MPI_Barrier()
 
MCB
 
- leaves MPI_Barrier()
 
MCe
 
- enters MPI_Exscan()
 
MCE
 
- leaves MPI_Exscan()
 
MCs
 
- enters MPI_Scan()
 
MCS
 
- leaves MPI_Scan()
 
MDb
 
- enters MPI_Bcast()
 
MDB
 
- leaves MPI_Bcast()
 
MDg
 
- enters MPI_Gather()
 
MDG
 
- leaves MPI_Gather()
 
MDs
 
- enters MPI_Scatter()
 
MDS
 
- leaves MPI_Scatter()
 
ME[
 
- enters MPI_Reduce()
 
ME]
 
- leaves MPI_Reduce()
 
MEs
 
- enters MPI_Reduce_scatter()
 
MES
 
- leaves MPI_Reduce_scatter()
 
MEb
 
- enters MPI_Reduce_scatter_block()
 
MEB
 
- leaves MPI_Reduce_scatter_block()
 
Ms[
 
- enters MPI_Isend()
 
Ms]
 
- leaves MPI_Isend()
 
Msb
 
- enters MPI_Ibsend()
 
MsB
 
- leaves MPI_Ibsend()
 
Msr
 
- enters MPI_Irsend()
 
MsR
 
- leaves MPI_Irsend()
 
Mss
 
- enters MPI_Issend()
 
MsS
 
- leaves MPI_Issend()
 
Mr[
 
- enters MPI_Irecv()
 
Mr]
 
- leaves MPI_Irecv()
 
Mrs
 
- enters MPI_Isendrecv()
 
MrS
 
- leaves MPI_Isendrecv()
 
Mro
 
- enters MPI_Isendrecv_replace()
 
MrO
 
- leaves MPI_Isendrecv_replace()
 
Mag
 
- enters MPI_Iallgather()
 
MaG
 
- leaves MPI_Iallgather()
 
Mar
 
- enters MPI_Iallreduce()
 
MaR
 
- leaves MPI_Iallreduce()
 
Maa
 
- enters MPI_Ialltoall()
 
MaA
 
- leaves MPI_Ialltoall()
 
Mcb
 
- enters MPI_Ibarrier()
 
McB
 
- leaves MPI_Ibarrier()
 
Mce
 
- enters MPI_Iexscan()
 
McE
 
- leaves MPI_Iexscan()
 
Mcs
 
- enters MPI_Iscan()
 
McS
 
- leaves MPI_Iscan()
 
Mdb
 
- enters MPI_Ibcast()
 
MdB
 
- leaves MPI_Ibcast()
 
Mdg
 
- enters MPI_Igather()
 
MdG
 
- leaves MPI_Igather()
 
Mds
 
- enters MPI_Iscatter()
 
MdS
 
- leaves MPI_Iscatter()
 
Me[
 
- enters MPI_Ireduce()
 
Me]
 
- leaves MPI_Ireduce()
 
Mes
 
- enters MPI_Ireduce_scatter()
 
MeS
 
- leaves MPI_Ireduce_scatter()
 
Meb
 
- enters MPI_Ireduce_scatter_block()
 
MeB
 
- leaves MPI_Ireduce_scatter_block()
 
## Model ovni
List of events for the model *ovni* with identifier **`O`** at version `1.1.0`:
OAr(i32 cpu, i32 tid)
 
- changes the affinity of thread %{tid} to CPU %{cpu}
 
OAs(i32 cpu)
 
- switches it's own affinity to the CPU %{cpu}
 
OB.
 
- emits a burst event to measure latency
 
OHC(i32 cpu, u64 tag)
 
- creates a new thread on CPU %{cpu} with tag %#llx{tag}
 
OHc
 
- enters the Cooling state (about to be paused)
 
OHe
 
- ends the execution
 
OHp
 
- pauses the execution
 
OHr
 
- resumes the execution
 
OHw
 
- enters the Warming state (about to be running)
 
OHx(i32 cpu, i32 tid, u64 tag)
 
- begins the execution on CPU %{cpu} created from %{tid} with tag %#llx{tag}
 
OCn(i32 cpu)
 
- informs there are %{cpu} CPUs
 
OF[
 
- begins flushing events to disk
 
OF]
 
- ceases flushing events to disk
 
OU[
 
- enters unordered event region
 
OU]
 
- leaves unordered event region
 
OM[(i64 value, i32 type)
 
- push mark with value %{value} from type %{type}
 
OM](i64 value, i32 type)
 
- pop mark with value %{value} from type %{type}
 
OM=(i64 value, i32 type)
 
- set mark with value %{value} from type %{type}
 
## Model openmp
List of events for the model *openmp* with identifier **`P`** at version `1.1.0`:
PBb
 
- begins plain barrier
 
PBB
 
- ceases plain barrier
 
PBj
 
- begins join barrier
 
PBJ
 
- ceases join barrier
 
PBf
 
- begins fork barrier
 
PBF
 
- ceases fork barrier
 
PBt
 
- begins tasking barrier
 
PBT
 
- ceases tasking barrier
 
PBs
 
- begins spin wait
 
PBS
 
- ceases spin wait
 
PIa
 
- begins critical acquiring
 
PIA
 
- ceases critical acquiring
 
PIr
 
- begins critical releasing
 
PIR
 
- ceases critical releasing
 
PI[
 
- begins critical section
 
PI]
 
- ceases critical section
 
PWd
 
- begins distribute
 
PWD
 
- ceases distribute
 
PWy
 
- begins dynamic for init
 
PWY
 
- ceases dynamic for init
 
PWc
 
- begins dynamic for chunk
 
PWC
 
- ceases dynamic for chunk
 
PWs
 
- begins static for
 
PWS
 
- ceases static for
 
PWe
 
- begins section
 
PWE
 
- ceases section
 
PWi
 
- begins single
 
PWI
 
- ceases single
 
PTa
 
- begins task allocation
 
PTA
 
- ceases task allocation
 
PTc
 
- begins checking task dependencies
 
PTC
 
- ceases checking task dependencies
 
PTd
 
- begins duplicating a task
 
PTD
 
- ceases duplicating a task
 
PTr
 
- begins releasing task dependencies
 
PTR
 
- ceases releasing task dependencies
 
PT[
 
- begins running a task
 
PT]
 
- ceases running a task
 
PTi
 
- begins running an if0 task
 
PTI
 
- ceases running an if0 task
 
PTs
 
- begins scheduling a task
 
PTS
 
- ceases scheduling a task
 
PTg
 
- begins a taskgroup
 
PTG
 
- ceases a taskgroup
 
PTt
 
- begins a taskwait
 
PTT
 
- ceases a taskwait
 
PTw
 
- begins waiting for taskwait dependencies
 
PTW
 
- ceases waiting for taskwait dependencies
 
PTy
 
- begins a taskyield
 
PTY
 
- ceases a taskyield
 
PA[
 
- enters the attached state
 
PA]
 
- leaves the attached state
 
PMi
 
- begins microtask internal
 
PMI
 
- ceases microtask internal
 
PMu
 
- begins microtask user code
 
PMU
 
- ceases microtask user code
 
PH[
 
- begins worker loop
 
PH]
 
- ceases worker loop
 
PCf
 
- begins fork call
 
PCF
 
- ceases fork call
 
PCi
 
- begins initialization
 
PCI
 
- ceases initialization
 
## Model tampi
List of events for the model *tampi* with identifier **`T`** at version `1.0.0`:
TCi
 
- starts issuing a non-blocking communication operation
 
TCI
 
- stops  issuing a non-blocking communication operation
 
TGc
 
- starts checking pending requests from the global array
 
TGC
 
- stops  checking pending requests from the global array
 
TLi
 
- enters the library code at an API function
 
TLI
 
- leaves the library code at an API function
 
TLp
 
- enters the library code at a polling function
 
TLP
 
- leaves the library code at a polling function
 
TQa
 
- starts adding a ticket/requests to a queue
 
TQA
 
- stops  adding a ticket/requests to a queue
 
TQt
 
- starts transferring tickets/requests from queues to global array
 
TQT
 
- stops  transferring tickets/requests from queues to global array
 
TRc
 
- starts processsing a completed request
 
TRC
 
- stops  processsing a completed request
 
TRt
 
- starts testing a single request with MPI_Test
 
TRT
 
- stops  testing a single request with MPI_Test
 
TRa
 
- starts testing several requests with MPI_Testall
 
TRA
 
- stops  testing several requests with MPI_Testall
 
TRs
 
- starts testing several requests with MPI_Testsome
 
TRS
 
- stops  testing several requests with MPI_Testsome
 
TTc
 
- starts creating a ticket linked to a set of requests and a task
 
TTC
 
- stops  creating a ticket linked to a set of requests and a task
 
TTw
 
- starts waiting for a ticket completion
 
TTW
 
- stops  waiting for a ticket completion
 
## Model nosv
List of events for the model *nosv* with identifier **`V`** at version `2.3.0`:
VTc(u32 taskid, u32 typeid)
 
- creates task %{taskid} with type %{typeid}
 
VTC(u32 taskid, u32 typeid)
 
- creates parallel task %{taskid} with type %{typeid}
 
VTx(u32 taskid, u32 bodyid)
 
- executes the task %{taskid} with bodyid %{bodyid}
 
VTe(u32 taskid, u32 bodyid)
 
- ends the task %{taskid} with bodyid %{bodyid}
 
VTp(u32 taskid, u32 bodyid)
 
- pauses the task %{taskid} with bodyid %{bodyid}
 
VTr(u32 taskid, u32 bodyid)
 
- resumes the task %{taskid} with bodyid %{bodyid}
 
VYc+(u32 typeid, str label)
 
- creates task type %{typeid} with label "%{label}"
 
VSr
 
- receives a task from another thread
 
VSs
 
- sends a task to another thread
 
VS@
 
- self assigns itself a task
 
VSh
 
- enters the hungry state, waiting for work
 
VSf
 
- is no longer hungry
 
VS[
 
- enters scheduler server mode
 
VS]
 
- leaves scheduler server mode
 
VU[
 
- starts submitting a task
 
VU]
 
- stops  submitting a task
 
VMa
 
- starts allocating memory
 
VMA
 
- stops  allocating memory
 
VMf
 
- starts freeing memory
 
VMF
 
- stops  freeing memory
 
VAr
 
- enters nosv_create()
 
VAR
 
- leaves nosv_create()
 
VAd
 
- enters nosv_destroy()
 
VAD
 
- leaves nosv_destroy()
 
VAs
 
- enters nosv_submit()
 
VAS
 
- leaves nosv_submit()
 
VAp
 
- enters nosv_pause()
 
VAP
 
- leaves nosv_pause()
 
VAy
 
- enters nosv_yield()
 
VAY
 
- leaves nosv_yield()
 
VAw
 
- enters nosv_waitfor()
 
VAW
 
- leaves nosv_waitfor()
 
VAc
 
- enters nosv_schedpoint()
 
VAC
 
- leaves nosv_schedpoint()
 
VAa
 
- enters nosv_attach()
 
VAA
 
- leaves nosv_attach()
 
VAe
 
- enters nosv_detach()
 
VAE
 
- leaves nosv_detach()
 
VAl
 
- enters nosv_mutex_lock()
 
VAL
 
- leaves nosv_mutex_lock()
 
VAt
 
- enters nosv_mutex_trylock()
 
VAT
 
- leaves nosv_mutex_trylock()
 
VAu
 
- enters nosv_mutex_unlock()
 
VAU
 
- leaves nosv_mutex_unlock()
 
VAb
 
- enters nosv_barrier_wait()
 
VAB
 
- leaves nosv_barrier_wait()
 
VHa
 
- enters nosv_attach()
 
VHA
 
- leaves nosv_dettach()
 
VHw
 
- begins execution as worker
 
VHW
 
- ceases execution as worker
 
VHd
 
- begins execution as delegate
 
VHD
 
- ceases execution as delegate
 
VPp
 
- sets progress state to Progressing
 
VPr
 
- sets progress state to Resting
 
VPa
 
- sets progress state to Absorbing