I added three macros for a heartbeat. I figured most code would have initialization code, and some might have checking code at the end. Since errors can still happen in these regions, I wanted to provide a way to annotate setup and teardown code.
I also wanted this to be reusable and light weight, hence why i added it to manycore and not just adding a bsg_printf macro.
Example output:
[BSG_INFO][SPMD_LOADER] SPMD loader finished loading. t=10619000
[INFO][RX] Unfreezing tile t=10622000, x= 16, y= 8
[INFO][MONITOR] RECEIVED HEARTBEAT START from tile y,x= 8,16, data=00000000, time=489063000
[INFO][MONITOR] RECEIVED HEARTBEAT ITER from tile y,x= 8,16, data=00000000, time=508000000
[INFO][MONITOR] RECEIVED HEARTBEAT ITER from tile y,x= 8,16, data=00000001, time=525690000
[INFO][MONITOR] RECEIVED HEARTBEAT END from tile y,x= 8,16, data=00000000, time=526233000
[INFO][MONITOR] RECEIVED a finish packet from tile y,x= 8,16, data=00000000, time=541189000
[INFO][MONITOR] RECEIVED BSG_FINISH PACKET from all pods, time=541190000
I added three macros for a heartbeat. I figured most code would have initialization code, and some might have checking code at the end. Since errors can still happen in these regions, I wanted to provide a way to annotate setup and teardown code.
I also wanted this to be reusable and light weight, hence why i added it to manycore and not just adding a bsg_printf macro.
Example output: