Skip to content

Validate current XPalm benchmarks and release unused samples - #222

Merged
VEZY merged 7 commits into
mainfrom
codex/downstream-benchmark-memory
Oct 18, 2026
Merged

VEZY merged 7 commits into
mainfrom
codex/downstream-benchmark-memory

Conversation

@VEZY

@VEZY VEZY commented Sep 21, 2026 •

Copy link
Copy Markdown
Member

The current XPalm model was compared with a historical 0.6.1 final LAI. Use the released v0.7.0 regression reference after validating its source commit, default-parameter scenario, weather hash, dates, and complete 4,160-day horizon. Historical release comparisons, numerical fixture data, and tolerances remain unchanged.

Repeated full-output measurements previously kept large histories alive between samples. Extract the first run's final state and runtime counters outside the timed operation, then release its history before the next sample. Non-inlined sample helpers also release later results and factory-owned model state. Default callers still receive the first result unchanged; lifetime tests cover both paths, sample counts, and statistics.

The full workflow retains the complete output-retention matrix with three samples per stage. The optional warmed no-output diagnostic remains separate. Progress/resource logging and a bounded test step preserve checkpoint and artifact-upload time.

XPalm compatibility PR #134 and reference-promotion PR #137 are merged. Integration and the full benchmark use XPalm main. The promotion moves the existing numerical CSV blobs unchanged and preserves their original generation provenance. PlantSimEngine PR #223 is included in this head.

Validation at deca45a12a54867fbe856da4f078a58019bc07e6:

  • The full downstream benchmark passes with xpalm_ref=main, plantbiophysics_ref=master, plantgeom_ref=main, and xpalm_profile=full. PlantBiophysics API smoke: 14/14; performance: 5/5; XPalm oracle: 12/12; measurement lifetime: 30/30; complete profile: 4/4.
  • All 12 measured stages have three completed samples. The CSV contains 485 records. All four output-retention modes produce exactly the same final state: 4,160 steps, 344 phytomers, LAI 5.2085061095890355, and FTSW 0.7991179101191208. The high-level wrapper also passes its reference comparison.
  • Resolved revisions: XPalm 689d9117b6ccb51bc64e4603b280b68c0ad9ed5f (main), PlantBiophysics 9ee42793c54118111a0b72dbfa9bc04f4ccd6422 (master), and PlantGeom 2933d88b3acb2261f9591d4257b0024434095ea0 (main). The manifest, fixture hash, source revisions, measurements, and resource log are retained in the workflow artifact.
  • Measurements use Julia 1.12.1, one thread, CPU znver5, and the recorded warmup policy. Maximum sampled process RSS was 11.881 GiB. Timings describe this resolved environment and full-profile measurement method.
XPalm stage Median of 3 samples
Simulation without outputs 20.802 s
Simulation with small outputs 17.872 s
Simulation with reference outputs 18.246 s
Simulation with all outputs 74.789 s
Reference-output materialization 0.156 s
High-level reference wrapper 6.999 s

All current checks pass: engine CI across Julia 1.10/current on Linux, macOS, and Windows; downstream integration for XPalm, PlantBiophysics, and PlantGeom; regular benchmarks; documentation/deploy; browser E2E; and the manually dispatched full matrix above. There are 14 successful check runs; the ordinary PR workflow skips its optional manual full-performance job, which is covered by the successful explicit run. Independent artifact verification confirms every stage/sample count, final state, revision, and manifest hash. git diff --check passes.

@VEZY VEZY changed the title Release unused benchmark samples before the next run Validate current XPalm benchmarks and release unused samples Sep 21, 2026
@github-actions

github-actions Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Benchmark Results (Julia v1.12.1)

