2026-09-11T11:12:17.439914Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="compile_runtime"}: package build phase finished phase="compile_runtime" elapsed_ms=0 success=true 2026-09-11T11:12:26.063269Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/baseline-63155-0000.json scope="baseline" peak_step=18 effective_peak_bytes=470648 2026-09-11T11:12:33.909484Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=6552 expansion_and_footprint_ms=7845 estimated_row_bytes=83608 heuristic_row_bytes=146664 geometry_fragments_per_tile=9478 fragment_limit=16384 2026-09-11T11:12:34.633984Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: placed tile storage tiles=1472 shards=391104 elapsed_us=592388 2026-09-11T11:12:34.773293Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=36 transfers=2820 maximum_identical_destinations=1 2026-09-11T11:12:34.773334Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=36 initial_horizon=3437 selected_horizon=3437 endpoint_lower_bound=1076 lower_bound_gap=2361 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.775938Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=36 tile=1420 row_words=15 horizon=3437 2026-09-11T11:12:34.778553Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=64 candidates=17 ordinary_horizon=688 paired_horizon=1417 use_paired=false 2026-09-11T11:12:34.800557Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=37 transfers=2198 maximum_identical_destinations=1 2026-09-11T11:12:34.800580Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=37 initial_horizon=4406 selected_horizon=4406 endpoint_lower_bound=2152 lower_bound_gap=2254 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.802628Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=37 tile=169 row_words=20 horizon=4406 2026-09-11T11:12:34.802790Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=65 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:12:34.802814Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=65 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.805143Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=65 tile=866 row_words=10 horizon=471 2026-09-11T11:12:34.822591Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=66 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:12:34.822614Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=66 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.822879Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=21 transfers=11656 maximum_identical_destinations=1 2026-09-11T11:12:34.822906Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=21 initial_horizon=3952 selected_horizon=3952 endpoint_lower_bound=2304 lower_bound_gap=1648 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.823770Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=66 tile=47 row_words=23 horizon=374 2026-09-11T11:12:34.826682Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=21 tile=175 row_words=138 horizon=3952 2026-09-11T11:12:34.863791Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=70 candidates=32 ordinary_horizon=210 paired_horizon=1250 use_paired=false 2026-09-11T11:12:34.898246Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=72 candidates=35 ordinary_horizon=660 paired_horizon=2329 use_paired=false 2026-09-11T11:12:34.925780Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=73 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:12:34.925808Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=73 initial_horizon=1112 selected_horizon=1112 endpoint_lower_bound=896 lower_bound_gap=216 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.928551Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=73 tile=875 row_words=10 horizon=1112 2026-09-11T11:12:34.943820Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=74 transfers=1400 maximum_identical_destinations=1 2026-09-11T11:12:34.943853Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=74 initial_horizon=4006 selected_horizon=4006 endpoint_lower_bound=3920 lower_bound_gap=86 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.944603Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=74 tile=39 row_words=39 horizon=4006 2026-09-11T11:12:34.963458Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=75 transfers=2151 maximum_identical_destinations=1 2026-09-11T11:12:34.963479Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=75 initial_horizon=183 selected_horizon=183 endpoint_lower_bound=64 lower_bound_gap=119 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.964852Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=75 tile=1105 row_words=39 horizon=183 2026-09-11T11:12:34.974458Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=76 transfers=1075 maximum_identical_destinations=1 2026-09-11T11:12:34.974474Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=76 initial_horizon=216 selected_horizon=216 endpoint_lower_bound=4 lower_bound_gap=212 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.975362Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=76 tile=46 row_words=9 horizon=216 2026-09-11T11:12:34.985065Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=77 transfers=1023 maximum_identical_destinations=1 2026-09-11T11:12:34.985082Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=77 initial_horizon=2206 selected_horizon=2206 endpoint_lower_bound=2148 lower_bound_gap=58 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:34.985671Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=77 tile=0 row_words=1028 horizon=2206 2026-09-11T11:12:35.009961Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=78 candidates=19 ordinary_horizon=2258 paired_horizon=2382 use_paired=false 2026-09-11T11:12:35.183583Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=31 transfers=4374 maximum_identical_destinations=1 2026-09-11T11:12:35.183629Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=31 initial_horizon=10088 selected_horizon=10088 endpoint_lower_bound=7872 lower_bound_gap=2216 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.192848Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=31 tile=136 row_words=234 horizon=10088 2026-09-11T11:12:35.345985Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=32 transfers=9677 maximum_identical_destinations=1 2026-09-11T11:12:35.346028Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=32 initial_horizon=8957 selected_horizon=8957 endpoint_lower_bound=7680 lower_bound_gap=1277 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.350268Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=32 tile=86 row_words=143 horizon=8957 2026-09-11T11:12:35.462024Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=34 transfers=8694 maximum_identical_destinations=1 2026-09-11T11:12:35.462070Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=34 initial_horizon=17085 selected_horizon=17085 endpoint_lower_bound=7872 lower_bound_gap=9213 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.471636Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=34 tile=643 row_words=39 horizon=17085 2026-09-11T11:12:35.599642Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=38 transfers=19683 maximum_identical_destinations=1 2026-09-11T11:12:35.599687Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=38 initial_horizon=11954 selected_horizon=11954 endpoint_lower_bound=9760 lower_bound_gap=2194 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.619116Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=38 tile=481 row_words=544 horizon=11954 2026-09-11T11:12:35.670316Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=10 transfers=2589 maximum_identical_destinations=1 2026-09-11T11:12:35.670345Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=10 initial_horizon=6357 selected_horizon=6357 endpoint_lower_bound=2048 lower_bound_gap=4309 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.672338Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=10 tile=431 row_words=23 horizon=6357 2026-09-11T11:12:35.677462Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=42 transfers=51925 maximum_identical_destinations=1 2026-09-11T11:12:35.677496Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=42 initial_horizon=1090 selected_horizon=1090 endpoint_lower_bound=576 lower_bound_gap=514 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.686792Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=26 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:12:35.686831Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=26 initial_horizon=1122 selected_horizon=1122 endpoint_lower_bound=576 lower_bound_gap=546 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.705564Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=42 tile=850 row_words=106 horizon=1090 2026-09-11T11:12:35.724298Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=26 tile=1229 row_words=126 horizon=1122 2026-09-11T11:12:35.730033Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=43 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:35.730056Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=43 initial_horizon=2798 selected_horizon=2798 endpoint_lower_bound=2304 lower_bound_gap=494 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.731493Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=43 tile=148 row_words=24 horizon=2798 2026-09-11T11:12:35.747963Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=44 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:35.747989Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=44 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.749328Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=44 tile=171 row_words=17 horizon=2921 2026-09-11T11:12:35.763815Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=27 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:35.763849Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=27 initial_horizon=3101 selected_horizon=3101 endpoint_lower_bound=2304 lower_bound_gap=797 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.765872Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=27 tile=181 row_words=22 horizon=3101 2026-09-11T11:12:35.789138Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=28 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:35.789175Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=28 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.790787Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=28 tile=171 row_words=17 horizon=2921 2026-09-11T11:12:35.873432Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=15 transfers=2184 maximum_identical_destinations=1 2026-09-11T11:12:35.873470Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=15 initial_horizon=8158 selected_horizon=8158 endpoint_lower_bound=6912 lower_bound_gap=1246 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:35.874827Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=15 tile=167 row_words=51 horizon=8158 2026-09-11T11:12:36.088441Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=12 transfers=50544 maximum_identical_destinations=1 2026-09-11T11:12:36.088484Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=12 initial_horizon=14734 selected_horizon=14734 endpoint_lower_bound=7424 lower_bound_gap=7310 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:36.126855Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=12 tile=938 row_words=177 horizon=14734 2026-09-11T11:12:36.923142Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=47 candidates=6561 ordinary_horizon=9028 paired_horizon=46080 use_paired=false 2026-09-11T11:12:36.938267Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=22 candidates=8748 ordinary_horizon=9329 paired_horizon=114608 use_paired=false 2026-09-11T11:12:36.963089Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=47 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:12:36.963123Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=47 initial_horizon=9028 selected_horizon=9028 endpoint_lower_bound=5248 lower_bound_gap=3780 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:36.973444Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=47 tile=171 row_words=133 horizon=9028 2026-09-11T11:12:36.990598Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=48 transfers=1295 maximum_identical_destinations=1 2026-09-11T11:12:36.990620Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=48 initial_horizon=4249 selected_horizon=4249 endpoint_lower_bound=4096 lower_bound_gap=153 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:36.991418Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=48 tile=152 row_words=16 horizon=4249 2026-09-11T11:12:36.999870Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=22 transfers=8748 maximum_identical_destinations=1 2026-09-11T11:12:36.999894Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=22 initial_horizon=9329 selected_horizon=9329 endpoint_lower_bound=7008 lower_bound_gap=2321 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.017537Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=22 tile=139 row_words=201 horizon=9329 2026-09-11T11:12:37.054697Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=23 transfers=1725 maximum_identical_destinations=1 2026-09-11T11:12:37.054722Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=23 initial_horizon=1431 selected_horizon=1431 endpoint_lower_bound=1152 lower_bound_gap=279 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.056387Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=23 tile=235 row_words=22 horizon=1431 2026-09-11T11:12:37.182122Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=0 candidates=7106 ordinary_horizon=8086 paired_horizon=102200 use_paired=false 2026-09-11T11:12:37.242782Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=25 transfers=20656 maximum_identical_destinations=1 2026-09-11T11:12:37.242828Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=25 initial_horizon=7526 selected_horizon=7526 endpoint_lower_bound=3648 lower_bound_gap=3878 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.254046Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=25 tile=860 row_words=87 horizon=7526 2026-09-11T11:12:37.260124Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=0 transfers=7290 maximum_identical_destinations=1 2026-09-11T11:12:37.260160Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=0 initial_horizon=8086 selected_horizon=8086 endpoint_lower_bound=5888 lower_bound_gap=2198 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.273867Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=0 tile=79 row_words=273 horizon=8086 2026-09-11T11:12:37.398840Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=50 transfers=45090 maximum_identical_destinations=1 2026-09-11T11:12:37.398880Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=50 initial_horizon=11314 selected_horizon=11314 endpoint_lower_bound=6048 lower_bound_gap=5266 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.427031Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=50 tile=1084 row_words=180 horizon=11314 2026-09-11T11:12:37.817080Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=1 transfers=42560 maximum_identical_destinations=1 2026-09-11T11:12:37.817119Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=1 initial_horizon=710 selected_horizon=710 endpoint_lower_bound=512 lower_bound_gap=198 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.830373Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=1 tile=262 row_words=172 horizon=710 2026-09-11T11:12:37.982620Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=3 transfers=16520 maximum_identical_destinations=1 2026-09-11T11:12:37.982652Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=3 initial_horizon=6258 selected_horizon=6258 endpoint_lower_bound=3040 lower_bound_gap=3218 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:37.991606Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=3 tile=673 row_words=71 horizon=6258 2026-09-11T11:12:38.250361Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=41 transfers=112284 maximum_identical_destinations=1 2026-09-11T11:12:38.250404Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=41 initial_horizon=27323 selected_horizon=27323 endpoint_lower_bound=9072 lower_bound_gap=18251 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.324913Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=41 tile=715 row_words=396 horizon=27323 2026-09-11T11:12:38.377140Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=14 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:38.377170Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=14 initial_horizon=5246 selected_horizon=5246 endpoint_lower_bound=3456 lower_bound_gap=1790 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.378342Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=14 tile=354 row_words=13 horizon=5246 2026-09-11T11:12:38.391399Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=80 transfers=1368 maximum_identical_destinations=1 2026-09-11T11:12:38.391418Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=80 initial_horizon=406 selected_horizon=406 endpoint_lower_bound=304 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.392245Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=80 tile=47 row_words=25 horizon=406 2026-09-11T11:12:38.425352Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=5 transfers=2773 maximum_identical_destinations=1 2026-09-11T11:12:38.425377Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=5 initial_horizon=1094 selected_horizon=1094 endpoint_lower_bound=288 lower_bound_gap=806 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.427983Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=5 tile=1432 row_words=15 horizon=1094 2026-09-11T11:12:38.448762Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=6 transfers=2193 maximum_identical_destinations=1 2026-09-11T11:12:38.448783Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=6 initial_horizon=3082 selected_horizon=3082 endpoint_lower_bound=2304 lower_bound_gap=778 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.450167Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=6 tile=70 row_words=31 horizon=3082 2026-09-11T11:12:38.918955Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=4 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:12:38.919001Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=4 initial_horizon=1111 selected_horizon=1111 endpoint_lower_bound=576 lower_bound_gap=535 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:38.943085Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=4 tile=937 row_words=127 horizon=1111 2026-09-11T11:12:39.313924Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=13 transfers=155252 maximum_identical_destinations=1 2026-09-11T11:12:39.313973Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=13 initial_horizon=4487 selected_horizon=4487 endpoint_lower_bound=1728 lower_bound_gap=2759 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.368386Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=51 transfers=103635 maximum_identical_destinations=1 2026-09-11T11:12:39.368427Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=51 initial_horizon=1973 selected_horizon=1973 endpoint_lower_bound=1152 lower_bound_gap=821 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.406763Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=13 tile=606 row_words=264 horizon=4487 2026-09-11T11:12:39.429151Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=51 tile=239 row_words=188 horizon=1973 2026-09-11T11:12:39.466260Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=52 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:39.466288Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=52 initial_horizon=3513 selected_horizon=3513 endpoint_lower_bound=2304 lower_bound_gap=1209 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.467576Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=52 tile=355 row_words=13 horizon=3513 2026-09-11T11:12:39.520474Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=53 candidates=72 ordinary_horizon=175 paired_horizon=285 use_paired=false 2026-09-11T11:12:39.539230Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=54 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:12:39.539248Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=54 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.540878Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=54 tile=866 row_words=10 horizon=471 2026-09-11T11:12:39.553187Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=55 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:12:39.553223Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=55 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.554036Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=55 tile=47 row_words=23 horizon=374 2026-09-11T11:12:39.576417Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=57 transfers=1743 maximum_identical_destinations=1 2026-09-11T11:12:39.576452Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=57 initial_horizon=5892 selected_horizon=5892 endpoint_lower_bound=4644 lower_bound_gap=1248 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.578014Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=57 tile=14 row_words=59 horizon=5892 2026-09-11T11:12:39.774897Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=35 transfers=195689 maximum_identical_destinations=1 2026-09-11T11:12:39.774940Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=35 initial_horizon=4980 selected_horizon=4980 endpoint_lower_bound=2152 lower_bound_gap=2828 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:39.898063Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=35 tile=229 row_words=509 horizon=4980 2026-09-11T11:12:40.143849Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=18 transfers=66880 maximum_identical_destinations=1 2026-09-11T11:12:40.143899Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=18 initial_horizon=9632 selected_horizon=9632 endpoint_lower_bound=3640 lower_bound_gap=5992 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:40.171445Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=18 tile=363 row_words=282 horizon=9632 2026-09-11T11:12:40.943499Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=19 transfers=75104 maximum_identical_destinations=1 2026-09-11T11:12:40.943546Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=19 initial_horizon=19352 selected_horizon=19352 endpoint_lower_bound=8832 lower_bound_gap=10520 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:40.989868Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=19 tile=355 row_words=319 horizon=19352 2026-09-11T11:12:41.019275Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=79 transfers=301599 maximum_identical_destinations=1 2026-09-11T11:12:41.019322Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=79 initial_horizon=1508 selected_horizon=1508 endpoint_lower_bound=896 lower_bound_gap=612 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.026509Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=16 transfers=127912 maximum_identical_destinations=1 2026-09-11T11:12:41.026544Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=16 initial_horizon=16401 selected_horizon=16401 endpoint_lower_bound=6912 lower_bound_gap=9489 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.120377Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=20 transfers=61520 maximum_identical_destinations=1 2026-09-11T11:12:41.120418Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=20 initial_horizon=5858 selected_horizon=5858 endpoint_lower_bound=3640 lower_bound_gap=2218 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.156042Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=20 tile=730 row_words=166 horizon=5858 2026-09-11T11:12:41.185948Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=58 transfers=68951 maximum_identical_destinations=1 2026-09-11T11:12:41.185992Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=58 initial_horizon=12646 selected_horizon=12646 endpoint_lower_bound=7996 lower_bound_gap=4650 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.198516Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=16 tile=79 row_words=2729 horizon=16401 2026-09-11T11:12:41.255772Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=58 tile=70 row_words=2375 horizon=12646 2026-09-11T11:12:41.284719Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=79 tile=1361 row_words=459 horizon=1508 2026-09-11T11:12:41.446431Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=59 transfers=11520 maximum_identical_destinations=1 2026-09-11T11:12:41.446464Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=59 initial_horizon=2410 selected_horizon=2410 endpoint_lower_bound=2304 lower_bound_gap=106 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.451729Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=59 tile=168 row_words=108 horizon=2410 2026-09-11T11:12:41.716845Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=9 candidates=6561 ordinary_horizon=17780 paired_horizon=189735 use_paired=false 2026-09-11T11:12:41.802136Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=9 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:12:41.802172Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=9 initial_horizon=17780 selected_horizon=17780 endpoint_lower_bound=15616 lower_bound_gap=2164 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:41.814536Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=9 tile=105 row_words=287 horizon=17780 2026-09-11T11:12:42.831482Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=17 transfers=32656 maximum_identical_destinations=1 2026-09-11T11:12:42.831522Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=17 initial_horizon=11564 selected_horizon=11564 endpoint_lower_bound=6192 lower_bound_gap=5372 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:42.874670Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=17 tile=557 row_words=648 horizon=11564 2026-09-11T11:12:43.947872Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=39 transfers=302920 maximum_identical_destinations=1 2026-09-11T11:12:43.947922Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=39 initial_horizon=9424 selected_horizon=9424 endpoint_lower_bound=5120 lower_bound_gap=4304 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:44.166541Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=39 tile=45 row_words=1573 horizon=9424 2026-09-11T11:12:44.289425Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="plan_kernels"}: package build phase finished phase="plan_kernels" elapsed_ms=43 success=true 2026-09-11T11:12:44.295867Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="compile_kernels"}: package build phase finished phase="compile_kernels" elapsed_ms=6 success=true 2026-09-11T11:12:44.306849Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="link_runtime"}: package build phase finished phase="link_runtime" elapsed_ms=0 success=true 2026-09-11T11:12:44.578773Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: exchange table and repeat patch storage exchange_table_bytes=49176 maximum_uncompressed_repeat_patch_bytes=324 maximum_elided_arithmetic_patch_bytes=324 2026-09-11T11:12:47.396086Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="size_tile_code"}: package build phase finished phase="size_tile_code" elapsed_ms=217 success=true 2026-09-11T11:12:47.396144Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: placing generated tile programs linked_end=385264 host_code_base=385264 host_code_bytes=9084 generated_code_bytes=16556 exchange_table_bytes=49176 executable_ranges=[(377228, 377232), (377972, 377976), (378716, 378720), (381116, 381120), (382276, 382280), (384292, 384296), (394416, 524288)] 2026-09-11T11:12:47.396162Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: allocated package support memory linked_end=385264 profile_bytes=1076 exchange_table_bytes=49176 host_code_bytes=9084 host_data_bytes=6280 generated_code_bytes=16556 code_address=394416 available_ranges=[(327680, 360448), (368488, 376832), (491520, 524288), (525364, 949168)] 2026-09-11T11:12:47.994812Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="place_storage"}: placed tile storage tiles=1472 shards=391104 elapsed_us=598626 2026-09-11T11:12:48.083366Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="place_storage"}: package build phase finished phase="place_storage" elapsed_ms=687 success=true 2026-09-11T11:12:48.086618Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=63 2026-09-11T11:12:48.093611Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=68 2026-09-11T11:12:48.096121Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=69 2026-09-11T11:12:48.099060Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=64 2026-09-11T11:12:48.102554Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=52 2026-09-11T11:12:48.103220Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=52 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:48.103236Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=52 initial_horizon=3513 selected_horizon=3513 endpoint_lower_bound=2304 lower_bound_gap=1209 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.104629Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=52 tile=355 row_words=13 horizon=3513 2026-09-11T11:12:48.105896Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=70 2026-09-11T11:12:48.106939Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=73 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:12:48.106969Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=73 initial_horizon=2372 selected_horizon=2372 endpoint_lower_bound=896 lower_bound_gap=1476 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:48.107126Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=71 2026-09-11T11:12:48.108499Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=73 tile=875 row_words=10 horizon=2372 2026-09-11T11:12:48.120285Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=72 2026-09-11T11:12:48.122530Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=74 2026-09-11T11:12:48.123197Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=74 transfers=1400 maximum_identical_destinations=1 2026-09-11T11:12:48.123240Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=74 initial_horizon=4006 selected_horizon=4006 endpoint_lower_bound=3920 lower_bound_gap=86 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.124262Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=74 tile=39 row_words=39 horizon=4006 2026-09-11T11:12:48.135646Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=65 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:12:48.135682Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=65 initial_horizon=846 selected_horizon=846 endpoint_lower_bound=256 lower_bound_gap=590 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:48.138265Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=65 tile=866 row_words=10 horizon=846 2026-09-11T11:12:48.139351Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=75 2026-09-11T11:12:48.139638Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=57 2026-09-11T11:12:48.139904Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=75 transfers=2151 maximum_identical_destinations=1 2026-09-11T11:12:48.139916Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=75 initial_horizon=183 selected_horizon=183 endpoint_lower_bound=64 lower_bound_gap=119 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.140291Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=57 transfers=1743 maximum_identical_destinations=1 2026-09-11T11:12:48.140313Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=57 initial_horizon=5892 selected_horizon=5892 endpoint_lower_bound=4644 lower_bound_gap=1248 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.140962Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=53 2026-09-11T11:12:48.141256Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=75 tile=1105 row_words=39 horizon=183 2026-09-11T11:12:48.141738Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=57 tile=14 row_words=59 horizon=5892 2026-09-11T11:12:48.147922Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=76 2026-09-11T11:12:48.148187Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=76 transfers=1075 maximum_identical_destinations=1 2026-09-11T11:12:48.148194Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=76 initial_horizon=216 selected_horizon=216 endpoint_lower_bound=4 lower_bound_gap=212 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.148757Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=21 2026-09-11T11:12:48.148966Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=76 tile=46 row_words=9 horizon=216 2026-09-11T11:12:48.153258Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=21 transfers=11656 maximum_identical_destinations=1 2026-09-11T11:12:48.153276Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=21 initial_horizon=3952 selected_horizon=3952 endpoint_lower_bound=2304 lower_bound_gap=1648 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.155725Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=77 2026-09-11T11:12:48.155989Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=77 transfers=1023 maximum_identical_destinations=1 2026-09-11T11:12:48.155995Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=77 initial_horizon=2206 selected_horizon=2206 endpoint_lower_bound=2148 lower_bound_gap=58 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.156504Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=77 tile=0 row_words=1028 horizon=2206 2026-09-11T11:12:48.156505Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=21 tile=175 row_words=138 horizon=3952 2026-09-11T11:12:48.157544Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=66 2026-09-11T11:12:48.158221Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=66 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:12:48.158242Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=66 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.159673Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=66 tile=47 row_words=23 horizon=374 2026-09-11T11:12:48.163651Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=78 2026-09-11T11:12:48.167605Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=54 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:12:48.167626Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=54 initial_horizon=784 selected_horizon=784 endpoint_lower_bound=256 lower_bound_gap=528 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:48.169180Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=54 tile=866 row_words=10 horizon=784 2026-09-11T11:12:48.169181Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=67 2026-09-11T11:12:48.176886Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=60 2026-09-11T11:12:48.179332Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=61 2026-09-11T11:12:48.180585Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=62 2026-09-11T11:12:48.180920Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=55 2026-09-11T11:12:48.181389Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=55 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:12:48.181404Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=55 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.182286Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=55 tile=47 row_words=23 horizon=374 2026-09-11T11:12:48.188454Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=56 2026-09-11T11:12:48.220947Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=36 2026-09-11T11:12:48.222043Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=36 transfers=2820 maximum_identical_destinations=1 2026-09-11T11:12:48.222059Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=36 initial_horizon=3437 selected_horizon=3437 endpoint_lower_bound=1076 lower_bound_gap=2361 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.224574Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=36 tile=1420 row_words=15 horizon=3437 2026-09-11T11:12:48.230945Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=10 2026-09-11T11:12:48.232232Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=10 transfers=2589 maximum_identical_destinations=1 2026-09-11T11:12:48.232252Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=10 initial_horizon=6357 selected_horizon=6357 endpoint_lower_bound=2048 lower_bound_gap=4309 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.234356Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=10 tile=431 row_words=23 horizon=6357 2026-09-11T11:12:48.243684Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=11 2026-09-11T11:12:48.246177Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=37 2026-09-11T11:12:48.246959Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=37 transfers=2198 maximum_identical_destinations=1 2026-09-11T11:12:48.246975Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=37 initial_horizon=4406 selected_horizon=4406 endpoint_lower_bound=2152 lower_bound_gap=2254 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.248983Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=37 tile=169 row_words=20 horizon=4406 2026-09-11T11:12:48.656986Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=12 2026-09-11T11:12:48.682775Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=12 transfers=50544 maximum_identical_destinations=1 2026-09-11T11:12:48.682805Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=12 initial_horizon=14734 selected_horizon=14734 endpoint_lower_bound=7424 lower_bound_gap=7310 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.721019Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=12 tile=938 row_words=177 horizon=14734 2026-09-11T11:12:48.845540Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=0 2026-09-11T11:12:48.886480Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=0 transfers=7290 maximum_identical_destinations=1 2026-09-11T11:12:48.886507Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=0 initial_horizon=8086 selected_horizon=8086 endpoint_lower_bound=5888 lower_bound_gap=2198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:48.901173Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=0 tile=79 row_words=273 horizon=8086 2026-09-11T11:12:48.941870Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=31 transfers=4374 maximum_identical_destinations=1 2026-09-11T11:12:48.941917Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=31 initial_horizon=13029 selected_horizon=13029 endpoint_lower_bound=7872 lower_bound_gap=5157 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:48.942138Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=42 2026-09-11T11:12:48.959137Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=31 tile=139 row_words=247 horizon=13029 2026-09-11T11:12:48.973289Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=42 transfers=51925 maximum_identical_destinations=1 2026-09-11T11:12:48.973317Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=42 initial_horizon=1090 selected_horizon=1090 endpoint_lower_bound=576 lower_bound_gap=514 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.003151Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=42 tile=850 row_words=106 horizon=1090 2026-09-11T11:12:49.028861Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=43 2026-09-11T11:12:49.029429Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=43 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:49.029441Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=43 initial_horizon=2798 selected_horizon=2798 endpoint_lower_bound=2304 lower_bound_gap=494 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.030933Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=43 tile=148 row_words=24 horizon=2798 2026-09-11T11:12:49.042267Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=22 2026-09-11T11:12:49.045351Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=44 2026-09-11T11:12:49.045885Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=44 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:49.045895Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=44 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.046996Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=44 tile=171 row_words=17 horizon=2921 2026-09-11T11:12:49.094065Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=22 transfers=8748 maximum_identical_destinations=1 2026-09-11T11:12:49.094121Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=22 initial_horizon=9329 selected_horizon=9329 endpoint_lower_bound=7008 lower_bound_gap=2321 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.111559Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=45 2026-09-11T11:12:49.115939Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=22 tile=139 row_words=201 horizon=9329 2026-09-11T11:12:49.123390Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=46 2026-09-11T11:12:49.139947Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=32 2026-09-11T11:12:49.146314Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=32 transfers=9677 maximum_identical_destinations=1 2026-09-11T11:12:49.146334Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=32 initial_horizon=8957 selected_horizon=8957 endpoint_lower_bound=7680 lower_bound_gap=1277 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.152602Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=32 tile=86 row_words=143 horizon=8957 2026-09-11T11:12:49.154766Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=23 2026-09-11T11:12:49.155550Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=23 transfers=1725 maximum_identical_destinations=1 2026-09-11T11:12:49.155569Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=23 initial_horizon=1431 selected_horizon=1431 endpoint_lower_bound=1152 lower_bound_gap=279 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.157293Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=23 tile=235 row_words=22 horizon=1431 2026-09-11T11:12:49.165839Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=24 2026-09-11T11:12:49.169438Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=33 2026-09-11T11:12:49.316960Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=34 transfers=8694 maximum_identical_destinations=1 2026-09-11T11:12:49.316995Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=34 initial_horizon=13228 selected_horizon=13228 endpoint_lower_bound=7872 lower_bound_gap=5356 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:49.321983Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=34 tile=643 row_words=39 horizon=13228 2026-09-11T11:12:49.326427Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=1 2026-09-11T11:12:49.338433Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=25 2026-09-11T11:12:49.343118Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=1 transfers=42560 maximum_identical_destinations=1 2026-09-11T11:12:49.343135Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=1 initial_horizon=710 selected_horizon=710 endpoint_lower_bound=512 lower_bound_gap=198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.348425Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=25 transfers=20656 maximum_identical_destinations=1 2026-09-11T11:12:49.348444Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=25 initial_horizon=7526 selected_horizon=7526 endpoint_lower_bound=3648 lower_bound_gap=3878 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.352238Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=1 tile=262 row_words=172 horizon=710 2026-09-11T11:12:49.360709Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=25 tile=860 row_words=87 horizon=7526 2026-09-11T11:12:49.363832Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=2 2026-09-11T11:12:49.459948Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=3 2026-09-11T11:12:49.465444Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=3 transfers=16520 maximum_identical_destinations=1 2026-09-11T11:12:49.465461Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=3 initial_horizon=6258 selected_horizon=6258 endpoint_lower_bound=3040 lower_bound_gap=3218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.471762Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=3 tile=673 row_words=71 horizon=6258 2026-09-11T11:12:49.607656Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=38 transfers=19683 maximum_identical_destinations=1 2026-09-11T11:12:49.607711Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=38 initial_horizon=17658 selected_horizon=17658 endpoint_lower_bound=9760 lower_bound_gap=7898 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:49.624702Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=38 tile=481 row_words=494 horizon=17658 2026-09-11T11:12:49.651116Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=47 2026-09-11T11:12:49.679193Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=47 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:12:49.679233Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=47 initial_horizon=9028 selected_horizon=9028 endpoint_lower_bound=5248 lower_bound_gap=3780 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.688793Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=47 tile=171 row_words=133 horizon=9028 2026-09-11T11:12:49.711888Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=48 2026-09-11T11:12:49.712503Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=48 transfers=1295 maximum_identical_destinations=1 2026-09-11T11:12:49.712524Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=48 initial_horizon=4249 selected_horizon=4249 endpoint_lower_bound=4096 lower_bound_gap=153 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:49.713494Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=48 tile=152 row_words=16 horizon=4249 2026-09-11T11:12:49.721972Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=49 2026-09-11T11:12:50.112459Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=50 2026-09-11T11:12:50.136377Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=50 transfers=45090 maximum_identical_destinations=1 2026-09-11T11:12:50.136402Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=50 initial_horizon=11314 selected_horizon=11314 endpoint_lower_bound=6048 lower_bound_gap=5266 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.159700Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=4 2026-09-11T11:12:50.171434Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=50 tile=1084 row_words=180 horizon=11314 2026-09-11T11:12:50.187765Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=4 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:12:50.187788Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=4 initial_horizon=1111 selected_horizon=1111 endpoint_lower_bound=576 lower_bound_gap=535 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.213857Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=4 tile=937 row_words=127 horizon=1111 2026-09-11T11:12:50.261505Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=26 2026-09-11T11:12:50.267919Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=5 2026-09-11T11:12:50.268926Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=5 transfers=2773 maximum_identical_destinations=1 2026-09-11T11:12:50.268956Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=5 initial_horizon=1094 selected_horizon=1094 endpoint_lower_bound=288 lower_bound_gap=806 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.272256Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=5 tile=1432 row_words=15 horizon=1094 2026-09-11T11:12:50.295285Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=26 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:12:50.295319Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=26 initial_horizon=1122 selected_horizon=1122 endpoint_lower_bound=576 lower_bound_gap=546 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.297162Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=6 2026-09-11T11:12:50.297950Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=6 transfers=2193 maximum_identical_destinations=1 2026-09-11T11:12:50.297964Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=6 initial_horizon=3082 selected_horizon=3082 endpoint_lower_bound=2304 lower_bound_gap=778 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.299343Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=6 tile=70 row_words=31 horizon=3082 2026-09-11T11:12:50.324277Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=26 tile=1229 row_words=126 horizon=1122 2026-09-11T11:12:50.351447Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=27 2026-09-11T11:12:50.352138Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=27 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:50.352155Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=27 initial_horizon=3101 selected_horizon=3101 endpoint_lower_bound=2304 lower_bound_gap=797 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.354124Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=27 tile=181 row_words=22 horizon=3101 2026-09-11T11:12:50.358897Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=7 2026-09-11T11:12:50.368350Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=28 2026-09-11T11:12:50.368875Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=28 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:50.368885Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=28 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.369973Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=28 tile=171 row_words=17 horizon=2921 2026-09-11T11:12:50.371400Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=8 2026-09-11T11:12:50.444433Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=29 2026-09-11T11:12:50.456141Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=30 2026-09-11T11:12:50.462888Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=81 2026-09-11T11:12:50.467151Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=82 2026-09-11T11:12:50.472623Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=83 2026-09-11T11:12:50.651565Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=59 2026-09-11T11:12:50.656531Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=59 transfers=11520 maximum_identical_destinations=1 2026-09-11T11:12:50.656558Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=59 initial_horizon=2410 selected_horizon=2410 endpoint_lower_bound=2304 lower_bound_gap=106 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.662771Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=59 tile=168 row_words=108 horizon=2410 2026-09-11T11:12:50.676660Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=80 2026-09-11T11:12:50.677156Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=80 transfers=1368 maximum_identical_destinations=1 2026-09-11T11:12:50.677168Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=80 initial_horizon=406 selected_horizon=406 endpoint_lower_bound=304 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:50.678019Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=80 tile=47 row_words=25 horizon=406 2026-09-11T11:12:50.708543Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=15 transfers=2184 maximum_identical_destinations=1 2026-09-11T11:12:50.708568Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=15 initial_horizon=9193 selected_horizon=9193 endpoint_lower_bound=6912 lower_bound_gap=2281 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:50.710096Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=15 tile=145 row_words=53 horizon=9193 2026-09-11T11:12:51.840228Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=9 2026-09-11T11:12:51.907480Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=13 2026-09-11T11:12:51.929479Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=9 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:12:51.929514Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=9 initial_horizon=17780 selected_horizon=17780 endpoint_lower_bound=15616 lower_bound_gap=2164 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:51.947712Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=9 tile=105 row_words=287 horizon=17780 2026-09-11T11:12:51.983167Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=13 transfers=155252 maximum_identical_destinations=1 2026-09-11T11:12:51.983192Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=13 initial_horizon=4487 selected_horizon=4487 endpoint_lower_bound=1728 lower_bound_gap=2759 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:52.013737Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=51 2026-09-11T11:12:52.070460Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=51 transfers=103635 maximum_identical_destinations=1 2026-09-11T11:12:52.070499Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=51 initial_horizon=1973 selected_horizon=1973 endpoint_lower_bound=1152 lower_bound_gap=821 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:52.080664Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=58 transfers=68951 maximum_identical_destinations=1 2026-09-11T11:12:52.080698Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=58 initial_horizon=16411 selected_horizon=16411 endpoint_lower_bound=7996 lower_bound_gap=8415 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:52.083358Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=13 tile=606 row_words=264 horizon=4487 2026-09-11T11:12:52.125559Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=14 2026-09-11T11:12:52.126082Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=14 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:12:52.126094Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=14 initial_horizon=5246 selected_horizon=5246 endpoint_lower_bound=3456 lower_bound_gap=1790 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:52.127311Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=14 tile=354 row_words=13 horizon=5246 2026-09-11T11:12:52.139873Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=40 2026-09-11T11:12:52.144987Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=51 tile=239 row_words=188 horizon=1973 2026-09-11T11:12:52.149408Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=58 tile=71 row_words=2079 horizon=16411 2026-09-11T11:12:53.159576Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=20 2026-09-11T11:12:53.187724Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=20 transfers=61520 maximum_identical_destinations=1 2026-09-11T11:12:53.187761Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=20 initial_horizon=5858 selected_horizon=5858 endpoint_lower_bound=3640 lower_bound_gap=2218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:53.219105Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=20 tile=730 row_words=166 horizon=5858 2026-09-11T11:12:53.401388Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=35 2026-09-11T11:12:53.512264Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=35 transfers=195689 maximum_identical_destinations=1 2026-09-11T11:12:53.512321Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=35 initial_horizon=4980 selected_horizon=4980 endpoint_lower_bound=2152 lower_bound_gap=2828 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:53.648325Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=35 tile=229 row_words=509 horizon=4980 2026-09-11T11:12:54.211950Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=18 transfers=66880 maximum_identical_destinations=1 2026-09-11T11:12:54.212005Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=18 initial_horizon=10633 selected_horizon=10633 endpoint_lower_bound=3640 lower_bound_gap=6993 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:54.230807Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=18 tile=363 row_words=285 horizon=10633 2026-09-11T11:12:54.964288Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=19 transfers=75104 maximum_identical_destinations=1 2026-09-11T11:12:54.964329Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=19 initial_horizon=19441 selected_horizon=19441 endpoint_lower_bound=8832 lower_bound_gap=10609 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:55.003415Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=19 tile=354 row_words=320 horizon=19441 2026-09-11T11:12:56.560469Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=17 2026-09-11T11:12:56.651396Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=17 transfers=32656 maximum_identical_destinations=1 2026-09-11T11:12:56.651447Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=17 initial_horizon=11564 selected_horizon=11564 endpoint_lower_bound=6192 lower_bound_gap=5372 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:12:56.721571Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=17 tile=557 row_words=648 horizon=11564 2026-09-11T11:12:56.793840Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=41 transfers=112284 maximum_identical_destinations=1 2026-09-11T11:12:56.793886Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=41 initial_horizon=27456 selected_horizon=27456 endpoint_lower_bound=9072 lower_bound_gap=18384 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:56.873579Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=41 tile=715 row_words=388 horizon=27456 2026-09-11T11:12:58.056506Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=79 transfers=301599 maximum_identical_destinations=1 2026-09-11T11:12:58.056551Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=79 initial_horizon=1809 selected_horizon=1809 endpoint_lower_bound=896 lower_bound_gap=913 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:12:58.266026Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=79 tile=1361 row_words=459 horizon=1809 2026-09-11T11:13:01.294337Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=16 transfers=127912 maximum_identical_destinations=1 2026-09-11T11:13:01.294383Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=16 initial_horizon=16534 selected_horizon=16534 endpoint_lower_bound=6912 lower_bound_gap=9622 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:13:01.488959Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=16 tile=67 row_words=2760 horizon=16534 2026-09-11T11:13:05.221010Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=39 transfers=302920 maximum_identical_destinations=1 2026-09-11T11:13:05.221060Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=39 initial_horizon=8691 selected_horizon=8691 endpoint_lower_bound=5120 lower_bound_gap=3571 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:13:05.463239Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=39 tile=224 row_words=1564 horizon=8691 2026-09-11T11:13:05.577798Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: package build phase finished phase="lower_exchanges" elapsed_ms=17494 success=true 2026-09-11T11:13:08.027640Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=627185 2026-09-11T11:13:09.461985Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=589223 2026-09-11T11:13:10.836115Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=569941 2026-09-11T11:13:12.191081Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=569066 2026-09-11T11:13:13.574423Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=554918 2026-09-11T11:13:14.964335Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=541507 2026-09-11T11:13:16.330991Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=555120 2026-09-11T11:13:17.291363Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: package build phase finished phase="optimize_exchange_placement" elapsed_ms=11713 success=true 2026-09-11T11:13:17.312537Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: costed final placed program final_cycles=17770665 final_exchange=8594412 2026-09-11T11:13:18.968551Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="prepare_tile_code"}: package build phase finished phase="prepare_tile_code" elapsed_ms=286 success=true 2026-09-11T11:13:19.075877Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="emit_tile_code"}: package build phase finished phase="emit_tile_code" elapsed_ms=107 success=true 2026-09-11T11:13:19.748278Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="build_tile_images"}: package build phase finished phase="build_tile_images" elapsed_ms=629 success=true 2026-09-11T11:13:20.219436Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: validated canonical baseline cycles=17770665 2026-09-11T11:13:33.244942Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened tile mappings by exchange resource load candidates=288 baseline_cycles=4562540 candidate_cycles=4562540 baseline_pressure=3481909 candidate_pressure=3481909 2026-09-11T11:14:38.328600Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-0-63155-0001.json scope="local-0" peak_step=46 effective_peak_bytes=508664 2026-09-11T11:14:45.123564Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=5505 expansion_and_footprint_ms=6794 estimated_row_bytes=81848 heuristic_row_bytes=140036 geometry_fragments_per_tile=9267 fragment_limit=16384 2026-09-11T11:14:45.841135Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: placed tile storage tiles=1472 shards=391104 elapsed_us=592326 2026-09-11T11:14:45.965446Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=15 transfers=2184 maximum_identical_destinations=1 2026-09-11T11:14:45.965481Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=15 initial_horizon=8158 selected_horizon=8158 endpoint_lower_bound=6912 lower_bound_gap=1246 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:45.966800Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=15 tile=167 row_words=51 horizon=8158 2026-09-11T11:14:45.982387Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=10 2026-09-11T11:14:45.984931Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=10 transfers=2589 maximum_identical_destinations=1 2026-09-11T11:14:45.984979Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=10 initial_horizon=6357 selected_horizon=6357 endpoint_lower_bound=2048 lower_bound_gap=4309 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:45.985926Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=35 transfers=2820 maximum_identical_destinations=1 2026-09-11T11:14:45.985990Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=35 initial_horizon=3437 selected_horizon=3437 endpoint_lower_bound=1076 lower_bound_gap=2361 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:45.989135Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=10 tile=431 row_words=23 horizon=6357 2026-09-11T11:14:45.990960Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=35 tile=1420 row_words=15 horizon=3437 2026-09-11T11:14:46.000892Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=11 2026-09-11T11:14:46.030028Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=5 2026-09-11T11:14:46.031251Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=5 transfers=2773 maximum_identical_destinations=1 2026-09-11T11:14:46.031268Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=5 initial_horizon=1094 selected_horizon=1094 endpoint_lower_bound=288 lower_bound_gap=806 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:46.031287Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=36 transfers=2198 maximum_identical_destinations=1 2026-09-11T11:14:46.031311Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=36 initial_horizon=4406 selected_horizon=4406 endpoint_lower_bound=2152 lower_bound_gap=2254 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.033708Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=5 tile=1432 row_words=15 horizon=1094 2026-09-11T11:14:46.034315Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=36 tile=169 row_words=20 horizon=4406 2026-09-11T11:14:46.054731Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=6 2026-09-11T11:14:46.055621Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=6 transfers=2193 maximum_identical_destinations=1 2026-09-11T11:14:46.055632Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=6 initial_horizon=3082 selected_horizon=3082 endpoint_lower_bound=2304 lower_bound_gap=778 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:46.057471Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=6 tile=70 row_words=31 horizon=3082 2026-09-11T11:14:46.127013Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=7 2026-09-11T11:14:46.140069Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=8 2026-09-11T11:14:46.402899Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=30 transfers=4374 maximum_identical_destinations=1 2026-09-11T11:14:46.402949Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=30 initial_horizon=10088 selected_horizon=10088 endpoint_lower_bound=7872 lower_bound_gap=2216 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.414993Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=30 tile=136 row_words=234 horizon=10088 2026-09-11T11:14:46.568616Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=12 2026-09-11T11:14:46.596465Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=12 transfers=50544 maximum_identical_destinations=1 2026-09-11T11:14:46.596503Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=12 initial_horizon=14734 selected_horizon=14734 endpoint_lower_bound=7424 lower_bound_gap=7310 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:46.620784Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=41 transfers=51925 maximum_identical_destinations=1 2026-09-11T11:14:46.620817Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=41 initial_horizon=1090 selected_horizon=1090 endpoint_lower_bound=576 lower_bound_gap=514 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.629883Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=31 transfers=9677 maximum_identical_destinations=1 2026-09-11T11:14:46.629913Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=31 initial_horizon=8957 selected_horizon=8957 endpoint_lower_bound=7680 lower_bound_gap=1277 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.638777Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=31 tile=86 row_words=143 horizon=8957 2026-09-11T11:14:46.642601Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=41 tile=850 row_words=106 horizon=1090 2026-09-11T11:14:46.645658Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=12 tile=938 row_words=177 horizon=14734 2026-09-11T11:14:46.665421Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=42 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:46.665438Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=42 initial_horizon=2798 selected_horizon=2798 endpoint_lower_bound=2304 lower_bound_gap=494 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.666747Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=42 tile=148 row_words=24 horizon=2798 2026-09-11T11:14:46.678675Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=43 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:46.678695Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=43 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.679687Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=43 tile=171 row_words=17 horizon=2921 2026-09-11T11:14:46.742492Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=33 transfers=8694 maximum_identical_destinations=1 2026-09-11T11:14:46.742523Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=33 initial_horizon=17085 selected_horizon=17085 endpoint_lower_bound=7872 lower_bound_gap=9213 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.749096Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=33 tile=643 row_words=39 horizon=17085 2026-09-11T11:14:46.802740Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=0 2026-09-11T11:14:46.847065Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=0 transfers=7290 maximum_identical_destinations=1 2026-09-11T11:14:46.847087Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=0 initial_horizon=8086 selected_horizon=8086 endpoint_lower_bound=5888 lower_bound_gap=2198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:46.865198Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=0 tile=79 row_words=273 horizon=8086 2026-09-11T11:14:46.977868Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=37 transfers=19683 maximum_identical_destinations=1 2026-09-11T11:14:46.977910Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=37 initial_horizon=11954 selected_horizon=11954 endpoint_lower_bound=9760 lower_bound_gap=2194 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:46.993887Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=37 tile=481 row_words=544 horizon=11954 2026-09-11T11:14:47.003069Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=20 2026-09-11T11:14:47.037972Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=20 transfers=61520 maximum_identical_destinations=1 2026-09-11T11:14:47.038022Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=20 initial_horizon=5858 selected_horizon=5858 endpoint_lower_bound=3640 lower_bound_gap=2218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.073321Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=20 tile=730 row_words=166 horizon=5858 2026-09-11T11:14:47.179779Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=21 2026-09-11T11:14:47.187136Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=21 transfers=11656 maximum_identical_destinations=1 2026-09-11T11:14:47.187160Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=21 initial_horizon=3952 selected_horizon=3952 endpoint_lower_bound=2304 lower_bound_gap=1648 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.193170Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=21 tile=175 row_words=138 horizon=3952 2026-09-11T11:14:47.225028Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=22 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:14:47.225059Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=22 initial_horizon=1432 selected_horizon=1432 endpoint_lower_bound=1152 lower_bound_gap=280 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:47.226523Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=22 tile=283 row_words=16 horizon=1432 2026-09-11T11:14:47.312819Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=1 2026-09-11T11:14:47.326435Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=24 transfers=5472 maximum_identical_destinations=1 2026-09-11T11:14:47.326467Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=24 initial_horizon=1720 selected_horizon=1720 endpoint_lower_bound=960 lower_bound_gap=760 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:47.330222Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=24 tile=1118 row_words=26 horizon=1720 2026-09-11T11:14:47.331496Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=1 transfers=42560 maximum_identical_destinations=1 2026-09-11T11:14:47.331510Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=1 initial_horizon=710 selected_horizon=710 endpoint_lower_bound=512 lower_bound_gap=198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.341179Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=1 tile=262 row_words=172 horizon=710 2026-09-11T11:14:47.352703Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=2 2026-09-11T11:14:47.483625Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=3 2026-09-11T11:14:47.493286Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=3 transfers=16520 maximum_identical_destinations=1 2026-09-11T11:14:47.493311Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=3 initial_horizon=6258 selected_horizon=6258 endpoint_lower_bound=3040 lower_bound_gap=3218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.503584Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=3 tile=673 row_words=71 horizon=6258 2026-09-11T11:14:47.533981Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=46 candidates=6561 ordinary_horizon=9028 paired_horizon=46080 use_paired=false 2026-09-11T11:14:47.563533Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=46 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:14:47.563551Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=46 initial_horizon=9028 selected_horizon=9028 endpoint_lower_bound=5248 lower_bound_gap=3780 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:47.574037Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=46 tile=171 row_words=133 horizon=9028 2026-09-11T11:14:47.592590Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=47 transfers=1295 maximum_identical_destinations=1 2026-09-11T11:14:47.592609Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=47 initial_horizon=4249 selected_horizon=4249 endpoint_lower_bound=4096 lower_bound_gap=153 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:47.593338Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=47 tile=152 row_words=16 horizon=4249 2026-09-11T11:14:47.733297Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=9 2026-09-11T11:14:47.831147Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=9 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:14:47.831187Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=9 initial_horizon=17780 selected_horizon=17780 endpoint_lower_bound=15616 lower_bound_gap=2164 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.859553Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=9 tile=105 row_words=287 horizon=17780 2026-09-11T11:14:47.886882Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=14 2026-09-11T11:14:47.887533Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=14 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:47.887552Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=14 initial_horizon=5246 selected_horizon=5246 endpoint_lower_bound=3456 lower_bound_gap=1790 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:47.888843Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=14 tile=354 row_words=13 horizon=5246 2026-09-11T11:14:47.895265Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=49 transfers=45090 maximum_identical_destinations=1 2026-09-11T11:14:47.895291Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=49 initial_horizon=11314 selected_horizon=11314 endpoint_lower_bound=6048 lower_bound_gap=5266 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:47.915262Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=49 tile=1084 row_words=180 horizon=11314 2026-09-11T11:14:48.162922Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=4 2026-09-11T11:14:48.184566Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=4 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:14:48.184588Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=4 initial_horizon=1111 selected_horizon=1111 endpoint_lower_bound=576 lower_bound_gap=535 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:48.203158Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=4 tile=937 row_words=127 horizon=1111 2026-09-11T11:14:48.227480Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=63 candidates=17 ordinary_horizon=688 paired_horizon=1417 use_paired=false 2026-09-11T11:14:48.239418Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=64 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:14:48.239435Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=64 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.240527Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=64 tile=866 row_words=10 horizon=471 2026-09-11T11:14:48.249194Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=65 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:14:48.249223Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=65 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.249791Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=65 tile=47 row_words=23 horizon=374 2026-09-11T11:14:48.268068Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=69 candidates=32 ordinary_horizon=210 paired_horizon=1250 use_paired=false 2026-09-11T11:14:48.281638Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=71 candidates=35 ordinary_horizon=660 paired_horizon=2329 use_paired=false 2026-09-11T11:14:48.294257Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=25 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:14:48.294288Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=25 initial_horizon=1122 selected_horizon=1122 endpoint_lower_bound=576 lower_bound_gap=546 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.294549Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=72 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:14:48.294563Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=72 initial_horizon=1112 selected_horizon=1112 endpoint_lower_bound=896 lower_bound_gap=216 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.295798Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=72 tile=875 row_words=10 horizon=1112 2026-09-11T11:14:48.305292Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=73 transfers=1400 maximum_identical_destinations=1 2026-09-11T11:14:48.305303Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=73 initial_horizon=4006 selected_horizon=4006 endpoint_lower_bound=3920 lower_bound_gap=86 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.305913Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=73 tile=39 row_words=39 horizon=4006 2026-09-11T11:14:48.324917Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=25 tile=1229 row_words=126 horizon=1122 2026-09-11T11:14:48.326133Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=74 transfers=2151 maximum_identical_destinations=1 2026-09-11T11:14:48.326151Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=74 initial_horizon=183 selected_horizon=183 endpoint_lower_bound=64 lower_bound_gap=119 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.327124Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=74 tile=1105 row_words=39 horizon=183 2026-09-11T11:14:48.333882Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=75 transfers=1075 maximum_identical_destinations=1 2026-09-11T11:14:48.333895Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=75 initial_horizon=216 selected_horizon=216 endpoint_lower_bound=4 lower_bound_gap=212 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.334619Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=75 tile=46 row_words=9 horizon=216 2026-09-11T11:14:48.341517Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=76 transfers=1023 maximum_identical_destinations=1 2026-09-11T11:14:48.341528Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=76 initial_horizon=2206 selected_horizon=2206 endpoint_lower_bound=2148 lower_bound_gap=58 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.341974Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=76 tile=0 row_words=1028 horizon=2206 2026-09-11T11:14:48.354884Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=77 candidates=19 ordinary_horizon=2258 paired_horizon=2382 use_paired=false 2026-09-11T11:14:48.355808Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=26 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:48.355831Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=26 initial_horizon=3101 selected_horizon=3101 endpoint_lower_bound=2304 lower_bound_gap=797 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.357225Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=26 tile=181 row_words=22 horizon=3101 2026-09-11T11:14:48.372042Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=27 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:48.372061Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=27 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:48.373150Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=27 tile=171 row_words=17 horizon=2921 2026-09-11T11:14:49.251619Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=50 transfers=103635 maximum_identical_destinations=1 2026-09-11T11:14:49.251649Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=50 initial_horizon=1973 selected_horizon=1973 endpoint_lower_bound=1152 lower_bound_gap=821 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:49.292765Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=50 tile=239 row_words=188 horizon=1973 2026-09-11T11:14:49.322864Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=51 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:14:49.322887Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=51 initial_horizon=3513 selected_horizon=3513 endpoint_lower_bound=2304 lower_bound_gap=1209 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:49.323869Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=51 tile=355 row_words=13 horizon=3513 2026-09-11T11:14:49.361500Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: compared ordinary and paired exchange schedules phase=52 candidates=72 ordinary_horizon=175 paired_horizon=285 use_paired=false 2026-09-11T11:14:49.375158Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=53 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:14:49.375172Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=53 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:49.376380Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=53 tile=866 row_words=10 horizon=471 2026-09-11T11:14:49.385632Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=54 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:14:49.385645Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=54 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:49.386269Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=54 tile=47 row_words=23 horizon=374 2026-09-11T11:14:49.405427Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=56 transfers=1743 maximum_identical_destinations=1 2026-09-11T11:14:49.405443Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=56 initial_horizon=5892 selected_horizon=5892 endpoint_lower_bound=4644 lower_bound_gap=1248 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:49.406588Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=56 tile=14 row_words=59 horizon=5892 2026-09-11T11:14:49.846785Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=13 2026-09-11T11:14:49.933644Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=13 transfers=155252 maximum_identical_destinations=1 2026-09-11T11:14:49.933681Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=13 initial_horizon=4487 selected_horizon=4487 endpoint_lower_bound=1728 lower_bound_gap=2759 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:50.037345Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=13 tile=606 row_words=264 horizon=4487 2026-09-11T11:14:50.521451Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=57 transfers=68951 maximum_identical_destinations=1 2026-09-11T11:14:50.521486Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=57 initial_horizon=12646 selected_horizon=12646 endpoint_lower_bound=7996 lower_bound_gap=4650 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:50.574251Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=57 tile=70 row_words=2375 horizon=12646 2026-09-11T11:14:50.717090Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=58 transfers=11520 maximum_identical_destinations=1 2026-09-11T11:14:50.717123Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=58 initial_horizon=2410 selected_horizon=2410 endpoint_lower_bound=2304 lower_bound_gap=106 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:50.721786Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=58 tile=168 row_words=108 horizon=2410 2026-09-11T11:14:50.934718Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=18 transfers=66880 maximum_identical_destinations=1 2026-09-11T11:14:50.934758Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=18 initial_horizon=9632 selected_horizon=9632 endpoint_lower_bound=3640 lower_bound_gap=5992 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:50.963674Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=18 tile=363 row_words=282 horizon=9632 2026-09-11T11:14:51.001284Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=79 transfers=1368 maximum_identical_destinations=1 2026-09-11T11:14:51.001321Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=79 initial_horizon=406 selected_horizon=406 endpoint_lower_bound=304 lower_bound_gap=102 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:51.002272Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=79 tile=47 row_words=25 horizon=406 2026-09-11T11:14:51.115050Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=34 transfers=195689 maximum_identical_destinations=1 2026-09-11T11:14:51.115092Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=34 initial_horizon=4980 selected_horizon=4980 endpoint_lower_bound=2152 lower_bound_gap=2828 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:51.242367Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=34 tile=229 row_words=509 horizon=4980 2026-09-11T11:14:51.409351Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: reused exchange optimization after validating relocated rows phase=17 2026-09-11T11:14:51.496109Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=17 transfers=32656 maximum_identical_destinations=1 2026-09-11T11:14:51.496146Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=17 initial_horizon=11564 selected_horizon=11564 endpoint_lower_bound=6192 lower_bound_gap=5372 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:14:51.498453Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=40 transfers=112284 maximum_identical_destinations=1 2026-09-11T11:14:51.498480Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=40 initial_horizon=27323 selected_horizon=27323 endpoint_lower_bound=9072 lower_bound_gap=18251 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:51.553907Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=40 tile=715 row_words=396 horizon=27323 2026-09-11T11:14:51.564876Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=17 tile=557 row_words=648 horizon=11564 2026-09-11T11:14:53.073708Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=19 transfers=75104 maximum_identical_destinations=1 2026-09-11T11:14:53.073758Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=19 initial_horizon=19352 selected_horizon=19352 endpoint_lower_bound=8832 lower_bound_gap=10520 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:53.114507Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=19 tile=355 row_words=319 horizon=19352 2026-09-11T11:14:53.311343Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=16 transfers=127912 maximum_identical_destinations=1 2026-09-11T11:14:53.311376Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=16 initial_horizon=16401 selected_horizon=16401 endpoint_lower_bound=6912 lower_bound_gap=9489 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:53.430661Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=16 tile=79 row_words=2729 horizon=16401 2026-09-11T11:14:54.329419Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=78 transfers=301599 maximum_identical_destinations=1 2026-09-11T11:14:54.329463Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=78 initial_horizon=1508 selected_horizon=1508 endpoint_lower_bound=896 lower_bound_gap=612 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:54.575266Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=78 tile=1361 row_words=459 horizon=1508 2026-09-11T11:14:56.494909Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: prepared large physical exchange phase phase=38 transfers=302920 maximum_identical_destinations=1 2026-09-11T11:14:56.494949Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: optimized physical exchange schedule phase=38 initial_horizon=9424 selected_horizon=9424 endpoint_lower_bound=5120 lower_bound_gap=4304 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:14:56.719349Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: finished large physical exchange phase phase=38 tile=45 row_words=1573 horizon=9424 2026-09-11T11:14:56.876220Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="plan_kernels"}: package build phase finished phase="plan_kernels" elapsed_ms=75 success=true 2026-09-11T11:14:56.880839Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="compile_kernels"}: package build phase finished phase="compile_kernels" elapsed_ms=4 success=true 2026-09-11T11:14:56.888385Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="link_runtime"}: package build phase finished phase="link_runtime" elapsed_ms=0 success=true 2026-09-11T11:14:57.117215Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: exchange table and repeat patch storage exchange_table_bytes=48240 maximum_uncompressed_repeat_patch_bytes=324 maximum_elided_arithmetic_patch_bytes=324 2026-09-11T11:14:59.839076Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="size_tile_code"}: package build phase finished phase="size_tile_code" elapsed_ms=220 success=true 2026-09-11T11:14:59.839161Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: placing generated tile programs linked_end=385264 host_code_base=385264 host_code_bytes=9084 generated_code_bytes=16488 exchange_table_bytes=48240 executable_ranges=[(377228, 377232), (377972, 377976), (378716, 378720), (381116, 381120), (382276, 382280), (384292, 384296), (394416, 524288)] 2026-09-11T11:14:59.839196Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: allocated package support memory linked_end=385264 profile_bytes=1072 exchange_table_bytes=48240 host_code_bytes=9084 host_data_bytes=6280 generated_code_bytes=16488 code_address=394416 available_ranges=[(327680, 360448), (368488, 376832), (475136, 524288), (525360, 949168)] 2026-09-11T11:15:00.440120Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="place_storage"}: placed tile storage tiles=1472 shards=391104 elapsed_us=600840 2026-09-11T11:15:00.527259Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="place_storage"}: package build phase finished phase="place_storage" elapsed_ms=687 success=true 2026-09-11T11:15:00.539743Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=2 2026-09-11T11:15:00.558709Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=5 2026-09-11T11:15:00.560227Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=5 transfers=2773 maximum_identical_destinations=1 2026-09-11T11:15:00.560259Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=5 initial_horizon=1094 selected_horizon=1094 endpoint_lower_bound=288 lower_bound_gap=806 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:00.562893Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=5 tile=1432 row_words=15 horizon=1094 2026-09-11T11:15:00.568369Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=15 transfers=2184 maximum_identical_destinations=1 2026-09-11T11:15:00.568401Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=15 initial_horizon=7015 selected_horizon=7015 endpoint_lower_bound=6912 lower_bound_gap=103 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:00.569926Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=15 tile=167 row_words=50 horizon=7015 2026-09-11T11:15:00.585242Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=10 2026-09-11T11:15:00.586650Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=10 transfers=2589 maximum_identical_destinations=1 2026-09-11T11:15:00.586667Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=10 initial_horizon=6357 selected_horizon=6357 endpoint_lower_bound=2048 lower_bound_gap=4309 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:00.589339Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=10 tile=431 row_words=23 horizon=6357 2026-09-11T11:15:00.596051Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=6 2026-09-11T11:15:00.597043Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=6 transfers=2193 maximum_identical_destinations=1 2026-09-11T11:15:00.597059Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=6 initial_horizon=3082 selected_horizon=3082 endpoint_lower_bound=2304 lower_bound_gap=778 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:00.598860Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=6 tile=70 row_words=31 horizon=3082 2026-09-11T11:15:00.599637Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=11 2026-09-11T11:15:00.666515Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=7 2026-09-11T11:15:00.678748Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=8 2026-09-11T11:15:00.682712Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=3 2026-09-11T11:15:00.706592Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=3 transfers=16520 maximum_identical_destinations=1 2026-09-11T11:15:00.706624Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=3 initial_horizon=6258 selected_horizon=6258 endpoint_lower_bound=3040 lower_bound_gap=3218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:00.720954Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=3 tile=673 row_words=71 horizon=6258 2026-09-11T11:15:01.009840Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=12 2026-09-11T11:15:01.042464Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=12 transfers=50544 maximum_identical_destinations=1 2026-09-11T11:15:01.042506Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=12 initial_horizon=14734 selected_horizon=14734 endpoint_lower_bound=7424 lower_bound_gap=7310 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.092145Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=12 tile=938 row_words=177 horizon=14734 2026-09-11T11:15:01.222067Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=20 2026-09-11T11:15:01.249385Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=20 transfers=61520 maximum_identical_destinations=1 2026-09-11T11:15:01.249411Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=20 initial_horizon=5858 selected_horizon=5858 endpoint_lower_bound=3640 lower_bound_gap=2218 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.270821Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=20 tile=730 row_words=166 horizon=5858 2026-09-11T11:15:01.335076Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=21 2026-09-11T11:15:01.338600Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=21 transfers=11656 maximum_identical_destinations=1 2026-09-11T11:15:01.338618Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=21 initial_horizon=3952 selected_horizon=3952 endpoint_lower_bound=2304 lower_bound_gap=1648 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.341536Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=21 tile=175 row_words=138 horizon=3952 2026-09-11T11:15:01.356530Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=4 2026-09-11T11:15:01.361315Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=22 2026-09-11T11:15:01.361705Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=22 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:15:01.361715Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=22 initial_horizon=1432 selected_horizon=1432 endpoint_lower_bound=1152 lower_bound_gap=280 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.362721Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=22 tile=283 row_words=16 horizon=1432 2026-09-11T11:15:01.368886Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=23 2026-09-11T11:15:01.385697Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=4 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:15:01.385719Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=4 initial_horizon=1111 selected_horizon=1111 endpoint_lower_bound=576 lower_bound_gap=535 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.393823Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=41 2026-09-11T11:15:01.403412Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=4 tile=937 row_words=127 horizon=1111 2026-09-11T11:15:01.423244Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=24 2026-09-11T11:15:01.423304Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=14 2026-09-11T11:15:01.423677Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=14 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:01.423686Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=14 initial_horizon=5246 selected_horizon=5246 endpoint_lower_bound=3456 lower_bound_gap=1790 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.424549Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=14 tile=354 row_words=13 horizon=5246 2026-09-11T11:15:01.424934Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=24 transfers=5472 maximum_identical_destinations=1 2026-09-11T11:15:01.424945Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=24 initial_horizon=1720 selected_horizon=1720 endpoint_lower_bound=960 lower_bound_gap=760 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.426393Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=62 2026-09-11T11:15:01.427444Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=24 tile=1118 row_words=26 horizon=1720 2026-09-11T11:15:01.427612Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=41 transfers=51925 maximum_identical_destinations=1 2026-09-11T11:15:01.427637Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=41 initial_horizon=1090 selected_horizon=1090 endpoint_lower_bound=576 lower_bound_gap=514 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.432531Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=63 2026-09-11T11:15:01.443220Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=64 2026-09-11T11:15:01.443559Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=64 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:15:01.443566Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=64 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.444884Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=64 tile=866 row_words=10 horizon=471 2026-09-11T11:15:01.453894Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=65 2026-09-11T11:15:01.454222Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=65 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:15:01.454229Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=65 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.454492Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=41 tile=850 row_words=106 horizon=1090 2026-09-11T11:15:01.454832Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=65 tile=47 row_words=23 horizon=374 2026-09-11T11:15:01.459257Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=66 2026-09-11T11:15:01.463312Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=67 2026-09-11T11:15:01.464814Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=68 2026-09-11T11:15:01.470978Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=69 2026-09-11T11:15:01.471835Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=70 2026-09-11T11:15:01.478772Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=71 2026-09-11T11:15:01.481308Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=42 2026-09-11T11:15:01.481850Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=42 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:01.481859Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=42 initial_horizon=2798 selected_horizon=2798 endpoint_lower_bound=2304 lower_bound_gap=494 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.483671Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=42 tile=148 row_words=24 horizon=2798 2026-09-11T11:15:01.496935Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=72 2026-09-11T11:15:01.497340Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=72 transfers=1438 maximum_identical_destinations=1 2026-09-11T11:15:01.497350Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=72 initial_horizon=1112 selected_horizon=1112 endpoint_lower_bound=896 lower_bound_gap=216 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.498902Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=72 tile=875 row_words=10 horizon=1112 2026-09-11T11:15:01.505501Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=43 2026-09-11T11:15:01.506030Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=43 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:01.506042Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=43 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.507095Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=43 tile=171 row_words=17 horizon=2921 2026-09-11T11:15:01.509189Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=73 2026-09-11T11:15:01.509593Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=73 transfers=1400 maximum_identical_destinations=1 2026-09-11T11:15:01.509601Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=73 initial_horizon=4006 selected_horizon=4006 endpoint_lower_bound=3920 lower_bound_gap=86 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.510280Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=73 tile=39 row_words=39 horizon=4006 2026-09-11T11:15:01.523979Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=74 2026-09-11T11:15:01.524610Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=74 transfers=2151 maximum_identical_destinations=1 2026-09-11T11:15:01.524630Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=74 initial_horizon=183 selected_horizon=183 endpoint_lower_bound=64 lower_bound_gap=119 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.525823Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=74 tile=1105 row_words=39 horizon=183 2026-09-11T11:15:01.532667Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=75 2026-09-11T11:15:01.532937Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=75 transfers=1075 maximum_identical_destinations=1 2026-09-11T11:15:01.532943Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=75 initial_horizon=216 selected_horizon=216 endpoint_lower_bound=4 lower_bound_gap=212 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.533674Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=75 tile=46 row_words=9 horizon=216 2026-09-11T11:15:01.541047Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=76 2026-09-11T11:15:01.541315Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=76 transfers=1023 maximum_identical_destinations=1 2026-09-11T11:15:01.541323Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=76 initial_horizon=2206 selected_horizon=2206 endpoint_lower_bound=2148 lower_bound_gap=58 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.541874Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=76 tile=0 row_words=1028 horizon=2206 2026-09-11T11:15:01.549316Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=77 2026-09-11T11:15:01.570755Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=44 2026-09-11T11:15:01.581548Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=45 2026-09-11T11:15:01.802642Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=0 2026-09-11T11:15:01.862804Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=0 transfers=7290 maximum_identical_destinations=1 2026-09-11T11:15:01.862832Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=0 initial_horizon=8086 selected_horizon=8086 endpoint_lower_bound=5888 lower_bound_gap=2198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:01.885185Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=0 tile=79 row_words=273 horizon=8086 2026-09-11T11:15:02.058293Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=25 2026-09-11T11:15:02.094900Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=25 transfers=51948 maximum_identical_destinations=1 2026-09-11T11:15:02.094931Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=25 initial_horizon=1122 selected_horizon=1122 endpoint_lower_bound=576 lower_bound_gap=546 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.102645Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=46 2026-09-11T11:15:02.117458Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=25 tile=1229 row_words=126 horizon=1122 2026-09-11T11:15:02.126717Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=46 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:15:02.126748Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=46 initial_horizon=9028 selected_horizon=9028 endpoint_lower_bound=5248 lower_bound_gap=3780 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.135558Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=46 tile=171 row_words=133 horizon=9028 2026-09-11T11:15:02.140145Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=26 2026-09-11T11:15:02.140600Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=26 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:02.140609Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=26 initial_horizon=3101 selected_horizon=3101 endpoint_lower_bound=2304 lower_bound_gap=797 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.142085Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=26 tile=181 row_words=22 horizon=3101 2026-09-11T11:15:02.153178Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=27 2026-09-11T11:15:02.153579Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=27 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:02.153591Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=27 initial_horizon=2921 selected_horizon=2921 endpoint_lower_bound=2304 lower_bound_gap=617 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.154037Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=47 2026-09-11T11:15:02.154510Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=47 transfers=1295 maximum_identical_destinations=1 2026-09-11T11:15:02.154527Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=47 initial_horizon=4249 selected_horizon=4249 endpoint_lower_bound=4096 lower_bound_gap=153 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.154547Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=27 tile=171 row_words=17 horizon=2921 2026-09-11T11:15:02.155492Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=47 tile=152 row_words=16 horizon=4249 2026-09-11T11:15:02.164608Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=48 2026-09-11T11:15:02.176458Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=9 2026-09-11T11:15:02.199004Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=28 2026-09-11T11:15:02.208670Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=29 2026-09-11T11:15:02.265446Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=9 transfers=6561 maximum_identical_destinations=1 2026-09-11T11:15:02.265492Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=9 initial_horizon=17780 selected_horizon=17780 endpoint_lower_bound=15616 lower_bound_gap=2164 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.292597Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=9 tile=105 row_words=287 horizon=17780 2026-09-11T11:15:02.334295Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=35 2026-09-11T11:15:02.335599Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=35 transfers=2820 maximum_identical_destinations=1 2026-09-11T11:15:02.335617Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=35 initial_horizon=3437 selected_horizon=3437 endpoint_lower_bound=1076 lower_bound_gap=2361 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.338336Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=35 tile=1420 row_words=15 horizon=3437 2026-09-11T11:15:02.360962Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=36 2026-09-11T11:15:02.361822Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=36 transfers=2198 maximum_identical_destinations=1 2026-09-11T11:15:02.361837Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=36 initial_horizon=4406 selected_horizon=4406 endpoint_lower_bound=2152 lower_bound_gap=2254 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.363959Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=36 tile=169 row_words=20 horizon=4406 2026-09-11T11:15:02.453107Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=49 2026-09-11T11:15:02.472161Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=49 transfers=45090 maximum_identical_destinations=1 2026-09-11T11:15:02.472185Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=49 initial_horizon=11314 selected_horizon=11314 endpoint_lower_bound=6048 lower_bound_gap=5266 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.477845Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=30 2026-09-11T11:15:02.492108Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=49 tile=1084 row_words=180 horizon=11314 2026-09-11T11:15:02.495710Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=1 2026-09-11T11:15:02.495931Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=30 transfers=4374 maximum_identical_destinations=1 2026-09-11T11:15:02.495946Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=30 initial_horizon=10088 selected_horizon=10088 endpoint_lower_bound=7872 lower_bound_gap=2216 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.504172Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=30 tile=136 row_words=234 horizon=10088 2026-09-11T11:15:02.525313Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=1 transfers=42560 maximum_identical_destinations=1 2026-09-11T11:15:02.525352Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=1 initial_horizon=710 selected_horizon=710 endpoint_lower_bound=512 lower_bound_gap=198 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.546196Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=1 tile=262 row_words=172 horizon=710 2026-09-11T11:15:02.609561Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=31 2026-09-11T11:15:02.614434Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=31 transfers=9677 maximum_identical_destinations=1 2026-09-11T11:15:02.614453Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=31 initial_horizon=8957 selected_horizon=8957 endpoint_lower_bound=7680 lower_bound_gap=1277 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:02.618455Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=31 tile=86 row_words=143 horizon=8957 2026-09-11T11:15:02.629445Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=32 2026-09-11T11:15:02.730774Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=33 transfers=8694 maximum_identical_destinations=1 2026-09-11T11:15:02.730807Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=33 initial_horizon=18402 selected_horizon=18402 endpoint_lower_bound=7872 lower_bound_gap=10530 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:02.735344Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=33 tile=643 row_words=39 horizon=18402 2026-09-11T11:15:03.054726Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=37 2026-09-11T11:15:03.118299Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=37 transfers=19683 maximum_identical_destinations=1 2026-09-11T11:15:03.118340Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=37 initial_horizon=11954 selected_horizon=11954 endpoint_lower_bound=9760 lower_bound_gap=2194 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.136147Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=37 tile=481 row_words=544 horizon=11954 2026-09-11T11:15:03.610168Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=17 2026-09-11T11:15:03.698852Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=17 transfers=32656 maximum_identical_destinations=1 2026-09-11T11:15:03.698898Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=17 initial_horizon=11564 selected_horizon=11564 endpoint_lower_bound=6192 lower_bound_gap=5372 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.765472Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=17 tile=557 row_words=648 horizon=11564 2026-09-11T11:15:03.774624Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=50 2026-09-11T11:15:03.810748Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=39 2026-09-11T11:15:03.825195Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=50 transfers=103635 maximum_identical_destinations=1 2026-09-11T11:15:03.825232Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=50 initial_horizon=1973 selected_horizon=1973 endpoint_lower_bound=1152 lower_bound_gap=821 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.864931Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=50 tile=239 row_words=188 horizon=1973 2026-09-11T11:15:03.903751Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=51 2026-09-11T11:15:03.904363Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=51 transfers=1457 maximum_identical_destinations=1 2026-09-11T11:15:03.904379Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=51 initial_horizon=3513 selected_horizon=3513 endpoint_lower_bound=2304 lower_bound_gap=1209 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.905880Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=51 tile=355 row_words=13 horizon=3513 2026-09-11T11:15:03.930714Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=52 2026-09-11T11:15:03.946547Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=53 2026-09-11T11:15:03.947050Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=53 transfers=1294 maximum_identical_destinations=1 2026-09-11T11:15:03.947071Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=53 initial_horizon=471 selected_horizon=471 endpoint_lower_bound=256 lower_bound_gap=215 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.948867Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=53 tile=866 row_words=10 horizon=471 2026-09-11T11:15:03.964610Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=54 2026-09-11T11:15:03.965329Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=54 transfers=1224 maximum_identical_destinations=1 2026-09-11T11:15:03.965347Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=54 initial_horizon=374 selected_horizon=374 endpoint_lower_bound=272 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.967042Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=54 tile=47 row_words=23 horizon=374 2026-09-11T11:15:03.971792Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=55 2026-09-11T11:15:03.981947Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=56 2026-09-11T11:15:03.982426Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=56 transfers=1743 maximum_identical_destinations=1 2026-09-11T11:15:03.982435Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=56 initial_horizon=5892 selected_horizon=5892 endpoint_lower_bound=4644 lower_bound_gap=1248 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:03.983473Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=56 tile=14 row_words=59 horizon=5892 2026-09-11T11:15:04.215725Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=13 2026-09-11T11:15:04.302932Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=13 transfers=155252 maximum_identical_destinations=1 2026-09-11T11:15:04.302973Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=13 initial_horizon=4487 selected_horizon=4487 endpoint_lower_bound=1728 lower_bound_gap=2759 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:04.407820Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=13 tile=606 row_words=264 horizon=4487 2026-09-11T11:15:04.447296Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=80 2026-09-11T11:15:04.455423Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=81 2026-09-11T11:15:04.461664Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=82 2026-09-11T11:15:04.473892Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=79 2026-09-11T11:15:04.474417Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=79 transfers=1368 maximum_identical_destinations=1 2026-09-11T11:15:04.474430Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=79 initial_horizon=406 selected_horizon=406 endpoint_lower_bound=304 lower_bound_gap=102 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:04.475350Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=79 tile=47 row_words=25 horizon=406 2026-09-11T11:15:05.006143Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=18 transfers=66880 maximum_identical_destinations=1 2026-09-11T11:15:05.006199Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=18 initial_horizon=9594 selected_horizon=9594 endpoint_lower_bound=3640 lower_bound_gap=5954 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:05.052084Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=18 tile=363 row_words=285 horizon=9594 2026-09-11T11:15:05.063165Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=57 2026-09-11T11:15:05.087063Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=59 2026-09-11T11:15:05.091294Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=60 2026-09-11T11:15:05.091576Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=57 transfers=68951 maximum_identical_destinations=1 2026-09-11T11:15:05.091657Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=57 initial_horizon=12646 selected_horizon=12646 endpoint_lower_bound=7996 lower_bound_gap=4650 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:05.094101Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=61 2026-09-11T11:15:05.172289Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=57 tile=70 row_words=2375 horizon=12646 2026-09-11T11:15:05.296971Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=58 2026-09-11T11:15:05.301180Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=58 transfers=11520 maximum_identical_destinations=1 2026-09-11T11:15:05.301209Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=58 initial_horizon=2410 selected_horizon=2410 endpoint_lower_bound=2304 lower_bound_gap=106 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:05.305566Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=58 tile=168 row_words=108 horizon=2410 2026-09-11T11:15:05.739513Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=40 transfers=112284 maximum_identical_destinations=1 2026-09-11T11:15:05.739556Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=40 initial_horizon=27456 selected_horizon=27456 endpoint_lower_bound=9072 lower_bound_gap=18384 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:05.824193Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=40 tile=712 row_words=400 horizon=27456 2026-09-11T11:15:05.979013Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=16 2026-09-11T11:15:06.051871Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=16 transfers=127912 maximum_identical_destinations=1 2026-09-11T11:15:06.051909Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=16 initial_horizon=16401 selected_horizon=16401 endpoint_lower_bound=6912 lower_bound_gap=9489 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:06.235194Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=16 tile=79 row_words=2729 horizon=16401 2026-09-11T11:15:06.783255Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=34 2026-09-11T11:15:06.893301Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=34 transfers=195689 maximum_identical_destinations=1 2026-09-11T11:15:06.893340Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=34 initial_horizon=4980 selected_horizon=4980 endpoint_lower_bound=2152 lower_bound_gap=2828 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:07.029970Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=34 tile=229 row_words=509 horizon=4980 2026-09-11T11:15:07.159183Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=78 2026-09-11T11:15:07.308546Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=78 transfers=301599 maximum_identical_destinations=1 2026-09-11T11:15:07.308587Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=78 initial_horizon=1508 selected_horizon=1508 endpoint_lower_bound=896 lower_bound_gap=612 selected_kind="reused" neighborhood_improvements=0 2026-09-11T11:15:07.377551Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=19 transfers=75104 maximum_identical_destinations=1 2026-09-11T11:15:07.377593Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=19 initial_horizon=19352 selected_horizon=19352 endpoint_lower_bound=8832 lower_bound_gap=10520 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:07.418582Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=19 tile=355 row_words=319 horizon=19352 2026-09-11T11:15:07.567744Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=78 tile=1361 row_words=459 horizon=1508 2026-09-11T11:15:20.549484Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=38 transfers=302920 maximum_identical_destinations=1 2026-09-11T11:15:20.549576Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=38 initial_horizon=9424 selected_horizon=9424 endpoint_lower_bound=5120 lower_bound_gap=4304 selected_kind="compact-streams" neighborhood_improvements=0 2026-09-11T11:15:20.830416Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=38 tile=1 row_words=1578 horizon=9424 2026-09-11T11:15:20.905065Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="lower_exchanges"}: package build phase finished phase="lower_exchanges" elapsed_ms=20377 success=true 2026-09-11T11:15:22.798347Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=502886 2026-09-11T11:15:24.136587Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=542576 2026-09-11T11:15:25.576903Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=628051 2026-09-11T11:15:26.892981Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=518478 2026-09-11T11:15:28.237921Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=589381 2026-09-11T11:15:29.674159Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=577309 2026-09-11T11:15:31.099323Z DEBUG ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: placed tile storage tiles=1472 shards=391104 elapsed_us=587964 2026-09-11T11:15:32.088724Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: package build phase finished phase="optimize_exchange_placement" elapsed_ms=11183 success=true 2026-09-11T11:15:32.116753Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: costed final placed program final_cycles=17450398 final_exchange=7996801 2026-09-11T11:15:33.658822Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="prepare_tile_code"}: package build phase finished phase="prepare_tile_code" elapsed_ms=299 success=true 2026-09-11T11:15:33.779573Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="emit_tile_code"}: package build phase finished phase="emit_tile_code" elapsed_ms=120 success=true 2026-09-11T11:15:34.413650Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}:ipu_codegen.package.phase{phase="build_tile_images"}: package build phase finished phase="build_tile_images" elapsed_ms=581 success=true 2026-09-11T11:15:34.801058Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: accepted local layout improvement attempt=0 before=17770665 after=17450398 changed_operations=[14] opened_boundaries=[] 2026-09-11T11:16:00.394230Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-1-63155-0002.json scope="local-1" peak_step=63 effective_peak_bytes=651128 2026-09-11T11:16:07.598519Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=6261 expansion_and_footprint_ms=7203 estimated_row_bytes=80368 heuristic_row_bytes=132328 geometry_fragments_per_tile=9126 fragment_limit=16384 2026-09-11T11:16:08.041698Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=168192 alignment=8 first=102 last=102 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (105, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.042145Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.067866Z DEBUG tile allocation does not fit tile=920 class=Ipu21Standard bytes=168192 alignment=8 first=90 last=90 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 696), (4294967295, 487320, 448), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (93, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.068028Z DEBUG tile allocation does not fit tile=920 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.068443Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=168192 alignment=8 first=92 last=92 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (95, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.068676Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.085328Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=168192 alignment=8 first=190 last=190 free=[(327680, 328824), (338040, 340344), (349560, 360448), (486624, 496032), (508952, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (243, 328824, 9216), (236, 340344, 9216), (195, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.085602Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.088145Z DEBUG tile allocation does not fit tile=1012 class=Ipu21Standard bytes=168192 alignment=8 first=83 last=83 free=[(327680, 360448), (499536, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1136), (4294967295, 487760, 3584), (4294967295, 491344, 3584), (4294967295, 494928, 2048), (4294967295, 496976, 1024), (4294967295, 498000, 1024), (4294967295, 499024, 512), (86, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.088424Z DEBUG tile allocation does not fit tile=1012 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358664, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:08.481898Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=1 error=placement failed: tile 184 has insufficient Ipu21Standard SRAM for 82944 bytes 2026-09-11T11:16:08.554181Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-2-63155-0003.json scope="local-2" peak_step=63 effective_peak_bytes=651128 2026-09-11T11:16:14.051977Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=4593 expansion_and_footprint_ms=5497 estimated_row_bytes=80368 heuristic_row_bytes=132328 geometry_fragments_per_tile=9126 fragment_limit=16384 2026-09-11T11:16:14.448420Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=168192 alignment=8 first=92 last=92 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (95, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.448493Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=168192 alignment=8 first=102 last=102 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (105, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.448555Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.448578Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=168192 alignment=8 first=157 last=157 free=[(327680, 328824), (338040, 340344), (349560, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 736), (4294967295, 487360, 408), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (191, 328824, 9216), (186, 340344, 9216), (160, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.448682Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.448740Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.449442Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=168192 alignment=8 first=190 last=190 free=[(327680, 328824), (338040, 340344), (349560, 360448), (486624, 496032), (508952, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (243, 328824, 9216), (236, 340344, 9216), (195, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.449808Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.451621Z DEBUG tile allocation does not fit tile=161 class=Ipu21Standard bytes=168192 alignment=8 first=149 last=149 free=[(327680, 328824), (338040, 340344), (349560, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1008), (4294967295, 487632, 136), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (187, 328824, 9216), (182, 340344, 9216), (152, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.451797Z DEBUG tile allocation does not fit tile=161 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:14.823666Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=2 error=placement failed: tile 368 has insufficient Ipu21Standard SRAM for 82944 bytes 2026-09-11T11:16:14.888728Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-3-63155-0004.json scope="local-3" peak_step=63 effective_peak_bytes=651128 2026-09-11T11:16:20.257105Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=4444 expansion_and_footprint_ms=5367 estimated_row_bytes=80368 heuristic_row_bytes=132328 geometry_fragments_per_tile=9126 fragment_limit=16384 2026-09-11T11:16:20.674924Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=168192 alignment=8 first=102 last=102 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (105, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675160Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675323Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=168192 alignment=8 first=190 last=190 free=[(327680, 328824), (338040, 340344), (349560, 360448), (486624, 496032), (508952, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (243, 328824, 9216), (236, 340344, 9216), (195, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675465Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=168192 alignment=8 first=92 last=92 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (95, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675480Z DEBUG tile allocation does not fit tile=460 class=Ipu21Standard bytes=168192 alignment=8 first=93 last=93 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (96, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675573Z DEBUG tile allocation does not fit tile=644 class=Ipu21Standard bytes=168192 alignment=8 first=84 last=84 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 600), (4294967295, 487224, 544), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (87, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675581Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=168192 alignment=8 first=157 last=157 free=[(327680, 328824), (338040, 340344), (349560, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 736), (4294967295, 487360, 408), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (191, 328824, 9216), (186, 340344, 9216), (160, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675588Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=168192 alignment=8 first=94 last=94 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (97, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675717Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675781Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675868Z DEBUG tile allocation does not fit tile=460 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.675901Z DEBUG tile allocation does not fit tile=644 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.676003Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:20.676031Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:21.016740Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=3 error=placement failed: tile 184 has insufficient Ipu21Standard SRAM for 82944 bytes 2026-09-11T11:16:21.090356Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-4-63155-0005.json scope="local-4" peak_step=63 effective_peak_bytes=651128 2026-09-11T11:16:26.422022Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=4405 expansion_and_footprint_ms=5331 estimated_row_bytes=80368 heuristic_row_bytes=132328 geometry_fragments_per_tile=9126 fragment_limit=16384 2026-09-11T11:16:26.805478Z DEBUG tile allocation does not fit tile=1012 class=Ipu21Standard bytes=168192 alignment=8 first=83 last=83 free=[(327680, 360448), (499536, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1136), (4294967295, 487760, 3584), (4294967295, 491344, 3584), (4294967295, 494928, 2048), (4294967295, 496976, 1024), (4294967295, 498000, 1024), (4294967295, 499024, 512), (86, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805508Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=168192 alignment=8 first=92 last=92 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (95, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805549Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=168192 alignment=8 first=94 last=94 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (97, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805598Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=168192 alignment=8 first=190 last=190 free=[(327680, 328824), (338040, 340344), (349560, 360448), (486624, 496032), (508952, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (243, 328824, 9216), (236, 340344, 9216), (195, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805622Z DEBUG tile allocation does not fit tile=1012 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358664, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805610Z DEBUG tile allocation does not fit tile=920 class=Ipu21Standard bytes=168192 alignment=8 first=90 last=90 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 696), (4294967295, 487320, 448), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (93, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805650Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=168192 alignment=8 first=102 last=102 free=[(327680, 360448), (499544, 524288), (788104, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (105, 704000, 84104)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1470, replicas: 147, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 5, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805680Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805640Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805742Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805773Z DEBUG tile allocation does not fit tile=920 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:26.805795Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(358920, 360448), (488360, 524288), (886016, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:27.135375Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=4 error=placement failed: tile 1012 has insufficient Ipu21Standard SRAM for 82944 bytes 2026-09-11T11:16:27.202368Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-5-63155-0006.json scope="local-5" peak_step=17 effective_peak_bytes=803960 2026-09-11T11:16:34.033101Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=5470 expansion_and_footprint_ms=6829 estimated_row_bytes=78992 heuristic_row_bytes=128008 geometry_fragments_per_tile=8939 fragment_limit=16384 2026-09-11T11:16:34.475083Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=281088 alignment=8 first=21 last=21 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (24, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475159Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=281088 alignment=8 first=19 last=19 free=[(327680, 360448), (499032, 524288), (830728, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 82944), (4294967295, 607232, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3072), (4294967295, 494424, 2048), (4294967295, 496472, 1024), (4294967295, 497496, 1024), (4294967295, 498520, 512), (22, 690176, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475255Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475269Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=281088 alignment=8 first=29 last=29 free=[(327680, 328824), (338040, 360448), (486624, 496032), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (238, 328824, 9216), (33, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475374Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475380Z DEBUG tile allocation does not fit tile=69 class=Ipu21Standard bytes=281088 alignment=8 first=22 last=22 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (189, 328824, 9216), (25, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475502Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475606Z DEBUG tile allocation does not fit tile=69 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475628Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=281088 alignment=8 first=22 last=22 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 776), (4294967295, 487400, 368), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (187, 328824, 9216), (25, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475917Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.475967Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=281088 alignment=8 first=20 last=20 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (23, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.476008Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=281088 alignment=8 first=20 last=20 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (23, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.476070Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=281088 alignment=8 first=23 last=23 free=[(327680, 328824), (338040, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 736), (4294967295, 487360, 408), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (187, 328824, 9216), (26, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.476254Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.476356Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.476371Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:34.858005Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=5 error=placement failed: tile 368 has insufficient Ipu21Standard SRAM for 96768 bytes 2026-09-11T11:16:34.928247Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-6-63155-0007.json scope="local-6" peak_step=17 effective_peak_bytes=803960 2026-09-11T11:16:42.208665Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=5993 expansion_and_footprint_ms=7279 estimated_row_bytes=78992 heuristic_row_bytes=128008 geometry_fragments_per_tile=8939 fragment_limit=16384 2026-09-11T11:16:42.745276Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=281088 alignment=8 first=20 last=20 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (23, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745386Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=281088 alignment=8 first=23 last=23 free=[(327680, 328824), (338040, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 736), (4294967295, 487360, 408), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (187, 328824, 9216), (26, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745512Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745626Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745609Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=281088 alignment=8 first=19 last=19 free=[(327680, 360448), (499032, 524288), (830728, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 82944), (4294967295, 607232, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3072), (4294967295, 494424, 2048), (4294967295, 496472, 1024), (4294967295, 497496, 1024), (4294967295, 498520, 512), (22, 690176, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745797Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.745981Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=281088 alignment=8 first=29 last=29 free=[(327680, 328824), (338040, 360448), (486624, 496032), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (238, 328824, 9216), (33, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746067Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=281088 alignment=8 first=22 last=22 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 776), (4294967295, 487400, 368), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (187, 328824, 9216), (25, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746077Z DEBUG tile allocation does not fit tile=23 class=Ipu21Standard bytes=281088 alignment=8 first=21 last=21 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (186, 328824, 9216), (24, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746389Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746386Z DEBUG tile allocation does not fit tile=69 class=Ipu21Standard bytes=281088 alignment=8 first=22 last=22 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (189, 328824, 9216), (25, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746393Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=281088 alignment=8 first=21 last=21 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (24, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746467Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746474Z DEBUG tile allocation does not fit tile=23 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746778Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:42.746833Z DEBUG tile allocation does not fit tile=69 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:43.176830Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=6 error=placement failed: tile 184 has insufficient Ipu21Standard SRAM for 96768 bytes 2026-09-11T11:16:43.261712Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: wrote planner memory profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/local-7-63155-0008.json scope="local-7" peak_step=17 effective_peak_bytes=803960 2026-09-11T11:16:51.090663Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: screened exchange table geometry expansion_ms=6455 expansion_and_footprint_ms=7828 estimated_row_bytes=78992 heuristic_row_bytes=128008 geometry_fragments_per_tile=8939 fragment_limit=16384 2026-09-11T11:16:51.643671Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=281088 alignment=8 first=19 last=19 free=[(327680, 360448), (499032, 524288), (830728, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 82944), (4294967295, 607232, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3072), (4294967295, 494424, 2048), (4294967295, 496472, 1024), (4294967295, 497496, 1024), (4294967295, 498520, 512), (22, 690176, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.643815Z DEBUG tile allocation does not fit tile=736 class=Ipu21Standard bytes=82944 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([1152, 3456]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1296, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 6, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 216, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644402Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=281088 alignment=8 first=20 last=20 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (23, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644568Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=281088 alignment=8 first=23 last=23 free=[(327680, 328824), (338040, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 736), (4294967295, 487360, 408), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (187, 328824, 9216), (26, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644636Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=281088 alignment=8 first=20 last=20 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 1144), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (23, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644728Z DEBUG tile allocation does not fit tile=644 class=Ipu21Standard bytes=281088 alignment=8 first=21 last=21 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 600), (4294967295, 487224, 544), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (24, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644783Z DEBUG tile allocation does not fit tile=552 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644788Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=281088 alignment=8 first=21 last=21 free=[(327680, 360448), (499544, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 640), (4294967295, 487264, 504), (4294967295, 487768, 3584), (4294967295, 491352, 3584), (4294967295, 494936, 2048), (4294967295, 496984, 1024), (4294967295, 498008, 1024), (4294967295, 499032, 512), (24, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644931Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=281088 alignment=8 first=22 last=22 free=[(327680, 328824), (338040, 360448), (487768, 497176), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 486624, 776), (4294967295, 487400, 368), (4294967295, 497176, 3584), (4294967295, 500760, 3584), (4294967295, 504344, 2048), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (187, 328824, 9216), (25, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.644974Z DEBUG tile allocation does not fit tile=92 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645097Z DEBUG tile allocation does not fit tile=644 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645144Z DEBUG tile allocation does not fit tile=368 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645299Z DEBUG tile allocation does not fit tile=184 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645314Z DEBUG tile allocation does not fit tile=46 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645602Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=281088 alignment=8 first=29 last=29 free=[(327680, 328824), (338040, 360448), (486624, 496032), (508952, 524288), (844552, 949168)] active=[(4294967295, 362208, 96768), (4294967295, 524288, 96768), (4294967295, 621056, 82944), (4294967295, 458976, 27648), (4294967295, 496032, 3584), (4294967295, 499616, 3584), (4294967295, 503200, 2048), (4294967295, 505248, 1144), (4294967295, 506392, 1024), (4294967295, 507416, 1024), (4294967295, 508440, 512), (238, 328824, 9216), (33, 704000, 140552)] tensor_type=TensorType { shape: TensorShape([1, 729, 1152]), format: TensorFormat { precision: F16, layout: Layout { order: RowMajor, tiling: TensorTiling { tile_count: 1296, replicas: 216, axes: [AxisTiling { axis: FromEnd(1), partitions: 2, padding_groups: 1, block_size: 576, padding_multiple: 576, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(2), partitions: 3, padding_groups: 1, block_size: 2, padding_multiple: 2, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:51.645996Z DEBUG tile allocation does not fit tile=0 class=Ipu21Standard bytes=96768 alignment=8 first=0 last=4294967295 free=[(347208, 360448), (502760, 524288), (902144, 949168)] active=[] tensor_type=TensorType { shape: TensorShape([4304, 1152]), format: TensorFormat { precision: F8F143 { scale_exponent: -4 }, layout: Layout { order: Amp(TransposedLeft), tiling: TensorTiling { tile_count: 1440, replicas: 1, axes: [AxisTiling { axis: FromEnd(2), partitions: 20, padding_groups: 1, block_size: 32, padding_multiple: 32, shard_padding_multiple: 1, padding: Zero, tile_stride: None }, AxisTiling { axis: FromEnd(1), partitions: 72, padding_groups: 1, block_size: 16, padding_multiple: 16, shard_padding_multiple: 1, padding: Zero, tile_stride: None }] }, memory_class: Ipu21Standard } } } 2026-09-11T11:16:52.051557Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: retained feasible incumbent attempt=7 error=placement failed: tile 736 has insufficient Ipu21Standard SRAM for 82944 bytes 2026-09-11T11:16:52.526035Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}:ipu_codegen.package.phase{phase="plan_package"}: package build phase finished phase="plan_package" elapsed_ms=275086 success=true 2026-09-11T11:16:54.828497Z INFO ipu_codegen.package.build{tile_count=1472 operations=25}: wrote exact tile placement profile path=artifacts/baseline-local-planner/pairwise-resident-full27-materialized/memory/placement-63155.html 2026-09-11T11:16:55.567147Z INFO writing application package tiles=1472 2026-09-11T11:16:56.119512Z INFO application package written 2026-09-11T11:16:56.133881Z INFO reading application package 2026-09-11T11:16:57.148865Z INFO application package read tiles=1472 compiler=0.1.0 2026-09-11T11:16:57.168922Z INFO waiting for hardware ownership path=artifacts/layout-sweep/device.lock 2026-09-11T11:16:57.168943Z INFO acquired hardware ownership path=artifacts/layout-sweep/device.lock 2026-09-11T11:16:57.168949Z INFO opening IPU device path="/dev/ipu0" 2026-09-11T11:16:57.168978Z INFO IPU device attached path=/dev/ipu0 2026-09-11T11:16:57.168982Z INFO initializing IPU device 2026-09-11T11:16:57.176899Z INFO IPU device initialized 2026-09-11T11:16:57.176905Z INFO replaying device configuration register_writes=2003 2026-09-11T11:16:57.211982Z INFO loading application tile_count=1472 final_mark=23 2026-09-11T11:16:57.455960Z INFO application loaded and initial synchronization completed tile_count=1472 2026-09-11T11:17:03.561931Z INFO prepared reference inputs elapsed_ms=6104 2026-09-11T11:17:03.562337Z INFO configured host reference BLAS threads=4 referencePrecision=fp32 2026-09-11T11:17:27.069645Z INFO evaluated host reference elapsed_ms=23507 2026-09-11T11:17:27.073989Z INFO starting host exchange session startup_mark=23 2026-09-11T11:17:27.074010Z INFO attaching host exchange pages pages=2 2026-09-11T11:17:27.075350Z INFO host exchange session started 2026-09-11T11:17:27.076447Z INFO invoking streaming host exchange call call="initialize" command=0 phases=342 2026-09-11T11:17:27.323053Z INFO invoking streaming host exchange call call="run" command=0 phases=13 runFailureDiagnostics=counts=[1145, 327, 0, 0] firstUnexpected=[(0, 1), (1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (57, 1), (59, 1), (60, 1), (62, 1), (64, 1), (65, 1), (66, 1), (67, 1), (68, 1)] contexts=[(0, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (1, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (2, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (3, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (4, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (5, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (6, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (57, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((1, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (2, Ok((325120, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xc0"), Ok(FloatingPoint)))), (3, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (4, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (5, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (6, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint))))]), (59, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((1, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((325104, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xb0"), Ok(FloatingPoint)))), (2, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (3, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (4, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (5, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (6, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint))))]), (60, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((1, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (2, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (3, Ok((325104, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xb0"), Ok(FloatingPoint)))), (4, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (5, Ok((325104, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xb0"), Ok(FloatingPoint)))), (6, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint))))]), (62, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((1, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint)))), (2, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (3, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (4, Ok((325088, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xa0"), Ok(FloatingPoint)))), (5, Ok((325120, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0xc0"), Ok(FloatingPoint)))), (6, Ok((325072, Some("_ZL14castPackedRowsPKDhS0_Phjjj+0x90"), Ok(FloatingPoint))))]), (64, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (65, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (66, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 19)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (67, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))]), (68, 1, Err(Timeout("stopping tile context")), None, None, None, None, Err(Timeout("stopping tile context")), Ok((0, 21)), Ok(None), Ok([3, 3, 3, 3, 3, 3]), [(1, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (2, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (3, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (4, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (5, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint)))), (6, Ok((323704, Some("__runCodelet_Cast2To1+0x610"), Ok(FloatingPoint))))])] Error: device timeout: host call run phase 6/13: device timeout: HSP register 0x3030: expected 0, observed 1