2026-09-06T11:19:49.051067Z INFO applied GEMM plan constraint source_operation=0 matching_plans=1 constraint=GemmPlanConstraint { source_operation: 0, orientation: Normal, row_partitions: 4, column_partitions: 90, inner_partitions: 4, result_row_partitions: 4, result_column_partitions: 1, output_column_block: 48, weight_memory_class: Ipu21Interleaved, reduction_staging: Complete, local_weight_staging: Direct } 2026-09-06T11:19:49.491480Z INFO applied GEMM plan constraint source_operation=2 matching_plans=1 constraint=GemmPlanConstraint { source_operation: 2, orientation: Normal, row_partitions: 4, column_partitions: 24, inner_partitions: 15, result_row_partitions: 15, result_column_partitions: 1, output_column_block: 48, weight_memory_class: Ipu21Interleaved, reduction_staging: Complete, local_weight_staging: Direct } 2026-09-06T11:19:50.037671Z INFO retained operator-plan finalist finalist=0 values=7 operations=4 estimated_cycles=310377 estimated_exchange_cycles=123960 exchange_row_bytes=27236 peak_standard_bytes=141924 peak_interleaved_bytes=88064 peak_total_bytes=229988 maximum_standard_allocation_bytes=114688 active_tile_counts={1440} padding_group_counts={} conversion_sources=[Some(OperationId(2))] 2026-09-06T11:19:50.042958Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_mid"}: package build phase finished phase="lower_mid" elapsed_ms=1346 success=true 2026-09-06T11:19:53.286602Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="select_finalist"}: selected analytical operator plan estimated_cycles=247983 estimated_exchange_cycles=70152 2026-09-06T11:19:53.373960Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="select_finalist"}: eliminated finite GEMM padding clears using load-time SRAM initialization removed=72 2026-09-06T11:19:53.376158Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="select_finalist"}: package build phase finished phase="select_finalist" elapsed_ms=3333 success=true 2026-09-06T11:19:53.376192Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}: lowered graph for package construction logical_shards=25956 exchange_phases=4 2026-09-06T11:19:53.376435Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="compile_runtime"}: package build phase finished phase="compile_runtime" elapsed_ms=0 success=true 2026-09-06T11:19:53.377195Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="plan_kernels"}: package build phase finished phase="plan_kernels" elapsed_ms=0 success=true 2026-09-06T11:19:53.377483Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="compile_kernels"}: package build phase finished phase="compile_kernels" elapsed_ms=0 success=true 2026-09-06T11:19:53.380017Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="link_runtime"}: package build phase finished phase="link_runtime" elapsed_ms=0 success=true 2026-09-06T11:19:53.517676Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="plan_exchange_storage"}: package build phase finished phase="plan_exchange_storage" elapsed_ms=137 success=true 2026-09-06T11:19:54.066905Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: prepared large physical exchange phase phase=1 transfers=15064 maximum_identical_destinations=1 2026-09-06T11:19:54.066970Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: optimized physical exchange schedule phase=1 initial_horizon=4174 selected_horizon=4168 endpoint_lower_bound=3408 lower_bound_gap=760 selected_kind="critical-neighborhood" neighborhood_improvements=1 2026-09-06T11:19:54.081911Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: finished large physical exchange phase phase=1 tile=1059 row_words=72 horizon=4168 2026-09-06T11:20:01.960139Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: compared ordinary and paired exchange schedules phase=2 candidates=3876 ordinary_horizon=75992 paired_horizon=65297 use_paired=true 2026-09-06T11:20:02.053089Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: prepared large physical exchange phase phase=2 transfers=5562 maximum_identical_destinations=1 2026-09-06T11:20:02.053130Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: optimized physical exchange schedule phase=2 initial_horizon=65297 selected_horizon=65297 endpoint_lower_bound=23544 lower_bound_gap=41753 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:02.097784Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: finished large physical exchange phase phase=2 tile=1386 row_words=274 horizon=65297 2026-09-06T11:20:09.265478Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: prepared large physical exchange phase phase=3 transfers=63720 maximum_identical_destinations=1 2026-09-06T11:20:09.265542Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: optimized physical exchange schedule phase=3 initial_horizon=7991 selected_horizon=7991 endpoint_lower_bound=4704 lower_bound_gap=3287 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:09.327973Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: finished large physical exchange phase phase=3 tile=1058 row_words=294 horizon=7991 2026-09-06T11:20:09.353712Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges_provisional"}: package build phase finished phase="lower_exchanges_provisional" elapsed_ms=15835 success=true 2026-09-06T11:20:09.970012Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="size_tile_code"}: package build phase finished phase="size_tile_code" elapsed_ms=6 success=true 2026-09-06T11:20:09.970109Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}: allocated package support memory linked_end=317272 profile_bytes=132 exchange_table_bytes=2320 host_code_bytes=2412 generated_code_bytes=1512 code_address=319688 standard_ranges=[(409600, 524288)] 2026-09-06T11:20:10.096174Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="place_storage"}: package build phase finished phase="place_storage" elapsed_ms=126 success=true 2026-09-06T11:20:10.105241Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=0 2026-09-06T11:20:10.207929Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: reused exchange optimization after validating relocated rows phase=1 2026-09-06T11:20:10.215014Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=1 transfers=15064 maximum_identical_destinations=1 2026-09-06T11:20:10.215053Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=1 initial_horizon=4168 selected_horizon=4168 endpoint_lower_bound=3408 lower_bound_gap=760 selected_kind="reused" neighborhood_improvements=0 2026-09-06T11:20:10.225294Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=1 tile=1059 row_words=72 horizon=4168 2026-09-06T11:20:18.706959Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: compared ordinary and paired exchange schedules phase=2 candidates=3876 ordinary_horizon=75992 paired_horizon=65297 use_paired=true 2026-09-06T11:20:18.800886Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=2 transfers=5562 maximum_identical_destinations=1 2026-09-06T11:20:18.800925Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=2 initial_horizon=65297 selected_horizon=65297 endpoint_lower_bound=23544 lower_bound_gap=41753 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:18.845761Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=2 tile=1386 row_words=274 horizon=65297 2026-09-06T11:20:24.774679Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: prepared large physical exchange phase phase=3 transfers=63720 maximum_identical_destinations=1 2026-09-06T11:20:24.774744Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: optimized physical exchange schedule phase=3 initial_horizon=7991 selected_horizon=7991 endpoint_lower_bound=4704 lower_bound_gap=3287 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:24.812267Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: finished large physical exchange phase phase=3 tile=1058 row_words=294 horizon=7991 2026-09-06T11:20:24.832012Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="lower_exchanges"}: package build phase finished phase="lower_exchanges" elapsed_ms=14735 success=true 2026-09-06T11:20:26.154369Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: reused exchange optimization after validating relocated rows phase=0 2026-09-06T11:20:26.261367Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: reused exchange optimization after validating relocated rows phase=1 2026-09-06T11:20:26.268828Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: prepared large physical exchange phase phase=1 transfers=15064 maximum_identical_destinations=1 2026-09-06T11:20:26.268855Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: optimized physical exchange schedule phase=1 initial_horizon=4168 selected_horizon=4168 endpoint_lower_bound=3408 lower_bound_gap=760 selected_kind="reused" neighborhood_improvements=0 2026-09-06T11:20:26.279585Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: finished large physical exchange phase phase=1 tile=1059 row_words=72 horizon=4168 2026-09-06T11:20:34.867725Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: compared ordinary and paired exchange schedules phase=2 candidates=3876 ordinary_horizon=50277 paired_horizon=40741 use_paired=true 2026-09-06T11:20:34.955048Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: prepared large physical exchange phase phase=2 transfers=5562 maximum_identical_destinations=1 2026-09-06T11:20:34.955094Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: optimized physical exchange schedule phase=2 initial_horizon=40741 selected_horizon=40741 endpoint_lower_bound=23544 lower_bound_gap=17197 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:35.000580Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: finished large physical exchange phase phase=2 tile=1386 row_words=276 horizon=40741 2026-09-06T11:20:42.729087Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: prepared large physical exchange phase phase=3 transfers=63720 maximum_identical_destinations=1 2026-09-06T11:20:42.729158Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: optimized physical exchange schedule phase=3 initial_horizon=7991 selected_horizon=7991 endpoint_lower_bound=4704 lower_bound_gap=3287 selected_kind="full-duplex" neighborhood_improvements=0 2026-09-06T11:20:42.793302Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: finished large physical exchange phase phase=3 tile=1058 row_words=294 horizon=7991 2026-09-06T11:20:42.832096Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: evaluated exchange placement finalist offset=28672 baseline_score=129706721280 score=115690733568 baseline_cycles=84500 candidate_cycles=59944 row_bytes=2272 row_capacity=16320 accepted=true 2026-09-06T11:20:42.849570Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="optimize_exchange_placement"}: package build phase finished phase="optimize_exchange_placement" elapsed_ms=18017 success=true 2026-09-06T11:20:43.176045Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="prepare_tile_code"}: package build phase finished phase="prepare_tile_code" elapsed_ms=13 success=true 2026-09-06T11:20:43.188780Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="emit_tile_code"}: package build phase finished phase="emit_tile_code" elapsed_ms=12 success=true 2026-09-06T11:20:43.281314Z INFO ipu_codegen.package.build{tile_count=1472 operations=3}:ipu_codegen.package.phase{phase="build_tile_images"}: package build phase finished phase="build_tile_images" elapsed_ms=86 success=true 2026-09-06T11:20:43.361914Z INFO writing application package tiles=1472 2026-09-06T11:20:43.431867Z INFO application package written 2026-09-06T11:20:43.434453Z INFO reading application package 2026-09-06T11:20:43.544237Z INFO application package read tiles=1472 compiler=0.1.0 2026-09-06T11:20:43.547139Z INFO opening IPU device path="/dev/ipu0" 2026-09-06T11:20:43.547196Z INFO IPU device attached path=/dev/ipu0 2026-09-06T11:20:43.547227Z INFO initializing IPU device 2026-09-06T11:20:43.555198Z INFO IPU device initialized 2026-09-06T11:20:43.555221Z INFO replaying device configuration register_writes=2003 2026-09-06T11:20:43.564991Z INFO loading application tile_count=1472 final_mark=23 2026-09-06T11:20:43.871325Z INFO application loaded and initial synchronization completed tile_count=1472 2026-09-06T11:20:45.664814Z INFO starting host exchange session startup_mark=23 2026-09-06T11:20:45.664891Z INFO attaching host exchange pages pages=2 2026-09-06T11:20:45.665614Z INFO host exchange session started 2026-09-06T11:20:45.665699Z INFO invoking streaming host exchange call call="initialize" command=0 phases=14 2026-09-06T11:20:45.672880Z INFO invoking streaming host exchange call call="run" command=0 phases=59 profile=artifacts/layout-sweep/up-02/execution.ipuprofile tiles=1472 samples=25676 workload=siglip-mlp-f16-b1-t729-d1152-h4304-n1 benchmark=siglip-mlp-f16 batch=1 tokens=729 rows=729 dimension=1152 hiddenDimension=4304 blocks=1 biases=false activeTiles=1440 executionTiles=1472 inputBytes=151372800 weightBytes=19869696 cycles=201594 minimumTileCycles=191592 deviceMicroseconds=134.396 effectiveGemmTflops=107.579 peakTflops=282.624 efficiencyPercent=38.06 maximumAbsoluteError=0.011719 package=artifacts/layout-sweep/up-02/model.ipuexe tiles=1472 hardwareTest=PASS