Time benchmarks
main deca45a... main / deca45a...
bench_linux/PSE 8.47 s 8.49 s 0.998
bench_linux/PSE_assign_outputs_broadcast_exact_10 0.541 ± 0.071 μs 0.571 ± 0.091 μs 0.947 ± 0.2
bench_linux/PSE_assign_outputs_broadcast_exact_1000 1.96 ± 0.22 μs 1.81 ± 0.16 μs 1.08 ± 0.15
bench_linux/PSE_assign_outputs_broadcast_exact_10000 17.4 ± 1.7 μs 17.6 ± 1.1 μs 0.988 ± 0.12
bench_linux/PSE_assign_outputs_columns_19columns_exact_1000 27.5 ± 2.2 μs 26.3 ± 1.2 μs 1.05 ± 0.095
bench_linux/PSE_assign_outputs_columns_2columns_exact_10 0.821 ± 0.12 μs 0.771 ± 0.061 μs 1.06 ± 0.18
bench_linux/PSE_assign_outputs_columns_2columns_exact_1000 3.44 ± 0.21 μs 3.42 ± 0.21 μs 1.01 ± 0.087
bench_linux/PSE_assign_outputs_columns_2columns_exact_10000 0.0521 ± 0.00076 ms 0.0525 ± 0.0012 ms 0.991 ± 0.026
bench_linux/PSE_assign_outputs_columns_2columns_permuted_10 0.741 ± 0.071 μs 0.741 ± 0.07 μs 1 ± 0.13
bench_linux/PSE_assign_outputs_columns_2columns_permuted_1000 6.44 ± 0.58 μs 5.83 ± 0.35 μs 1.1 ± 0.12
bench_linux/PSE_assign_outputs_columns_2columns_permuted_10000 0.0609 ± 0.0021 ms 0.0659 ± 0.0064 ms 0.925 ± 0.096
bench_linux/PSE_assign_outputs_columns_7columns_exact_1000 9.07 ± 0.68 μs 8.76 ± 0.72 μs 1.03 ± 0.12
bench_linux/PSE_assign_outputs_columns_exact_10 0.701 ± 0.089 μs 0.581 ± 0.09 μs 1.21 ± 0.24
bench_linux/PSE_assign_outputs_columns_exact_1000 1.83 ± 0.18 μs 1.74 ± 0.19 μs 1.05 ± 0.15
bench_linux/PSE_assign_outputs_columns_exact_10000 21.1 ± 4.7 μs 18.1 ± 1.7 μs 1.17 ± 0.28
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_10 1.03 ± 0.11 μs 1.04 ± 0.11 μs 0.991 ± 0.15
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_1000 0.0406 ± 0.012 ms 0.0381 ± 0.0019 ms 1.07 ± 0.32
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_10000 0.4 ± 0.14 ms 0.386 ± 0.13 ms 1.04 ± 0.5
bench_linux/PSE_assign_outputs_columns_permuted_10 0.682 ± 0.071 μs 0.691 ± 0.09 μs 0.987 ± 0.16
bench_linux/PSE_assign_outputs_columns_permuted_1000 3.17 ± 0.24 μs 2.9 ± 0.22 μs 1.09 ± 0.12
bench_linux/PSE_assign_outputs_columns_permuted_10000 25.4 ± 1.1 μs 25.1 ± 2.1 μs 1.01 ± 0.098
bench_linux/PSE_assign_outputs_control_10 0.452 ± 0.08 μs 0.501 ± 0.05 μs 0.902 ± 0.18
bench_linux/PSE_assign_outputs_control_1000 0.581 ± 0.1 μs 0.631 ± 0.12 μs 0.921 ± 0.24
bench_linux/PSE_assign_outputs_control_10000 1.49 ± 0.29 μs 1.41 ± 0.32 μs 1.06 ± 0.31
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_10 0.672 ± 0.06 μs 0.641 ± 0.091 μs 1.05 ± 0.18
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_1000 3.12 ± 0.27 μs 3.03 ± 0.24 μs 1.03 ± 0.12
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_10000 0.0503 ± 0.00089 ms 0.0518 ± 0.0017 ms 0.972 ± 0.036
bench_linux/PSE_assign_outputs_ref_loop_exact_10 0.641 ± 0.07 μs 0.501 ± 0.07 μs 1.28 ± 0.23
bench_linux/PSE_assign_outputs_ref_loop_exact_1000 2.18 ± 0.29 μs 1.75 ± 0.16 μs 1.25 ± 0.2
bench_linux/PSE_assign_outputs_ref_loop_exact_10000 17.5 ± 1.3 μs 19.4 ± 2.3 μs 0.903 ± 0.13
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_10 0.922 ± 0.11 μs 0.822 ± 0.1 μs 1.12 ± 0.19
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_1000 20.3 ± 0.71 μs 22.6 ± 3.2 μs 0.897 ± 0.13
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_10000 0.225 ± 0.061 ms 0.212 ± 0.063 ms 1.06 ± 0.43
bench_linux/PSE_assign_outputs_table_2columns_exact_10 0.822 ± 0.091 μs 0.701 ± 0.08 μs 1.17 ± 0.19
bench_linux/PSE_assign_outputs_table_2columns_exact_1000 3.44 ± 0.27 μs 3.3 ± 0.23 μs 1.04 ± 0.11
bench_linux/PSE_assign_outputs_table_2columns_exact_10000 0.057 ± 0.007 ms 0.0563 ± 0.005 ms 1.01 ± 0.15
bench_linux/PSE_assign_outputs_table_2columns_permuted_10 0.791 ± 0.1 μs 0.812 ± 0.071 μs 0.974 ± 0.15
bench_linux/PSE_assign_outputs_table_2columns_permuted_1000 5.96 ± 0.37 μs 6.02 ± 0.37 μs 0.99 ± 0.086
bench_linux/PSE_assign_outputs_table_2columns_permuted_10000 0.062 ± 0.0027 ms 0.0669 ± 0.011 ms 0.926 ± 0.16
bench_linux/PSE_assign_outputs_table_exact_10 0.771 ± 0.11 μs 0.641 ± 0.11 μs 1.2 ± 0.27
bench_linux/PSE_assign_outputs_table_exact_1000 1.94 ± 0.21 μs 2.02 ± 0.24 μs 0.96 ± 0.15
bench_linux/PSE_assign_outputs_table_exact_10000 18.3 ± 2.1 μs 18.3 ± 2.7 μs 1 ± 0.19
bench_linux/PSE_assign_outputs_table_permuted_10 0.741 ± 0.09 μs 0.641 ± 0.1 μs 1.16 ± 0.23
bench_linux/PSE_assign_outputs_table_permuted_1000 3.24 ± 0.26 μs 3.24 ± 0.27 μs 1 ± 0.12
bench_linux/PSE_assign_outputs_table_permuted_10000 26.6 ± 1.5 μs 25.9 ± 2.3 μs 1.03 ± 0.11
bench_linux/PSE_bound_many_input_steps_1000 0.114 ± 0.0028 ms 0.112 ± 0.0017 ms 1.01 ± 0.029
bench_linux/PSE_bound_many_sum_1000 1.33 ± 0.28 μs 1.37 ± 0.24 μs 0.972 ± 0.27
bench_linux/PSE_bound_many_sum_100000 0.394 ± 0.11 ms 0.289 ± 0.14 ms 1.36 ± 0.75
bench_linux/PSE_bound_objectref_sum_1000 19.1 ± 1.1 μs 17.8 ± 0.63 μs 1.07 ± 0.071
bench_linux/PSE_bound_objectref_sum_100000 2.17 ± 0.32 ms 2 ± 0.25 ms 1.08 ± 0.21
bench_linux/PSE_call_binding_signature_4096 1.07 ± 0.21 μs 0.841 ± 0.27 μs 1.27 ± 0.48
bench_linux/PSE_compiled_hard_call_heterogeneous 0.528 ± 0.052 ms 0.523 ± 0.05 ms 1.01 ± 0.14
bench_linux/PSE_compiled_hard_call_many 23.7 ± 1.1 ms 24.1 ± 1.2 ms 0.983 ± 0.068
bench_linux/PSE_compiled_hard_call_nested 0.54 ± 0.053 ms 0.532 ± 0.052 ms 1.02 ± 0.14
bench_linux/PSE_compiled_hard_call_published 0.417 ± 0.044 ms 0.406 ± 0.04 ms 1.03 ± 0.15
bench_linux/PSE_compiled_hard_call_repeated 0.469 ± 0.038 ms 0.481 ± 0.041 ms 0.974 ± 0.12
bench_linux/PSE_compiled_hard_call_sampled_environment 0.4 ± 0.04 ms 0.399 ± 0.04 ms 1 ± 0.14
bench_linux/PSE_compiled_hard_call_singular 0.406 ± 0.044 ms 0.407 ± 0.043 ms 0.998 ± 0.15
bench_linux/PSE_distributed_assign_broadcast_10 0.07 ± 0.01 μs 0.07 ± 0.01 μs 1 ± 0.2
bench_linux/PSE_distributed_assign_broadcast_1000 0.842 ± 0.1 μs 0.802 ± 0.1 μs 1.05 ± 0.18
bench_linux/PSE_distributed_assign_broadcast_10000 8.44 ± 0.83 μs 8.36 ± 1.7 μs 1.01 ± 0.23
bench_linux/PSE_distributed_assign_columns_10 0.06 ± 0.01 μs 0.07 ± 0.01 μs 0.857 ± 0.19
bench_linux/PSE_distributed_assign_columns_1000 1.34 ± 0.14 μs 1.36 ± 0.14 μs 0.986 ± 0.15
bench_linux/PSE_distributed_assign_columns_10000 14.3 ± 0.99 μs 14.7 ± 1.5 μs 0.968 ± 0.12
bench_linux/PSE_distributed_assign_exact_10 0.06 ± 0.001 μs 0.06 ± 0 μs 1 ± 0.017
bench_linux/PSE_distributed_assign_exact_1000 0.752 ± 0.09 μs 0.761 ± 0.091 μs 0.988 ± 0.17
bench_linux/PSE_distributed_assign_exact_10000 8.02 ± 0.62 μs 8.21 ± 1.2 μs 0.976 ± 0.16
bench_linux/PSE_distributed_assign_exact_100000 0.134 ± 0.014 ms 0.119 ± 0.018 ms 1.12 ± 0.21
bench_linux/PSE_distributed_assign_heterogeneous_10 0.331 ± 0.011 μs 0.33 ± 0.01 μs 1 ± 0.045
bench_linux/PSE_distributed_assign_heterogeneous_1000 22 ± 0.75 μs 21.9 ± 0.67 μs 1 ± 0.046
bench_linux/PSE_distributed_assign_heterogeneous_10000 0.228 ± 0.013 ms 0.218 ± 0.012 ms 1.05 ± 0.082
bench_linux/PSE_distributed_assign_permuted_10 0.07 ± 0.01 μs 0.07 ± 0.01 μs 1 ± 0.2
bench_linux/PSE_distributed_assign_permuted_1000 1.41 ± 0.15 μs 1.44 ± 0.16 μs 0.979 ± 0.15
bench_linux/PSE_distributed_assign_permuted_10000 13.6 ± 1.2 μs 13.8 ± 1.6 μs 0.989 ± 0.14
bench_linux/PSE_distributed_assign_permuted_100000 0.178 ± 0.011 ms 0.157 ± 0.018 ms 1.13 ± 0.14
bench_linux/PSE_distributed_assign_sparse_10 0.06 ± 0.01 μs 0.05 ± 0.01 μs 1.2 ± 0.31
bench_linux/PSE_distributed_assign_sparse_1000 0.391 ± 0.14 μs 0.321 ± 0.05 μs 1.22 ± 0.48
bench_linux/PSE_distributed_assign_sparse_10000 4.07 ± 0.94 μs 3.31 ± 0.7 μs 1.23 ± 0.38
bench_linux/PSE_distributed_assign_status_10 0.07 ± 0.011 μs 0.06 ± 0.01 μs 1.17 ± 0.27
bench_linux/PSE_distributed_assign_status_1000 0.791 ± 0.071 μs 0.861 ± 0.089 μs 0.919 ± 0.13
bench_linux/PSE_distributed_assign_status_10000 9.64 ± 1.3 μs 9.66 ± 1.4 μs 0.998 ± 0.2
bench_linux/PSE_distributed_compile_active_1000 3.94 ± 0.13 ms 3.98 ± 0.098 ms 0.99 ± 0.04
bench_linux/PSE_distributed_compile_none_1000 0.177 ± 0.014 ms 0.181 ± 0.013 ms 0.981 ± 0.11
bench_linux/PSE_distributed_compile_permutation_1000 0.0879 ± 0.0036 ms 0.0886 ± 0.0036 ms 0.992 ± 0.057
bench_linux/PSE_distributed_lifecycle_add_1000 2.39 ± 0.059 ms 2.47 ± 0.042 ms 0.967 ± 0.029
bench_linux/PSE_distributed_mapping_refresh_10 0.891 ± 0.1 μs 0.852 ± 0.071 μs 1.05 ± 0.15
bench_linux/PSE_distributed_mapping_refresh_1000 0.0893 ± 0.0039 ms 0.0872 ± 0.0036 ms 1.02 ± 0.061
bench_linux/PSE_distributed_mapping_refresh_10000 0.96 ± 0.017 ms 0.943 ± 0.014 ms 1.02 ± 0.023
bench_linux/PSE_hard_calls_dense 0.271 ± 0.028 s 0.267 ± 0.029 s 1.01 ± 0.15
bench_linux/PSE_hard_calls_sparse 31.1 ± 1.9 ms 31.4 ± 1.8 ms 0.99 ± 0.084
bench_linux/PSE_hard_calls_zero 0.0324 ± 0.0023 s 0.0328 ± 0.0022 s 0.989 ± 0.098
bench_linux/PSE_immutable_scenario_all 3.3 ± 0.22 ms 3.3 ± 0.2 ms 0.999 ± 0.091
bench_linux/PSE_immutable_scenario_none 3.27 ± 0.016 ms 3.27 ± 0.018 ms 0.998 ± 0.0073
bench_linux/PSE_immutable_scenario_requests 3.28 ± 0.072 ms 3.3 ± 0.07 ms 0.995 ± 0.03
bench_linux/PSE_lifecycle_immediate_hard_call 2.25 ± 0.63 ms 2.21 ± 0.53 ms 1.02 ± 0.38
bench_linux/PSE_lifecycle_large 0.826 ± 0.38 ms 0.867 ± 0.41 ms 0.952 ± 0.63
bench_linux/PSE_lifecycle_small 0.171 ± 0.022 ms 0.176 ± 0.02 ms 0.971 ± 0.17
bench_linux/PSE_many_cadence_schedule 2.12 ± 0.036 ms 2.13 ± 0.04 ms 0.995 ± 0.025
bench_linux/PSE_multirate_no_output_run 0.194 ± 0.021 s 0.194 ± 0.022 s 1 ± 0.16
bench_linux/PSE_multirate_output_request_run 0.189 ± 0.022 s 0.198 ± 0.033 s 0.954 ± 0.19
bench_linux/PSE_multirate_retain_all_run 0.181 ± 0.026 s 0.189 ± 0.035 s 0.957 ± 0.22
bench_linux/PSE_objectref_sum_1000 17.9 ± 0.85 μs 18.8 ± 0.83 μs 0.953 ± 0.062
bench_linux/PSE_objectref_sum_100000 2.09 ± 0.34 ms 1.99 ± 0.22 ms 1.05 ± 0.21
bench_linux/PSE_organ_adaptation_1024 4.1 ± 0.14 ms 4.02 ± 0.1 ms 1.02 ± 0.043
bench_linux/PSE_organ_adaptation_256 0.953 ± 0.016 ms 0.918 ± 0.016 ms 1.04 ± 0.025
bench_linux/PSE_organ_adaptation_32 0.159 ± 0.024 ms 0.154 ± 0.024 ms 1.03 ± 0.23
bench_linux/PSE_organ_add_1024 24.3 ± 1.7 μs 23 ± 1.6 μs 1.06 ± 0.1
bench_linux/PSE_organ_add_256 19.5 ± 1.4 μs 19 ± 1.5 μs 1.03 ± 0.11
bench_linux/PSE_organ_add_32 15.9 ± 2.6 μs 15.5 ± 2.8 μs 1.03 ± 0.25
bench_linux/PSE_organ_add_continue_1024 0.178 ± 0.049 ms 0.185 ± 0.05 ms 0.962 ± 0.37
bench_linux/PSE_organ_add_continue_256 0.237 ± 0.035 ms 0.135 ± 0.022 ms 1.75 ± 0.38
bench_linux/PSE_organ_add_continue_32 0.111 ± 0.017 ms 0.11 ± 0.017 ms 1.01 ± 0.22
bench_linux/PSE_organ_add_refresh_1024 0.181 ± 0.033 ms 0.0841 ± 0.011 ms 2.16 ± 0.48
bench_linux/PSE_organ_add_refresh_256 0.0934 ± 0.008 ms 0.0871 ± 0.0083 ms 1.07 ± 0.14
bench_linux/PSE_organ_add_refresh_32 0.0766 ± 0.01 ms 0.0739 ± 0.01 ms 1.04 ± 0.2
bench_linux/PSE_organ_refresh_1024 0.0719 ± 0.0091 ms 0.069 ± 0.0095 ms 1.04 ± 0.19
bench_linux/PSE_organ_refresh_256 0.0648 ± 0.005 ms 0.0626 ± 0.0056 ms 1.04 ± 0.12
bench_linux/PSE_organ_refresh_32 0.0538 ± 0.0082 ms 0.0527 ± 0.0078 ms 1.02 ± 0.22
bench_linux/PSE_organ_status_recipe_refresh_1024 0.584 ± 0.06 ms 0.569 ± 0.049 ms 1.03 ± 0.14
bench_linux/PSE_organ_status_recipe_refresh_256 0.624 ± 0.052 ms 0.501 ± 0.034 ms 1.25 ± 0.13
bench_linux/PSE_organ_status_recipe_refresh_32 0.434 ± 0.065 ms 0.371 ± 0.046 ms 1.17 ± 0.23
bench_linux/PSE_refvector_sum_1000 1.29 ± 0.2 μs 1.26 ± 0.2 μs 1.02 ± 0.23
bench_linux/PSE_refvector_sum_100000 0.428 ± 0.17 ms 0.37 ± 0.083 ms 1.16 ± 0.53
bench_linux/PSE_selector_subtree_root_2048 3.12 ± 0.11 ms 2.94 ± 0.074 ms 1.06 ± 0.046
bench_linux/PSE_selector_subtree_tip_2048 23.5 ± 2.4 μs 24.4 ± 1.7 μs 0.964 ± 0.12
bench_linux/PSE_status_many_input_steps_1000 0.113 ± 0.005 ms 0.113 ± 0.0052 ms 1 ± 0.064
bench_linux/PSE_status_read_write 30 ± 0 ns 30 ± 0 ns 1 ± 0
bench_linux/PSE_status_registry_lookup_1024 0.44 ± 0.13 μs 0.481 ± 0.16 μs 0.915 ± 0.41
bench_linux/PSE_status_registry_lookup_256 0.291 ± 0.07 μs 0.321 ± 0.06 μs 0.907 ± 0.28
bench_linux/PSE_status_registry_lookup_32 0.2 ± 0.04 μs 0.201 ± 0.029 μs 0.995 ± 0.25
bench_linux/PSE_status_registry_sweep_1024 0.1 ± 0.002 ms 0.11 ± 0.02 ms 0.913 ± 0.17
bench_linux/PSE_status_registry_sweep_256 23.4 ± 0.73 μs 23 ± 1.3 μs 1.02 ± 0.066
bench_linux/PSE_status_registry_sweep_32 3.09 ± 0.23 μs 3.18 ± 0.21 μs 0.972 ± 0.097
time_to_load 2.13 ± 0.038 s 2.2 ± 0.035 s 0.971 ± 0.023
Memory benchmarks
main deca45a... main / deca45a...
bench_linux/PSE 0.068 G allocs: 4.6 GB 0.068 G allocs: 4.6 GB 1
bench_linux/PSE_assign_outputs_broadcast_exact_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_broadcast_exact_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_broadcast_exact_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_columns_19columns_exact_1000 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_exact_10 5 allocs: 0.297 kB 5 allocs: 0.297 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_exact_1000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_exact_10000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_permuted_10 5 allocs: 0.297 kB 5 allocs: 0.297 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_permuted_1000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_columns_2columns_permuted_10000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_columns_7columns_exact_1000 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_columns_exact_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_columns_exact_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_columns_exact_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_10 23 allocs: 0.578 kB 23 allocs: 0.578 kB 1
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_1000 2 k allocs: 31.5 kB 2 k allocs: 31.5 kB 1
bench_linux/PSE_assign_outputs_columns_heterogeneous_exact_10000 20 k allocs: 0.305 MB 20 k allocs: 0.305 MB 1
bench_linux/PSE_assign_outputs_columns_permuted_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_columns_permuted_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_columns_permuted_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_control_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_control_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_control_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_ref_loop_2columns_exact_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_ref_loop_exact_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_ref_loop_exact_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_ref_loop_exact_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_10 13 allocs: 0.422 kB 13 allocs: 0.422 kB 1
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_1000 1 k allocs: 15.9 kB 1 k allocs: 15.9 kB 1
bench_linux/PSE_assign_outputs_ref_loop_heterogeneous_exact_10000 10 k allocs: 0.153 MB 10 k allocs: 0.153 MB 1
bench_linux/PSE_assign_outputs_table_2columns_exact_10 5 allocs: 0.297 kB 5 allocs: 0.297 kB 1
bench_linux/PSE_assign_outputs_table_2columns_exact_1000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_table_2columns_exact_10000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_table_2columns_permuted_10 5 allocs: 0.297 kB 5 allocs: 0.297 kB 1
bench_linux/PSE_assign_outputs_table_2columns_permuted_1000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_table_2columns_permuted_10000 6 allocs: 0.312 kB 6 allocs: 0.312 kB 1
bench_linux/PSE_assign_outputs_table_exact_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_table_exact_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_table_exact_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_table_permuted_10 3 allocs: 0.266 kB 3 allocs: 0.266 kB 1
bench_linux/PSE_assign_outputs_table_permuted_1000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_assign_outputs_table_permuted_10000 4 allocs: 0.281 kB 4 allocs: 0.281 kB 1
bench_linux/PSE_bound_many_input_steps_1000 0.3 k allocs: 26.6 kB 0.3 k allocs: 26.6 kB 1
bench_linux/PSE_bound_many_sum_1000 2 allocs: 32 B 2 allocs: 32 B 1
bench_linux/PSE_bound_many_sum_100000 2 allocs: 32 B 2 allocs: 32 B 1
bench_linux/PSE_bound_objectref_sum_1000 1 k allocs: 15.6 kB 1 k allocs: 15.6 kB 1
bench_linux/PSE_bound_objectref_sum_100000 0.1 M allocs: 1.53 MB 0.1 M allocs: 1.53 MB 1
bench_linux/PSE_call_binding_signature_4096 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_compiled_hard_call_heterogeneous 1.73 k allocs: 0.13 MB 1.73 k allocs: 0.13 MB 1
bench_linux/PSE_compiled_hard_call_many 0.144 M allocs: 7.39 MB 0.144 M allocs: 7.39 MB 1
bench_linux/PSE_compiled_hard_call_nested 1.95 k allocs: 0.147 MB 1.95 k allocs: 0.147 MB 1
bench_linux/PSE_compiled_hard_call_published 1.48 k allocs: 0.111 MB 1.48 k allocs: 0.111 MB 1
bench_linux/PSE_compiled_hard_call_repeated 1.48 k allocs: 0.111 MB 1.48 k allocs: 0.111 MB 1
bench_linux/PSE_compiled_hard_call_sampled_environment 1.53 k allocs: 0.113 MB 1.53 k allocs: 0.113 MB 1
bench_linux/PSE_compiled_hard_call_singular 1.48 k allocs: 0.111 MB 1.48 k allocs: 0.111 MB 1
bench_linux/PSE_distributed_assign_broadcast_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_broadcast_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_broadcast_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_columns_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_columns_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_columns_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_exact_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_exact_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_exact_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_exact_100000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_heterogeneous_10 13 allocs: 0.203 kB 13 allocs: 0.203 kB 1
bench_linux/PSE_distributed_assign_heterogeneous_1000 1.33 k allocs: 20.8 kB 1.33 k allocs: 20.8 kB 1
bench_linux/PSE_distributed_assign_heterogeneous_10000 13.3 k allocs: 0.203 MB 13.3 k allocs: 0.203 MB 1
bench_linux/PSE_distributed_assign_permuted_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_permuted_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_permuted_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_permuted_100000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_sparse_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_sparse_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_sparse_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_status_10 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_distributed_assign_status_1000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_assign_status_10000 1 allocs: 16 B 1 allocs: 16 B 1
bench_linux/PSE_distributed_compile_active_1000 0.045 M allocs: 2.21 MB 0.045 M allocs: 2.21 MB 1
bench_linux/PSE_distributed_compile_none_1000 0.423 k allocs: 25.4 kB 0.423 k allocs: 25.4 kB 1
bench_linux/PSE_distributed_compile_permutation_1000 13 allocs: 0.0413 MB 13 allocs: 0.0413 MB 1
bench_linux/PSE_distributed_lifecycle_add_1000 23.8 k allocs: 1.27 MB 23.8 k allocs: 1.27 MB 1
bench_linux/PSE_distributed_mapping_refresh_10 9 allocs: 0.938 kB 9 allocs: 0.938 kB 1
bench_linux/PSE_distributed_mapping_refresh_1000 14 allocs: 0.0414 MB 14 allocs: 0.0414 MB 1
bench_linux/PSE_distributed_mapping_refresh_10000 14 allocs: 0.344 MB 14 allocs: 0.344 MB 1
bench_linux/PSE_hard_calls_dense 1.57 M allocs: 0.159 GB 1.57 M allocs: 0.159 GB 1
bench_linux/PSE_hard_calls_sparse 0.187 M allocs: 9.89 MB 0.187 M allocs: 9.89 MB 1
bench_linux/PSE_hard_calls_zero 0.209 M allocs: 11.2 MB 0.209 M allocs: 11.2 MB 1
bench_linux/PSE_immutable_scenario_all 1.17 k allocs: 0.738 MB 1.17 k allocs: 0.738 MB 1
bench_linux/PSE_immutable_scenario_none 0.15 k allocs: 13.3 kB 0.15 k allocs: 13.3 kB 1
bench_linux/PSE_immutable_scenario_requests 1.17 k allocs: 0.738 MB 1.17 k allocs: 0.738 MB 1
bench_linux/PSE_lifecycle_immediate_hard_call 16.1 k allocs: 1.72 MB 16.1 k allocs: 1.72 MB 1
bench_linux/PSE_lifecycle_large 10.9 k allocs: 0.955 MB 10.9 k allocs: 0.955 MB 1
bench_linux/PSE_lifecycle_small 0.843 k allocs: 0.044 MB 0.843 k allocs: 0.044 MB 1
bench_linux/PSE_many_cadence_schedule 14.3 k allocs: 1.24 MB 14.3 k allocs: 1.24 MB 1
bench_linux/PSE_multirate_no_output_run 2.97 M allocs: 0.187 GB 2.97 M allocs: 0.187 GB 1
bench_linux/PSE_multirate_output_request_run 3.04 M allocs: 0.21 GB 3.04 M allocs: 0.21 GB 1
bench_linux/PSE_multirate_retain_all_run 2.96 M allocs: 0.208 GB 2.96 M allocs: 0.208 GB 1
bench_linux/PSE_objectref_sum_1000 1 k allocs: 15.6 kB 1 k allocs: 15.6 kB 1
bench_linux/PSE_objectref_sum_100000 0.1 M allocs: 1.53 MB 0.1 M allocs: 1.53 MB 1
bench_linux/PSE_organ_adaptation_1024 0.0414 M allocs: 2.17 MB 0.0414 M allocs: 2.17 MB 1
bench_linux/PSE_organ_adaptation_256 10.6 k allocs: 0.553 MB 10.6 k allocs: 0.553 MB 1
bench_linux/PSE_organ_adaptation_32 1.58 k allocs: 0.066 MB 1.58 k allocs: 0.066 MB 1
bench_linux/PSE_organ_add_1024 0.074 k allocs: 3.21 kB 0.074 k allocs: 3.21 kB 1
bench_linux/PSE_organ_add_256 0.073 k allocs: 3.2 kB 0.073 k allocs: 3.2 kB 1
bench_linux/PSE_organ_add_32 0.075 k allocs: 5.48 kB 0.075 k allocs: 5.48 kB 1
bench_linux/PSE_organ_add_continue_1024 1.58 k allocs: 0.122 MB 1.58 k allocs: 0.122 MB 1
bench_linux/PSE_organ_add_continue_256 0.806 k allocs: 0.051 MB 0.806 k allocs: 0.051 MB 1
bench_linux/PSE_organ_add_continue_32 0.578 k allocs: 0.0327 MB 0.578 k allocs: 0.0327 MB 1
bench_linux/PSE_organ_add_refresh_1024 0.402 k allocs: 20 kB 0.402 k allocs: 20 kB 1
bench_linux/PSE_organ_add_refresh_256 0.398 k allocs: 20 kB 0.398 k allocs: 20 kB 1
bench_linux/PSE_organ_add_refresh_32 0.397 k allocs: 22.2 kB 0.397 k allocs: 22.2 kB 1
bench_linux/PSE_organ_refresh_1024 0.329 k allocs: 16.8 kB 0.329 k allocs: 16.8 kB 1
bench_linux/PSE_organ_refresh_256 0.325 k allocs: 16.8 kB 0.325 k allocs: 16.8 kB 1
bench_linux/PSE_organ_refresh_32 0.322 k allocs: 16.7 kB 0.322 k allocs: 16.7 kB 1
bench_linux/PSE_organ_status_recipe_refresh_1024 2.15 k allocs: 0.141 MB 2.15 k allocs: 0.141 MB 1
bench_linux/PSE_organ_status_recipe_refresh_256 2.15 k allocs: 0.135 MB 2.15 k allocs: 0.135 MB 1
bench_linux/PSE_organ_status_recipe_refresh_32 2.15 k allocs: 0.133 MB 2.15 k allocs: 0.133 MB 1
bench_linux/PSE_refvector_sum_1000 2 allocs: 32 B 2 allocs: 32 B 1
bench_linux/PSE_refvector_sum_100000 2 allocs: 32 B 2 allocs: 32 B 1
bench_linux/PSE_selector_subtree_root_2048 8.26 k allocs: 0.441 MB 8.26 k allocs: 0.441 MB 1
bench_linux/PSE_selector_subtree_tip_2048 20 allocs: 0.609 kB 20 allocs: 0.609 kB 1
bench_linux/PSE_status_many_input_steps_1000 0.3 k allocs: 26.6 kB 0.3 k allocs: 26.6 kB 1
bench_linux/PSE_status_read_write 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_lookup_1024 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_lookup_256 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_lookup_32 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_sweep_1024 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_sweep_256 0 allocs: 0 B 0 allocs: 0 B
bench_linux/PSE_status_registry_sweep_32 0 allocs: 0 B 0 allocs: 0 B
time_to_load 0.149 k allocs: 11.1 kB 0.149 k allocs: 11.1 kB 1

@VEZY
VEZY merged commit 0645e78 into main Oct 18, 2026
16 checks passed
@VEZY
VEZY deleted the codex/downstream-benchmark-memory branch October 18, 2026 13:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant