-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathwitness-debugger.cast
More file actions
15 lines (15 loc) · 9.39 KB
/
Copy pathwitness-debugger.cast
File metadata and controls
15 lines (15 loc) · 9.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{"version": 2, "width": 80, "height": 24, "title": "reconverge witness \u2014 replaying a divergent barrier, lane by lane", "env": {"TERM": "xterm-256color", "SHELL": "/bin/bash"}}
[0.0016, "o", "\u001b[?1049h"]
[0.003, "o", "\u001b[1;1H\u250c\u001b[1m reconverge witness \u001b[22m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\u001b[2;1H\u2502\u001b[1mwitness 1/2 \u2014 kernel `divergent_barrier` \u2014 RC001 \u2014 grid (1,1,1) block (32,1,1\u2026\u001b[22m\u2502\u001b[3;1H\u2502\u001b[3;80H\u2502\u001b[4;1H\u2502\u001b[2m 0 8 16 24\u001b[4;80H\u001b[22m\u2502\u001b[5;1H\u2502lanes\u001b[5;12H\u001b[38;5;2;49moooooooo\u001b[5;21Hoooooooo\u001b[5;30Hoooooooo\u001b[5;39Hoooooooo\u001b[5;80H\u001b[39;49m\u2502\u001b[6;1H\u2502\u001b[2mmask (not at a warp collective)\u001b[6;80H\u001b[22m\u2502\u001b[7;1H\u2502\u001b[7;80H\u2502\u001b[8;1H\u2502\u001b[2m o active W waiting . exited\u001b[8;80H\u001b[22m\u2502\u001b[9;1H\u2502\u001b[9;80H\u2502\u001b[10;1H\u2502\u001b[38;5;6;49mstep 0/5 [.....]\u001b[10;80H\u001b[39;49m\u2502\u001b[11;1H\u2502launch\u001b[11;9H\u2014\u001b[11;11Hbefore\u001b[11;18Hthe\u001b[11;22Hfirst\u001b[11;28Hevent\u001b[11;80H\u2502\u001b[12;1H\u2502\u001b[12;80H\u2502\u001b[13;1H\u2502\u001b[13;80H\u2502\u001b[14;1H\u2502\u001b[14;80H\u2502\u001b[15;1H\u2502\u001b[2mverdict: undefined behavior (at step 5)\u001b[15;80H\u001b[22m\u2502\u001b[16;1H\u2502\u001b[16;80H\u2502\u001b[17;1H\u2502\u001b[17;80H\u2502\u001b[18;1H\u2502\u001b[18;80H\u2502"]
[0.003, "o", "\u001b[19;1H\u2502\u001b[19;80H\u2502\u001b[20;1H\u2502\u001b[20;80H\u2502\u001b[21;1H\u2502\u001b[21;80H\u2502\u001b[22;1H\u2502\u001b[22;80H\u2502\u001b[23;1H\u2502\u001b[23;80H\u2502\u001b[24;1H\u2514\u001b[2m h/l step g/G ends d split v verdict n/N witness q quit \u001b[22m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[1.5009, "o", "\u001b[10;7H\u001b[38;5;6;49m1\u001b[10;13H>\u001b[11;2H\u001b[39;49m_4 = cuda_device::__internal::index_1d(&_3)\u001b[12;2H\u001b[2mat lib.rs:20\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[2.4012, "o", "\u001b[10;7H\u001b[38;5;6;49m2\u001b[10;13H=>\u001b[11;3H\u001b[39;49m6\u001b[11;7HRem(\u001b[11;12H5, const 2_usize); _7 = Eq(_6, const\u001b[11;49H0_usize)\u001b[12;13H\u001b[2m1\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[3.3013, "o", "\u001b[10;7H\u001b[38;5;6;49m3\u001b[10;14H=>\u001b[11;2H\u001b[39;49mswitchInt(_7) \u2014 lanes d\u001b[11;26Hsagree:\u001b[11;34H16 take the branch, 16 skip\u001b[11;62Hit\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[4.2014, "o", "\u001b[5;12H\u001b[38;5;3;49mW\u001b[5;14HW\u001b[5;16HW\u001b[5;18HW\u001b[5;21HW\u001b[5;23HW\u001b[5;25HW\u001b[5;27HW\u001b[5;30HW\u001b[5;32HW\u001b[5;34HW\u001b[5;36HW\u001b[5;39HW\u001b[5;41HW\u001b[5;43HW\u001b[5;45HW\u001b[10;7H\u001b[38;5;6;49m4\u001b[10;15H=>\u001b[11;2H\u001b[39;49m_8 = cuda_device::sync_threads() \u001b[11;37H \u001b[11;42H \u001b[11;46H \u001b[11;54H \u001b[11;57H \u001b[11;62H \u001b[12;13H\u001b[2m2\u001b[13;2H\u001b[22m\u001b[38;5;3;49mbarrier: 16 of 32 threads arrived\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[6.4021, "o", "\u001b[5;13H\u001b[2m.\u001b[5;15H.\u001b[5;17H.\u001b[5;19H.\u001b[5;22H.\u001b[5;24H.\u001b[5;26H.\u001b[5;28H.\u001b[5;31H.\u001b[5;33H.\u001b[5;35H.\u001b[5;37H.\u001b[5;40H.\u001b[5;42H.\u001b[5;44H.\u001b[5;46H.\u001b[10;7H\u001b[22m\u001b[38;5;6;49m5\u001b[10;16H=>\u001b[11;2H\u001b[39;49mreturn \u2014 th\u001b[11;14H odd lanes leave the\u001b[11;35Hkernel\u001b[11;42Hwithout\u001b[11;50Hever\u001b[11;55Hreaching\u001b[11;64Hthe\u001b[11;68Hbarrier\u001b[12;13H\u001b[2m7\u001b[13;2H\u001b[22m \u001b[15;2H\u001b[1m\u001b[38;5;1;49mverdict: undefined behavior (at step 5)\u001b[16;2H\u001b[22m\u001b[39;49m16\u001b[16;5Hof\u001b[16;8H32\u001b[16;11Hlanes\u001b[16;17Hwait\u001b[16;22Hat\u001b[16;25Hthe\u001b[16;29Hbarrier\u001b[16;37Hwhile\u001b[16;43Hthe\u001b[16;47Hother\u001b[16;53H16\u001b[16;56Hhave\u001b[16;61Hexited;\u001b[16;69Hthe\u001b[16;73Hbarrier\u001b[17;2Hcan\u001b[17;6Hnever\u001b[17;12Hbe\u001b[17;15Hsatisfied\u001b[17;25H\u2014\u001b[17;27Hundefined\u001b[17;37Hbehavior\u001b[17;46Hon\u001b[17;49Hhardware,\u001b[17;59Husually\u001b[17;67Ha\u001b[17;69Hpermanent\u001b[18;2Hhang\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[9.2019, "o", "\u001b[5;12H\u001b[38;5;2;49moooooooo\u001b[5;21Hoooooooo\u001b[5;30Hoooooooo\u001b[5;39Hoooooooo\u001b[10;7H\u001b[38;5;6;49m0\u001b[10;13H.....\u001b[11;2H\u001b[39;49mlaunch\u001b[11;11Hbefore the first event \u001b[11;35H \u001b[11;42H \u001b[11;50H \u001b[11;55H \u001b[11;64H \u001b[11;68H \u001b[12;2H \u001b[15;2H\u001b[2mverdict: undefined behavior (at step 5)\u001b[16;2H\u001b[22m \u001b[16;5H \u001b[16;8H \u001b[16;11H \u001b[16;17H \u001b[16;22H \u001b[16;25H \u001b[16;29H \u001b[16;37H \u001b[16;43H \u001b[16;47H \u001b[16;53H \u001b[16;56H \u001b[16;61H \u001b[16;69H \u001b[16;73H \u001b[17;2H \u001b[17;6H \u001b[17;12H \u001b[17;15H \u001b[17;25H \u001b[17;27H \u001b[17;37H \u001b[17;46H \u001b[17;49H \u001b[17;59H \u001b[17;67H \u001b[17;69H \u001b[18;2H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[10.4022, "o", "\u001b[5;12H\u001b[38;5;3;49mW\u001b[5;14HW\u001b[5;16HW\u001b[5;18HW\u001b[5;21HW\u001b[5;23HW\u001b[5;25HW\u001b[5;27HW\u001b[5;30HW\u001b[5;32HW\u001b[5;34HW\u001b[5;36HW\u001b[5;39HW\u001b[5;41HW\u001b[5;43HW\u001b[5;45HW\u001b[10;7H\u001b[38;5;6;49m4\u001b[10;13H===>\u001b[11;2H\u001b[39;49m_8 = cuda_device::sync_thr\u001b[11;29Hads()\u001b[12;2H\u001b[2mat lib.rs:22\u001b[13;2H\u001b[22m\u001b[38;5;3;49mbarrier: 16 of 32 threads arrived\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[12.4025, "o", "\u001b[2;10H\u001b[1m2\u001b[2;24Hrc002_divergent_collective` \u2014 RC002 \u2014 grid (1,1,1) bloc\u001b[5;12H\u001b[22m\u001b[38;5;2;49mo\u001b[5;14Ho\u001b[5;16Ho\u001b[5;18Ho\u001b[5;21Ho\u001b[5;23Ho\u001b[5;25Ho\u001b[5;27Ho\u001b[5;30Ho\u001b[5;32Ho\u001b[5;34Ho\u001b[5;36Ho\u001b[5;39Ho\u001b[5;41Ho\u001b[5;43Ho\u001b[5;45Ho\u001b[10;7H\u001b[38;5;6;49m0\u001b[10;9H3\u001b[10;13H...]\u001b[39;49m \u001b[11;2Hlaunch \u2014 before the first \u001b[11;29Hvent \u001b[12;2H \u001b[13;2H \u001b[15;39H\u001b[2m3\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[13.603, "o", "\u001b[5;13H\u001b[38;5;3;49mW\u001b[5;15HW\u001b[5;17HW\u001b[5;19HW\u001b[5;22HW\u001b[5;24HW\u001b[5;26HW\u001b[5;28HW\u001b[5;31HW\u001b[5;33HW\u001b[5;35HW\u001b[5;37HW\u001b[5;40HW\u001b[5;42HW\u001b[5;44HW\u001b[5;46HW\u001b[6;2H\u001b[38;5;5;49mmask ######## ######## ######## ######## 0xffffffff\u001b[7;2H\u001b[38;5;2;49mactive #.#.#.#. #.#.#.#. #.#.#.#. #.#.#.#. 0x55555555\u001b[10;7H\u001b[38;5;6;49m3\u001b[10;13H==>\u001b[11;2H\u001b[39;49m_5 = cuda_device::warp::ballot_sync(const\u001b[11;44H0xffffffff_u32,\u001b[11;60Hconst\u001b[11;66Htrue)\u001b[12;2H\u001b[2mat lib.rs:33\u001b[13;2H\u001b[22m\u001b[38;5;3;49mballot_sync \u2014 named in the mask but not active: 0xaaaaaaaa\u001b[15;2H\u001b[1m\u001b[38;5;1;49mverdict: undefined behavior (at step 3)\u001b[16;2H\u001b[22m\u001b[39;49mballot_sync\u001b[16;14Hnames\u001b[16;20Hall\u001b[16;24H32\u001b[16;27Hlanes\u001b[16;33Hin\u001b[16;36Hits\u001b[16;40Hmask,\u001b[16;46Hbut\u001b[16;50Honly\u001b[16;55Hthe\u001b[16;59H16\u001b[16;62Heven\u001b[16;67Hlanes\u001b[16;73Hare\u001b[17;2Hactive\u001b[17;9Hat\u001b[17;12Hthe\u001b[17;16Hcall\u001b[17;21H\u2014\u001b[17;23Hthe\u001b[17;27Hnamed-but-absent\u001b[17;44Hlanes\u001b[17;50Hmake\u001b[17;55Hthe\u001b[17;59Hcollective\u001b[17;70Hundefined;\u001b[18;2Hon\u001b[18;5Hhardware\u001b[18;14Hthis\u001b[18;19Husually\u001b[18;27Hnever\u001b[18;33Hcompletes\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[15.2029, "o", "\u001b[6;2H\u001b[2mmask (not at a warp collective)\u001b[22m \u001b[7;2H \u001b[10;7H\u001b[38;5;6;49m2\u001b[10;14H>.\u001b[11;2H\u001b[39;49mswitchInt(i.get() % 2 == 0) \u2014 lanes disagree: 16 take the\u001b[11;60Hbranch, 16 skip\u001b[11;76Hit\u001b[12;13H\u001b[2m2\u001b[13;2H\u001b[22m \u001b[15;2H\u001b[2mverdict: undefined behavior (at step 3)\u001b[16;2H\u001b[22m \u001b[16;14H \u001b[16;20H \u001b[16;24H \u001b[16;27H \u001b[16;33H \u001b[16;36H \u001b[16;40H \u001b[16;46H \u001b[16;50H \u001b[16;55H \u001b[16;59H \u001b[16;62H \u001b[16;67H \u001b[16;73H \u001b[17;2H \u001b[17;9H \u001b[17;12H \u001b[17;16H \u001b[17;21H \u001b[17;23H \u001b[17;27H \u001b[17;44H \u001b[17;50H \u001b[17;55H \u001b[17;59H \u001b[17;70H \u001b[18;2H \u001b[18;5H \u001b[18;14H \u001b[18;19H \u001b[18;27H \u001b[18;33H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"]
[18.2026, "o", "\u001b[?1049l\u001b[?25h"]