Frame 6 - WP552

AI Engine Programming: A Kahn Process Network Evolution (WP552)

Document ID
WP552
Release Date
2023-07-20
Revision
1.0 English
The sixth set of data started writing to the buffers (pong buffer – buf0d/buf1d) and the vadd kernel (node/actor) must wait to process frame 4 because the buffers are locked due to the addConstant kernel (node/actor), which must wait to process frame 3. The fir_32 kernel (node/actor) is still processing frame 1. The copy_in_out kernel must wait to process frame 3 because the fir_32 kernel (node/actor) is still processing frame 1, which locks the buffers (buf3 and buf4). Even though the copy_in_out kernel can run parallel, but the fir_32 is running slow, which generated the lock to the buffers (buf3/buf4).
Figure 1. Frame 6
Table 1. Sending the Frame 6 – Tokens/Kernels Status
KPN Terminology Input Token for Vadd Node/Actor Input Token for addConstant Node/Actor Input Token for fir_32 Input Token for copy_in_out Node/ Actor Port Node/ Actor Port
AI Engine Buffer (ping/pong) Vadd

Buffer (ping/pong)

addConstant

Buffer (ping/pong)

Buffer (ping/pong)

copy_in_out

Buffer (ping/pong)

fir_32

Buffer (ping/pong)

buf0/

buf1

buf0d/

buf1d

buf2 buf2d buf3 buf3d Buf4 buf4d buf6 buf6d buf5 buf5d
Frame 1 Fill - Waiting - - Waiting - - - - Waiting - - Waiting - -
Frame 2 Token ready Frame 1 Fill Processing (Frame 1) Fill - Waiting - - - - Waiting - - Waiting - -
Frame 3 Fill Token ready Frame 2 Processing (Frame 2) Token ready Frame 1 Fill Processing (Frame 1) Fill - Fill - Waiting - - Waiting - -
Frame 4 Token ready Frame 3 Fill Processing (Frame 3) Fill Token ready Frame 2 Processing (Frame 2) Token ready Frame 1 Fill Token ready for Frame 1 Fill

Processing (Frame 1)

Fill -

Processing (Frame 1)

Fill -
Frame 5 Fill Token ready Frame 4 Processing (Frame 4) - Locked Waiting Locked Token ready Frame 2 Locked Token ready Frame 2 Processing (Frame 2) - Fill Processing (Frame 1) Fill -
Frame 6 Locked Fill Waiting Locked Locked Waiting Locked Token ready Frame 2 Locked Locked Waiting Fill - Processing (Frame 1) Fill -