Skip to content

[Distributed] Add use_broadcast kwarg to init_remote / from_remote_init - #1593

Merged
vmoens merged 5 commits into
gh/vmoens/76/basefrom
gh/vmoens/76/head
Feb 19, 2026
Merged

[Distributed] Add use_broadcast kwarg to init_remote / from_remote_init#1593
vmoens merged 5 commits into
gh/vmoens/76/basefrom
gh/vmoens/76/head

Conversation

@vmoens

@vmoens vmoens commented Feb 18, 2026

Copy link
Copy Markdown
Collaborator

[ghstack-poisoned]
vmoens added a commit that referenced this pull request Feb 18, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: e12cc05
Pull-Request: #1593
@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Feb 18, 2026
@github-actions

github-actions Bot commented Feb 18, 2026

Copy link
Copy Markdown
Contributor

$\color{#D29922}\textsf{\Large&amp;#x26A0;\kern{0.2cm}\normalsize Warning}$ Result of GPU Benchmark Tests

Total Benchmarks: 243. Improved: $\large\color{#35bf28}35$. Worsened: $\large\color{#d91a1a}8$.

Expand to view detailed results
Name Max Mean Ops Ops on Repo HEAD Change
test_plain_set_nested 43.0810μs 14.5846μs 68.5655 KOps/s 66.8590 KOps/s $\color{#35bf28}+2.55\%$
test_plain_set_stack_nested 42.8410μs 14.8468μs 67.3545 KOps/s 66.4060 KOps/s $\color{#35bf28}+1.43\%$
test_plain_set_nested_inplace 42.3000μs 16.3036μs 61.3362 KOps/s 60.4080 KOps/s $\color{#35bf28}+1.54\%$
test_plain_set_stack_nested_inplace 48.0110μs 16.2515μs 61.5328 KOps/s 60.5083 KOps/s $\color{#35bf28}+1.69\%$
test_items 36.2910μs 5.7851μs 172.8573 KOps/s 174.1737 KOps/s $\color{#d91a1a}-0.76\%$
test_items_nested 0.4901ms 0.4522ms 2.2114 KOps/s 2.1941 KOps/s $\color{#35bf28}+0.79\%$
test_items_nested_locked 0.5155ms 0.4515ms 2.2148 KOps/s 2.1902 KOps/s $\color{#35bf28}+1.12\%$
test_items_nested_leaf 0.1275ms 95.9600μs 10.4210 KOps/s 10.3383 KOps/s $\color{#35bf28}+0.80\%$
test_items_stack_nested 0.5304ms 0.4483ms 2.2305 KOps/s 2.1772 KOps/s $\color{#35bf28}+2.45\%$
test_items_stack_nested_leaf 0.1441ms 96.2552μs 10.3890 KOps/s 10.4480 KOps/s $\color{#d91a1a}-0.56\%$
test_items_stack_nested_locked 0.5302ms 0.4547ms 2.1993 KOps/s 2.1693 KOps/s $\color{#35bf28}+1.38\%$
test_keys 19.8600μs 4.2354μs 236.1036 KOps/s 231.7325 KOps/s $\color{#35bf28}+1.89\%$
test_keys_nested 0.1626ms 0.1209ms 8.2697 KOps/s 8.2457 KOps/s $\color{#35bf28}+0.29\%$
test_keys_nested_locked 0.7188ms 0.1297ms 7.7094 KOps/s 7.6980 KOps/s $\color{#35bf28}+0.15\%$
test_keys_nested_leaf 0.1483ms 0.1111ms 9.0042 KOps/s 8.9379 KOps/s $\color{#35bf28}+0.74\%$
test_keys_stack_nested 0.1773ms 0.1212ms 8.2499 KOps/s 8.2763 KOps/s $\color{#d91a1a}-0.32\%$
test_keys_stack_nested_leaf 0.1652ms 0.1107ms 9.0347 KOps/s 8.9118 KOps/s $\color{#35bf28}+1.38\%$
test_keys_stack_nested_locked 0.1779ms 0.1298ms 7.7030 KOps/s 7.6886 KOps/s $\color{#35bf28}+0.19\%$
test_values 9.8442μs 1.0195μs 980.8586 KOps/s 985.0617 KOps/s $\color{#d91a1a}-0.43\%$
test_values_nested 69.4510μs 47.9583μs 20.8515 KOps/s 20.9443 KOps/s $\color{#d91a1a}-0.44\%$
test_values_nested_locked 83.8720μs 50.7725μs 19.6957 KOps/s 19.3642 KOps/s $\color{#35bf28}+1.71\%$
test_values_nested_leaf 78.0620μs 54.4647μs 18.3605 KOps/s 18.1609 KOps/s $\color{#35bf28}+1.10\%$
test_values_stack_nested 77.5810μs 47.5046μs 21.0506 KOps/s 20.5114 KOps/s $\color{#35bf28}+2.63\%$
test_values_stack_nested_leaf 80.8420μs 54.3057μs 18.4143 KOps/s 18.1417 KOps/s $\color{#35bf28}+1.50\%$
test_values_stack_nested_locked 92.7920μs 50.4642μs 19.8160 KOps/s 19.4276 KOps/s $\color{#35bf28}+2.00\%$
test_membership 4.6435μs 0.8500μs 1.1764 MOps/s 1.1941 MOps/s $\color{#d91a1a}-1.48\%$
test_membership_nested 67.1410μs 2.9127μs 343.3236 KOps/s 344.6853 KOps/s $\color{#d91a1a}-0.40\%$
test_membership_nested_leaf 30.4600μs 2.8966μs 345.2346 KOps/s 341.1678 KOps/s $\color{#35bf28}+1.19\%$
test_membership_stacked_nested 25.9310μs 2.9197μs 342.5064 KOps/s 341.4346 KOps/s $\color{#35bf28}+0.31\%$
test_membership_stacked_nested_leaf 36.0900μs 2.9302μs 341.2765 KOps/s 339.5171 KOps/s $\color{#35bf28}+0.52\%$
test_membership_nested_last 32.8810μs 4.3750μs 228.5698 KOps/s 224.3754 KOps/s $\color{#35bf28}+1.87\%$
test_membership_nested_leaf_last 29.4500μs 4.3814μs 228.2387 KOps/s 224.0807 KOps/s $\color{#35bf28}+1.86\%$
test_membership_stacked_nested_last 30.1810μs 4.3740μs 228.6221 KOps/s 226.8524 KOps/s $\color{#35bf28}+0.78\%$
test_membership_stacked_nested_leaf_last 29.3600μs 4.3898μs 227.8019 KOps/s 225.0870 KOps/s $\color{#35bf28}+1.21\%$
test_nested_getleaf 47.5710μs 21.4287μs 46.6663 KOps/s 46.8424 KOps/s $\color{#d91a1a}-0.38\%$
test_nested_get 48.0510μs 20.2173μs 49.4625 KOps/s 48.6578 KOps/s $\color{#35bf28}+1.65\%$
test_stacked_getleaf 46.0010μs 21.6708μs 46.1451 KOps/s 45.7180 KOps/s $\color{#35bf28}+0.93\%$
test_stacked_get 49.6710μs 20.1661μs 49.5882 KOps/s 47.8559 KOps/s $\color{#35bf28}+3.62\%$
test_nested_getitemleaf 50.2210μs 22.0678μs 45.3148 KOps/s 44.7647 KOps/s $\color{#35bf28}+1.23\%$
test_nested_getitem 82.6210μs 20.6791μs 48.3580 KOps/s 47.1562 KOps/s $\color{#35bf28}+2.55\%$
test_stacked_getitemleaf 47.7010μs 21.8453μs 45.7765 KOps/s 45.2248 KOps/s $\color{#35bf28}+1.22\%$
test_stacked_getitem 44.1310μs 21.2032μs 47.1627 KOps/s 47.2734 KOps/s $\color{#d91a1a}-0.23\%$
test_lock_nested 7.8663ms 0.4767ms 2.0976 KOps/s 2.0772 KOps/s $\color{#35bf28}+0.98\%$
test_lock_stack_nested 0.5080ms 0.4756ms 2.1028 KOps/s 2.0560 KOps/s $\color{#35bf28}+2.27\%$
test_unlock_nested 0.5739ms 0.3784ms 2.6429 KOps/s 2.5734 KOps/s $\color{#35bf28}+2.70\%$
test_unlock_stack_nested 0.4192ms 0.3803ms 2.6298 KOps/s 2.5447 KOps/s $\color{#35bf28}+3.34\%$
test_flatten_speed 0.1723ms 0.1211ms 8.2573 KOps/s 8.0776 KOps/s $\color{#35bf28}+2.23\%$
test_unflatten_speed 0.6153ms 0.5681ms 1.7601 KOps/s 1.7156 KOps/s $\color{#35bf28}+2.60\%$
test_common_ops 0.8924ms 0.7153ms 1.3980 KOps/s 1.4495 KOps/s $\color{#d91a1a}-3.55\%$
test_creation 30.1510μs 2.8465μs 351.3038 KOps/s 335.6047 KOps/s $\color{#35bf28}+4.68\%$
test_creation_empty 28.5300μs 6.0918μs 164.1561 KOps/s 159.4394 KOps/s $\color{#35bf28}+2.96\%$
test_creation_nested_1 58.5210μs 10.3793μs 96.3459 KOps/s 93.6846 KOps/s $\color{#35bf28}+2.84\%$
test_creation_nested_2 34.4110μs 11.8243μs 84.5716 KOps/s 83.4875 KOps/s $\color{#35bf28}+1.30\%$
test_creation_many_keys[10] 47.8710μs 18.1408μs 55.1244 KOps/s 53.9920 KOps/s $\color{#35bf28}+2.10\%$
test_creation_many_keys[50] 0.1050ms 78.1080μs 12.8028 KOps/s 12.7874 KOps/s $\color{#35bf28}+0.12\%$
test_creation_many_keys[100] 0.2048ms 0.1528ms 6.5435 KOps/s 6.5808 KOps/s $\color{#d91a1a}-0.57\%$
test_creation_nested_many_keys[10] 79.4420μs 39.3431μs 25.4174 KOps/s 25.4022 KOps/s $\color{#35bf28}+0.06\%$
test_creation_nested_many_keys[50] 0.1952ms 0.1599ms 6.2533 KOps/s 6.3031 KOps/s $\color{#d91a1a}-0.79\%$
test_clone 48.2210μs 13.3463μs 74.9274 KOps/s 73.5524 KOps/s $\color{#35bf28}+1.87\%$
test_getitem[int] 1.5513ms 14.5987μs 68.4992 KOps/s 56.1938 KOps/s $\textbf{\color{#35bf28}+21.90\%}$
test_getitem[slice_int] 0.1821ms 24.4874μs 40.8372 KOps/s 38.7210 KOps/s $\textbf{\color{#35bf28}+5.47\%}$
test_getitem[range] 0.1774ms 61.0532μs 16.3792 KOps/s 15.6051 KOps/s $\color{#35bf28}+4.96\%$
test_getitem[tuple] 0.1442ms 24.0586μs 41.5652 KOps/s 40.2809 KOps/s $\color{#35bf28}+3.19\%$
test_getitem[list] 0.1790ms 57.2179μs 17.4770 KOps/s 16.4246 KOps/s $\textbf{\color{#35bf28}+6.41\%}$
test_setitem_dim[int] 46.5310μs 25.6514μs 38.9842 KOps/s 35.1917 KOps/s $\textbf{\color{#35bf28}+10.78\%}$
test_setitem_dim[slice_int] 72.7820μs 43.6407μs 22.9144 KOps/s 21.4144 KOps/s $\textbf{\color{#35bf28}+7.00\%}$
test_setitem_dim[range] 0.1277ms 94.1619μs 10.6200 KOps/s 9.9755 KOps/s $\textbf{\color{#35bf28}+6.46\%}$
test_setitem_dim[tuple] 60.4710μs 39.6457μs 25.2234 KOps/s 23.1122 KOps/s $\textbf{\color{#35bf28}+9.13\%}$
test_setitem 49.5410μs 17.6761μs 56.5737 KOps/s 52.0336 KOps/s $\textbf{\color{#35bf28}+8.73\%}$
test_set 52.0810μs 16.9536μs 58.9846 KOps/s 55.2073 KOps/s $\textbf{\color{#35bf28}+6.84\%}$
test_set_shared 0.5126ms 0.2056ms 4.8647 KOps/s 4.6999 KOps/s $\color{#35bf28}+3.51\%$
test_update 0.2048ms 21.6413μs 46.2080 KOps/s 43.3071 KOps/s $\textbf{\color{#35bf28}+6.70\%}$
test_update_nested 79.3120μs 33.4576μs 29.8886 KOps/s 28.3361 KOps/s $\textbf{\color{#35bf28}+5.48\%}$
test_update__nested 0.4785ms 34.0875μs 29.3363 KOps/s 27.0126 KOps/s $\textbf{\color{#35bf28}+8.60\%}$
test_set_nested 56.3810μs 18.8412μs 53.0751 KOps/s 48.1837 KOps/s $\textbf{\color{#35bf28}+10.15\%}$
test_set_nested_new 62.5920μs 23.9828μs 41.6966 KOps/s 38.5054 KOps/s $\textbf{\color{#35bf28}+8.29\%}$
test_select 81.1510μs 41.3720μs 24.1709 KOps/s 22.6840 KOps/s $\textbf{\color{#35bf28}+6.56\%}$
test_select_nested 0.1053ms 74.7290μs 13.3817 KOps/s 13.3855 KOps/s $\color{#d91a1a}-0.03\%$
test_exclude_nested 0.1420ms 91.5092μs 10.9279 KOps/s 10.8208 KOps/s $\color{#35bf28}+0.99\%$
test_empty[True] 0.4165ms 0.3885ms 2.5738 KOps/s 2.5425 KOps/s $\color{#35bf28}+1.23\%$
test_empty[False] 9.5527μs 1.3345μs 749.3673 KOps/s 759.1535 KOps/s $\color{#d91a1a}-1.29\%$
test_to 0.1018ms 69.7201μs 14.3431 KOps/s 12.9743 KOps/s $\textbf{\color{#35bf28}+10.55\%}$
test_to_nonblocking 0.1061ms 63.1840μs 15.8268 KOps/s 14.9182 KOps/s $\textbf{\color{#35bf28}+6.09\%}$
test_unbind_speed 0.3591ms 0.3264ms 3.0638 KOps/s 3.0665 KOps/s $\color{#d91a1a}-0.09\%$
test_unbind_speed_stack0 0.4059ms 0.3234ms 3.0921 KOps/s 3.0901 KOps/s $\color{#35bf28}+0.06\%$
test_unbind_speed_stack1 0.1025s 0.8363ms 1.1957 KOps/s 1.1728 KOps/s $\color{#35bf28}+1.96\%$
test_split 0.1023s 1.2606ms 793.2543 Ops/s 778.8873 Ops/s $\color{#35bf28}+1.84\%$
test_chunk 0.1027s 1.2113ms 825.5402 Ops/s 922.5287 Ops/s $\textbf{\color{#d91a1a}-10.51\%}$
test_to_cpu_blocking 28.2313ms 27.9028ms 35.8388 Ops/s 47.3051 Ops/s $\textbf{\color{#d91a1a}-24.24\%}$
test_to_cpu_global_sync 11.1834ms 11.0648ms 90.3770 Ops/s 89.1730 Ops/s $\color{#35bf28}+1.35\%$
test_to_cpu_event_sync 0.1146s 13.1916ms 75.8059 Ops/s 82.6287 Ops/s $\textbf{\color{#d91a1a}-8.26\%}$
test_to_cpu_default 12.2777ms 11.9600ms 83.6119 Ops/s 82.4691 Ops/s $\color{#35bf28}+1.39\%$
test_consolidate[False-None] 4.1653ms 4.1137ms 243.0884 Ops/s 218.4490 Ops/s $\textbf{\color{#35bf28}+11.28\%}$
test_consolidate[default-None] 2.0864ms 2.0070ms 498.2562 Ops/s 482.2085 Ops/s $\color{#35bf28}+3.33\%$
test_consolidate[reduce-overhead-None] 2.0119ms 1.9289ms 518.4288 Ops/s 502.0491 Ops/s $\color{#35bf28}+3.26\%$
test_consolidate_njt[False-None] 8.6532ms 8.4764ms 117.9739 Ops/s 115.5226 Ops/s $\color{#35bf28}+2.12\%$
test_to[False-False-None] 2.1758ms 2.0578ms 485.9521 Ops/s 479.0618 Ops/s $\color{#35bf28}+1.44\%$
test_to[True-False-None] 2.1982ms 1.9054ms 524.8353 Ops/s 510.9064 Ops/s $\color{#35bf28}+2.73\%$
test_to[within-False-None] 6.1526ms 6.1004ms 163.9237 Ops/s 162.8140 Ops/s $\color{#35bf28}+0.68\%$
test_to[True-default-None] 8.0240ms 7.5747ms 132.0183 Ops/s 125.6318 Ops/s $\textbf{\color{#35bf28}+5.08\%}$
test_to_njt[False-False-None] 8.7366ms 8.4711ms 118.0484 Ops/s 113.8373 Ops/s $\color{#35bf28}+3.70\%$
test_to_njt[True-False-None] 7.0976ms 6.9999ms 142.8588 Ops/s 135.8302 Ops/s $\textbf{\color{#35bf28}+5.17\%}$
test_to_njt[within-False-None] 15.9288ms 15.5747ms 64.2068 Ops/s 63.2903 Ops/s $\color{#35bf28}+1.45\%$
test_creation[device0] 0.3982ms 0.1160ms 8.6226 KOps/s 8.3901 KOps/s $\color{#35bf28}+2.77\%$
test_creation_from_tensor 0.4593ms 0.1138ms 8.7861 KOps/s 8.7227 KOps/s $\color{#35bf28}+0.73\%$
test_add_one[memmap_tensor0] 0.3332ms 6.5041μs 153.7500 KOps/s 149.5484 KOps/s $\color{#35bf28}+2.81\%$
test_contiguous[memmap_tensor0] 30.3900μs 0.6728μs 1.4864 MOps/s 2.1543 MOps/s $\textbf{\color{#d91a1a}-31.00\%}$
test_stack[memmap_tensor0] 35.5310μs 4.5641μs 219.1030 KOps/s 212.9825 KOps/s $\color{#35bf28}+2.87\%$
test_memmaptd_index 1.0129ms 0.2628ms 3.8052 KOps/s 3.7866 KOps/s $\color{#35bf28}+0.49\%$
test_memmaptd_index_astensor 0.5147ms 0.3562ms 2.8073 KOps/s 2.7762 KOps/s $\color{#35bf28}+1.12\%$
test_memmaptd_index_op 0.8402ms 0.5997ms 1.6676 KOps/s 1.6545 KOps/s $\color{#35bf28}+0.79\%$
test_serialize_model 0.3164s 0.1619s 6.1781 Ops/s 7.3215 Ops/s $\textbf{\color{#d91a1a}-15.62\%}$
test_serialize_model_pickle 1.3521s 1.2110s 0.8257 Ops/s 0.7958 Ops/s $\color{#35bf28}+3.76\%$
test_serialize_weights 0.1382s 0.1357s 7.3692 Ops/s 7.3233 Ops/s $\color{#35bf28}+0.63\%$
test_serialize_weights_returnearly 0.4451s 92.9861ms 10.7543 Ops/s 14.6178 Ops/s $\textbf{\color{#d91a1a}-26.43\%}$
test_serialize_weights_pickle 1.3690s 1.1946s 0.8371 Ops/s 0.8229 Ops/s $\color{#35bf28}+1.72\%$
test_reshape_pytree 0.2117ms 33.7456μs 29.6335 KOps/s 29.8590 KOps/s $\color{#d91a1a}-0.76\%$
test_reshape_td 73.3820μs 45.1459μs 22.1504 KOps/s 22.6683 KOps/s $\color{#d91a1a}-2.28\%$
test_view_pytree 0.2246ms 33.2854μs 30.0432 KOps/s 30.2304 KOps/s $\color{#d91a1a}-0.62\%$
test_view_td 88.1110μs 53.8747μs 18.5616 KOps/s 19.0264 KOps/s $\color{#d91a1a}-2.44\%$
test_unbind_pytree 0.2364ms 37.5343μs 26.6423 KOps/s 26.4107 KOps/s $\color{#35bf28}+0.88\%$
test_unbind_td 0.1460ms 49.1441μs 20.3483 KOps/s 20.2470 KOps/s $\color{#35bf28}+0.50\%$
test_split_pytree 0.1996ms 43.4255μs 23.0280 KOps/s 23.0016 KOps/s $\color{#35bf28}+0.11\%$
test_split_td 0.1224ms 68.6049μs 14.5762 KOps/s 15.0104 KOps/s $\color{#d91a1a}-2.89\%$
test_add_pytree 0.2408ms 42.4488μs 23.5578 KOps/s 23.4871 KOps/s $\color{#35bf28}+0.30\%$
test_add_td 89.4020μs 53.3738μs 18.7358 KOps/s 18.2763 KOps/s $\color{#35bf28}+2.51\%$
test_compile_add_one_nested[tensordict-compile] 0.1950ms 0.1414ms 7.0698 KOps/s 6.4315 KOps/s $\textbf{\color{#35bf28}+9.92\%}$
test_compile_add_one_nested[tensordict-eager] 0.4027ms 0.1938ms 5.1587 KOps/s 5.2325 KOps/s $\color{#d91a1a}-1.41\%$
test_compile_add_one_nested[pytree-compile] 0.1651ms 0.1093ms 9.1465 KOps/s 8.9944 KOps/s $\color{#35bf28}+1.69\%$
test_compile_add_one_nested[pytree-eager] 0.4298ms 0.1793ms 5.5773 KOps/s 5.3802 KOps/s $\color{#35bf28}+3.66\%$
test_compile_copy_nested[tensordict-compile] 61.1010μs 31.0324μs 32.2244 KOps/s 28.3752 KOps/s $\textbf{\color{#35bf28}+13.56\%}$
test_compile_copy_nested[tensordict-eager] 89.0020μs 52.7466μs 18.9586 KOps/s 18.9315 KOps/s $\color{#35bf28}+0.14\%$
test_compile_copy_nested[pytree-compile] 0.1360ms 9.7098μs 102.9887 KOps/s 101.7138 KOps/s $\color{#35bf28}+1.25\%$
test_compile_copy_nested[pytree-eager] 0.4486ms 69.7745μs 14.3319 KOps/s 14.3499 KOps/s $\color{#d91a1a}-0.13\%$
test_compile_add_one_flat[tensordict-compile] 0.2246ms 0.1778ms 5.6228 KOps/s 5.2253 KOps/s $\textbf{\color{#35bf28}+7.61\%}$
test_compile_add_one_flat[tensordict-eager] 0.3137ms 0.2520ms 3.9689 KOps/s 3.8700 KOps/s $\color{#35bf28}+2.55\%$
test_compile_add_one_flat[tensorclass-compile] 0.1798ms 0.1230ms 8.1319 KOps/s 7.8861 KOps/s $\color{#35bf28}+3.12\%$
test_compile_add_one_flat[tensorclass-eager] 0.1245ms 71.4122μs 14.0032 KOps/s 13.7787 KOps/s $\color{#35bf28}+1.63\%$
test_compile_add_one_flat[pytree-compile] 0.2073ms 0.1606ms 6.2252 KOps/s 6.0022 KOps/s $\color{#35bf28}+3.71\%$
test_compile_add_one_flat[pytree-eager] 0.8524ms 0.5579ms 1.7925 KOps/s 1.8808 KOps/s $\color{#d91a1a}-4.70\%$
test_compile_add_self_flat[tensordict-eager] 0.4694ms 0.3050ms 3.2782 KOps/s 3.1996 KOps/s $\color{#35bf28}+2.46\%$
test_compile_add_self_flat[tensordict-compile] 0.2216ms 0.1800ms 5.5549 KOps/s 5.0831 KOps/s $\textbf{\color{#35bf28}+9.28\%}$
test_compile_add_self_flat[tensorclass-eager] 0.1434ms 85.3999μs 11.7096 KOps/s 11.6219 KOps/s $\color{#35bf28}+0.76\%$
test_compile_add_self_flat[tensorclass-compile] 0.1788ms 0.1240ms 8.0668 KOps/s 7.5919 KOps/s $\textbf{\color{#35bf28}+6.26\%}$
test_compile_add_self_flat[pytree-eager] 0.6648ms 0.4364ms 2.2913 KOps/s 2.2693 KOps/s $\color{#35bf28}+0.97\%$
test_compile_add_self_flat[pytree-compile] 0.2200ms 0.1599ms 6.2557 KOps/s 5.9298 KOps/s $\textbf{\color{#35bf28}+5.50\%}$
test_compile_copy_flat[tensordict-compile] 72.0120μs 23.6099μs 42.3551 KOps/s 37.8420 KOps/s $\textbf{\color{#35bf28}+11.93\%}$
test_compile_copy_flat[tensordict-eager] 87.2820μs 41.5499μs 24.0674 KOps/s 23.9953 KOps/s $\color{#35bf28}+0.30\%$
test_compile_copy_flat[pytree-compile] 0.1672ms 10.8506μs 92.1606 KOps/s 90.7261 KOps/s $\color{#35bf28}+1.58\%$
test_compile_copy_flat[pytree-eager] 0.4136ms 52.1801μs 19.1644 KOps/s 19.0611 KOps/s $\color{#35bf28}+0.54\%$
test_compile_assign_and_add[tensordict-compile] 2.0174ms 0.1745ms 5.7298 KOps/s 5.3969 KOps/s $\textbf{\color{#35bf28}+6.17\%}$
test_compile_assign_and_add[tensordict-eager] 3.5109ms 3.2437ms 308.2927 Ops/s 307.8170 Ops/s $\color{#35bf28}+0.15\%$
test_compile_assign_and_add[pytree-compile] 1.9708ms 0.1622ms 6.1645 KOps/s 6.0749 KOps/s $\color{#35bf28}+1.47\%$
test_compile_assign_and_add[pytree-eager] 2.9896ms 2.7691ms 361.1249 Ops/s 361.5175 Ops/s $\color{#d91a1a}-0.11\%$
test_compile_indexing[tensor-tensordict-compile] 0.1868ms 0.1099ms 9.0960 KOps/s 8.6905 KOps/s $\color{#35bf28}+4.67\%$
test_compile_indexing[tensor-tensordict-eager] 0.3203ms 73.8382μs 13.5431 KOps/s 13.4928 KOps/s $\color{#35bf28}+0.37\%$
test_compile_indexing[tensor-tensorclass-compile] 0.2059ms 97.2562μs 10.2821 KOps/s 10.0837 KOps/s $\color{#35bf28}+1.97\%$
test_compile_indexing[tensor-tensorclass-eager] 0.2568ms 44.5075μs 22.4681 KOps/s 21.8868 KOps/s $\color{#35bf28}+2.66\%$
test_compile_indexing[tensor-pytree-compile] 0.2843ms 99.4069μs 10.0597 KOps/s 9.9964 KOps/s $\color{#35bf28}+0.63\%$
test_compile_indexing[tensor-pytree-eager] 0.2492ms 45.2087μs 22.1197 KOps/s 21.9155 KOps/s $\color{#35bf28}+0.93\%$
test_compile_indexing[slice-tensordict-compile] 0.1464ms 56.4642μs 17.7103 KOps/s 16.8351 KOps/s $\textbf{\color{#35bf28}+5.20\%}$
test_compile_indexing[slice-tensordict-eager] 0.2256ms 27.8848μs 35.8618 KOps/s 34.9569 KOps/s $\color{#35bf28}+2.59\%$
test_compile_indexing[slice-tensorclass-compile] 0.1322ms 45.9339μs 21.7704 KOps/s 21.4613 KOps/s $\color{#35bf28}+1.44\%$
test_compile_indexing[slice-tensorclass-eager] 0.2563ms 22.5736μs 44.2996 KOps/s 43.1654 KOps/s $\color{#35bf28}+2.63\%$
test_compile_indexing[slice-pytree-compile] 85.2920μs 46.5040μs 21.5035 KOps/s 21.0259 KOps/s $\color{#35bf28}+2.27\%$
test_compile_indexing[slice-pytree-eager] 0.2646ms 22.4557μs 44.5321 KOps/s 43.4617 KOps/s $\color{#35bf28}+2.46\%$
test_compile_indexing[int-tensordict-compile] 0.1139ms 57.2297μs 17.4735 KOps/s 16.5296 KOps/s $\textbf{\color{#35bf28}+5.71\%}$
test_compile_indexing[int-tensordict-eager] 0.2290ms 27.3584μs 36.5519 KOps/s 34.7669 KOps/s $\textbf{\color{#35bf28}+5.13\%}$
test_compile_indexing[int-tensorclass-compile] 97.9320μs 46.2911μs 21.6024 KOps/s 21.0319 KOps/s $\color{#35bf28}+2.71\%$
test_compile_indexing[int-tensorclass-eager] 0.2568ms 22.2304μs 44.9834 KOps/s 42.9795 KOps/s $\color{#35bf28}+4.66\%$
test_compile_indexing[int-pytree-compile] 89.5620μs 46.1582μs 21.6646 KOps/s 21.0687 KOps/s $\color{#35bf28}+2.83\%$
test_compile_indexing[int-pytree-eager] 0.2739ms 22.4691μs 44.5055 KOps/s 43.1646 KOps/s $\color{#35bf28}+3.11\%$
test_mod_add[eager] 87.3120μs 49.8537μs 20.0587 KOps/s 20.0223 KOps/s $\color{#35bf28}+0.18\%$
test_mod_add[compile] 0.1605ms 0.1060ms 9.4298 KOps/s 9.2299 KOps/s $\color{#35bf28}+2.17\%$
test_mod_add[compile-overhead] 0.4478ms 0.1495ms 6.6871 KOps/s 6.5270 KOps/s $\color{#35bf28}+2.45\%$
test_mod_wrap[eager] 0.4094ms 0.2894ms 3.4558 KOps/s 3.4511 KOps/s $\color{#35bf28}+0.14\%$
test_mod_wrap[compile] 0.3866ms 0.3471ms 2.8813 KOps/s 2.8349 KOps/s $\color{#35bf28}+1.64\%$
test_mod_wrap[compile-overhead] 7.3473ms 4.0665ms 245.9117 Ops/s 249.4252 Ops/s $\color{#d91a1a}-1.41\%$
test_mod_wrap_and_backward[eager] 1.5703ms 1.4681ms 681.1640 Ops/s 627.5517 Ops/s $\textbf{\color{#35bf28}+8.54\%}$
test_mod_wrap_and_backward[compile] 1.5379ms 1.4338ms 697.4380 Ops/s 687.1737 Ops/s $\color{#35bf28}+1.49\%$
test_mod_wrap_and_backward[compile-overhead] 1.2587ms 0.8848ms 1.1302 KOps/s 1.1012 KOps/s $\color{#35bf28}+2.64\%$
test_seq_add[eager] 0.2255ms 0.1558ms 6.4178 KOps/s 6.4321 KOps/s $\color{#d91a1a}-0.22\%$
test_seq_add[compile] 0.1520ms 0.1142ms 8.7574 KOps/s 7.9053 KOps/s $\textbf{\color{#35bf28}+10.78\%}$
test_seq_add[compile-overhead] 0.3774ms 0.1578ms 6.3372 KOps/s 6.2160 KOps/s $\color{#35bf28}+1.95\%$
test_seq_wrap[eager] 0.6040ms 0.5201ms 1.9227 KOps/s 1.9237 KOps/s $\color{#d91a1a}-0.05\%$
test_seq_wrap[compile] 0.4061ms 0.3650ms 2.7395 KOps/s 2.6339 KOps/s $\color{#35bf28}+4.01\%$
test_seq_wrap[compile-overhead] 0.3470ms 0.2671ms 3.7433 KOps/s 3.6899 KOps/s $\color{#35bf28}+1.45\%$
test_func_call_runtime[False-eager] 0.9087ms 0.8265ms 1.2099 KOps/s 1.1957 KOps/s $\color{#35bf28}+1.19\%$
test_func_call_runtime[False-compile] 0.9864ms 0.9039ms 1.1063 KOps/s 1.0694 KOps/s $\color{#35bf28}+3.45\%$
test_func_call_runtime[False-compile-overhead] 0.5458ms 0.4599ms 2.1743 KOps/s 2.1388 KOps/s $\color{#35bf28}+1.66\%$
test_func_call_runtime[True-eager] 1.1218ms 1.0631ms 940.6490 Ops/s 921.7491 Ops/s $\color{#35bf28}+2.05\%$
test_func_call_runtime[True-compile] 0.9615ms 0.9102ms 1.0987 KOps/s 1.0868 KOps/s $\color{#35bf28}+1.10\%$
test_func_call_runtime[True-compile-overhead] 0.5413ms 0.4743ms 2.1084 KOps/s 2.0683 KOps/s $\color{#35bf28}+1.94\%$
test_func_call_cm_runtime[False-eager] 0.9468ms 0.8505ms 1.1758 KOps/s 1.2002 KOps/s $\color{#d91a1a}-2.04\%$
test_func_call_cm_runtime[False-compile] 0.9849ms 0.9020ms 1.1086 KOps/s 1.0977 KOps/s $\color{#35bf28}+0.99\%$
test_func_call_cm_runtime[False-compile-overhead] 0.5152ms 0.4646ms 2.1524 KOps/s 2.1340 KOps/s $\color{#35bf28}+0.86\%$
test_func_call_cm_runtime[True-eager] 1.3243ms 1.2114ms 825.4889 Ops/s 814.2623 Ops/s $\color{#35bf28}+1.38\%$
test_func_call_cm_runtime[True-compile] 1.0317ms 0.9461ms 1.0570 KOps/s 1.0413 KOps/s $\color{#35bf28}+1.50\%$
test_func_call_cm_runtime[True-compile-overhead] 0.5527ms 0.5056ms 1.9778 KOps/s 1.9405 KOps/s $\color{#35bf28}+1.93\%$
test_vmap_func_call_cm_runtime[eager] 2.9138ms 2.3399ms 427.3676 Ops/s 420.9744 Ops/s $\color{#35bf28}+1.52\%$
test_vmap_func_call_cm_runtime[compile] 1.0532ms 0.9622ms 1.0393 KOps/s 1.0235 KOps/s $\color{#35bf28}+1.54\%$
test_vmap_func_call_cm_runtime[compile-overhead] 0.5588ms 0.5101ms 1.9606 KOps/s 1.9286 KOps/s $\color{#35bf28}+1.66\%$
test_distributed 2.3612ms 0.1592ms 6.2795 KOps/s 6.4399 KOps/s $\color{#d91a1a}-2.49\%$
test_tdmodule 0.2626ms 29.2718μs 34.1626 KOps/s 33.2734 KOps/s $\color{#35bf28}+2.67\%$
test_tdmodule_dispatch 75.3010μs 45.9083μs 21.7825 KOps/s 21.3915 KOps/s $\color{#35bf28}+1.83\%$
test_tdseq 47.5010μs 27.5485μs 36.2996 KOps/s 34.9527 KOps/s $\color{#35bf28}+3.85\%$
test_tdseq_dispatch 0.1006ms 47.8884μs 20.8819 KOps/s 20.2086 KOps/s $\color{#35bf28}+3.33\%$
test_instantiation_functorch 2.1680ms 2.0515ms 487.4593 Ops/s 476.7845 Ops/s $\color{#35bf28}+2.24\%$
test_exec_functorch 0.2209ms 0.1797ms 5.5654 KOps/s 5.5014 KOps/s $\color{#35bf28}+1.16\%$
test_exec_functional_call 0.1983ms 0.1588ms 6.2967 KOps/s 6.1934 KOps/s $\color{#35bf28}+1.67\%$
test_exec_td_decorator 0.4490ms 0.2353ms 4.2499 KOps/s 4.1557 KOps/s $\color{#35bf28}+2.27\%$
test_vmap_mlp_speed_decorator[True-True] 1.0040ms 0.8154ms 1.2265 KOps/s 1.2065 KOps/s $\color{#35bf28}+1.65\%$
test_vmap_mlp_speed_decorator[True-False] 0.9882ms 0.8148ms 1.2273 KOps/s 1.2102 KOps/s $\color{#35bf28}+1.42\%$
test_vmap_mlp_speed_decorator[False-True] 0.8687ms 0.7052ms 1.4181 KOps/s 1.3914 KOps/s $\color{#35bf28}+1.92\%$
test_vmap_mlp_speed_decorator[False-False] 0.8757ms 0.7044ms 1.4197 KOps/s 1.3976 KOps/s $\color{#35bf28}+1.58\%$
test_vmap_transformer_speed_decorator[True-True] 20.7326ms 20.3044ms 49.2505 Ops/s 48.7650 Ops/s $\color{#35bf28}+1.00\%$
test_vmap_transformer_speed_decorator[True-False] 20.4552ms 20.3150ms 49.2248 Ops/s 48.8601 Ops/s $\color{#35bf28}+0.75\%$
test_vmap_transformer_speed_decorator[False-True] 20.2372ms 20.0950ms 49.7637 Ops/s 49.2767 Ops/s $\color{#35bf28}+0.99\%$
test_vmap_transformer_speed_decorator[False-False] 20.5409ms 20.0945ms 49.7649 Ops/s 49.3022 Ops/s $\color{#35bf28}+0.94\%$
test_to_module_speed[True] 1.5622ms 1.4740ms 678.4143 Ops/s 675.7013 Ops/s $\color{#35bf28}+0.40\%$
test_to_module_speed[False] 1.5562ms 1.4545ms 687.5291 Ops/s 684.7870 Ops/s $\color{#35bf28}+0.40\%$
test_tc_init 79.0020μs 45.6780μs 21.8924 KOps/s 21.8195 KOps/s $\color{#35bf28}+0.33\%$
test_tc_init_tensor_only 50.1810μs 9.9053μs 100.9562 KOps/s 98.4500 KOps/s $\color{#35bf28}+2.55\%$
test_tc_init_nested 0.1981ms 91.0557μs 10.9823 KOps/s 10.8786 KOps/s $\color{#35bf28}+0.95\%$
test_tc_init_many_fields 41.8610μs 16.6014μs 60.2359 KOps/s 58.8053 KOps/s $\color{#35bf28}+2.43\%$
test_tc_first_layer_tensor 21.2810μs 1.8468μs 541.4901 KOps/s 537.9651 KOps/s $\color{#35bf28}+0.66\%$
test_tc_first_layer_tensor_only 5.3000μs 0.7596μs 1.3164 MOps/s 1.3262 MOps/s $\color{#d91a1a}-0.74\%$
test_tc_first_layer_tensor_set 24.2610μs 3.9078μs 255.8971 KOps/s 254.2859 KOps/s $\color{#35bf28}+0.63\%$
test_tc_first_layer_tensor_only_set 19.0300μs 3.1631μs 316.1489 KOps/s 317.2942 KOps/s $\color{#d91a1a}-0.36\%$
test_tc_first_layer_nontensor 34.5710μs 6.1748μs 161.9474 KOps/s 160.2507 KOps/s $\color{#35bf28}+1.06\%$
test_tc_second_layer_tensor 30.5200μs 4.4187μs 226.3131 KOps/s 225.9717 KOps/s $\color{#35bf28}+0.15\%$
test_tc_second_layer_nontensor 36.6610μs 8.8837μs 112.5654 KOps/s 112.9675 KOps/s $\color{#d91a1a}-0.36\%$
test_unbind 0.2432s 14.4402ms 69.2511 Ops/s 56.1300 Ops/s $\textbf{\color{#35bf28}+23.38\%}$
test_full_like 18.0260ms 16.8405ms 59.3805 Ops/s 226.7837 Ops/s $\textbf{\color{#d91a1a}-73.82\%}$
test_zeros_like 17.0394ms 16.7543ms 59.6861 Ops/s 135.9504 Ops/s $\textbf{\color{#d91a1a}-56.10\%}$
test_ones_like 4.7458ms 4.3559ms 229.5728 Ops/s 74.2131 Ops/s $\textbf{\color{#35bf28}+209.34\%}$
test_clone 6.7761ms 6.5509ms 152.6500 Ops/s 151.8604 Ops/s $\color{#35bf28}+0.52\%$
test_squeeze 0.1088ms 14.2958μs 69.9506 KOps/s 69.4401 KOps/s $\color{#35bf28}+0.74\%$
test_unsqueeze 0.1649ms 0.1136ms 8.8059 KOps/s 8.8465 KOps/s $\color{#d91a1a}-0.46\%$
test_split 0.2466ms 0.1851ms 5.4030 KOps/s 5.3734 KOps/s $\color{#35bf28}+0.55\%$
test_permute 0.2697ms 0.2102ms 4.7571 KOps/s 4.7606 KOps/s $\color{#d91a1a}-0.07\%$
test_stack 52.4341ms 51.9486ms 19.2498 Ops/s 19.3082 Ops/s $\color{#d91a1a}-0.30\%$
test_cat 52.4579ms 51.9165ms 19.2617 Ops/s 19.2871 Ops/s $\color{#d91a1a}-0.13\%$

@github-actions

github-actions Bot commented Feb 18, 2026

Copy link
Copy Markdown
Contributor

$\color{#D29922}\textsf{\Large&amp;#x26A0;\kern{0.2cm}\normalsize Warning}$ Result of CPU Benchmark Tests

Total Benchmarks: 243. Improved: $\large\color{#35bf28}17$. Worsened: $\large\color{#d91a1a}6$.

Expand to view detailed results
Name Max Mean Ops Ops on Repo HEAD Change
test_plain_set_nested 37.5000μs 14.6545μs 68.2386 KOps/s 67.9206 KOps/s $\color{#35bf28}+0.47\%$
test_plain_set_stack_nested 52.8000μs 14.8906μs 67.1564 KOps/s 66.2661 KOps/s $\color{#35bf28}+1.34\%$
test_plain_set_nested_inplace 50.0310μs 16.3762μs 61.0643 KOps/s 60.5514 KOps/s $\color{#35bf28}+0.85\%$
test_plain_set_stack_nested_inplace 43.7910μs 16.4742μs 60.7009 KOps/s 60.9443 KOps/s $\color{#d91a1a}-0.40\%$
test_items 27.8610μs 5.8827μs 169.9891 KOps/s 167.0924 KOps/s $\color{#35bf28}+1.73\%$
test_items_nested 0.6987ms 0.4495ms 2.2248 KOps/s 2.1586 KOps/s $\color{#35bf28}+3.07\%$
test_items_nested_locked 0.6952ms 0.4556ms 2.1947 KOps/s 2.1474 KOps/s $\color{#35bf28}+2.20\%$
test_items_nested_leaf 0.1441ms 98.0405μs 10.1999 KOps/s 10.2296 KOps/s $\color{#d91a1a}-0.29\%$
test_items_stack_nested 0.6117ms 0.4550ms 2.1980 KOps/s 2.1423 KOps/s $\color{#35bf28}+2.60\%$
test_items_stack_nested_leaf 0.1555ms 96.6633μs 10.3452 KOps/s 10.2444 KOps/s $\color{#35bf28}+0.98\%$
test_items_stack_nested_locked 1.5487ms 0.4553ms 2.1966 KOps/s 2.1388 KOps/s $\color{#35bf28}+2.70\%$
test_keys 27.0610μs 4.2198μs 236.9777 KOps/s 237.2126 KOps/s $\color{#d91a1a}-0.10\%$
test_keys_nested 0.2259ms 0.1199ms 8.3433 KOps/s 8.2658 KOps/s $\color{#35bf28}+0.94\%$
test_keys_nested_locked 0.7232ms 0.1295ms 7.7213 KOps/s 7.7408 KOps/s $\color{#d91a1a}-0.25\%$
test_keys_nested_leaf 0.1734ms 0.1107ms 9.0309 KOps/s 8.9974 KOps/s $\color{#35bf28}+0.37\%$
test_keys_stack_nested 0.1597ms 0.1209ms 8.2747 KOps/s 8.2797 KOps/s $\color{#d91a1a}-0.06\%$
test_keys_stack_nested_leaf 0.1656ms 0.1108ms 9.0248 KOps/s 8.9089 KOps/s $\color{#35bf28}+1.30\%$
test_keys_stack_nested_locked 0.2273ms 0.1297ms 7.7120 KOps/s 7.6846 KOps/s $\color{#35bf28}+0.36\%$
test_values 7.9002μs 1.0321μs 968.9217 KOps/s 979.3670 KOps/s $\color{#d91a1a}-1.07\%$
test_values_nested 86.5710μs 47.9413μs 20.8588 KOps/s 20.8315 KOps/s $\color{#35bf28}+0.13\%$
test_values_nested_locked 87.1910μs 51.7849μs 19.3107 KOps/s 19.5630 KOps/s $\color{#d91a1a}-1.29\%$
test_values_nested_leaf 95.4020μs 54.5341μs 18.3371 KOps/s 18.3169 KOps/s $\color{#35bf28}+0.11\%$
test_values_stack_nested 78.2220μs 48.0565μs 20.8089 KOps/s 20.7720 KOps/s $\color{#35bf28}+0.18\%$
test_values_stack_nested_leaf 96.8110μs 54.5594μs 18.3287 KOps/s 18.2589 KOps/s $\color{#35bf28}+0.38\%$
test_values_stack_nested_locked 94.3810μs 51.5898μs 19.3837 KOps/s 19.6867 KOps/s $\color{#d91a1a}-1.54\%$
test_membership 4.7600μs 0.8563μs 1.1678 MOps/s 1.1688 MOps/s $\color{#d91a1a}-0.09\%$
test_membership_nested 29.8410μs 2.9143μs 343.1304 KOps/s 339.5515 KOps/s $\color{#35bf28}+1.05\%$
test_membership_nested_leaf 16.1950μs 2.8199μs 354.6214 KOps/s 337.5917 KOps/s $\textbf{\color{#35bf28}+5.04\%}$
test_membership_stacked_nested 30.1010μs 2.9372μs 340.4598 KOps/s 338.5736 KOps/s $\color{#35bf28}+0.56\%$
test_membership_stacked_nested_leaf 29.0210μs 2.9117μs 343.4390 KOps/s 340.9299 KOps/s $\color{#35bf28}+0.74\%$
test_membership_nested_last 28.3410μs 4.3467μs 230.0606 KOps/s 229.9864 KOps/s $\color{#35bf28}+0.03\%$
test_membership_nested_leaf_last 32.4800μs 4.4225μs 226.1177 KOps/s 227.8555 KOps/s $\color{#d91a1a}-0.76\%$
test_membership_stacked_nested_last 33.9010μs 4.3999μs 227.2802 KOps/s 226.4052 KOps/s $\color{#35bf28}+0.39\%$
test_membership_stacked_nested_leaf_last 36.0600μs 4.3850μs 228.0497 KOps/s 225.7850 KOps/s $\color{#35bf28}+1.00\%$
test_nested_getleaf 59.3210μs 21.6745μs 46.1372 KOps/s 45.9154 KOps/s $\color{#35bf28}+0.48\%$
test_nested_get 49.1700μs 20.4813μs 48.8250 KOps/s 48.6904 KOps/s $\color{#35bf28}+0.28\%$
test_stacked_getleaf 54.5400μs 21.4707μs 46.5752 KOps/s 45.8981 KOps/s $\color{#35bf28}+1.48\%$
test_stacked_get 53.7300μs 20.5735μs 48.6062 KOps/s 49.0071 KOps/s $\color{#d91a1a}-0.82\%$
test_nested_getitemleaf 52.3510μs 22.4693μs 44.5052 KOps/s 44.9493 KOps/s $\color{#d91a1a}-0.99\%$
test_nested_getitem 63.0210μs 21.2518μs 47.0549 KOps/s 47.5686 KOps/s $\color{#d91a1a}-1.08\%$
test_stacked_getitemleaf 72.5410μs 21.1923μs 47.1870 KOps/s 45.6773 KOps/s $\color{#35bf28}+3.31\%$
test_stacked_getitem 74.1010μs 20.9528μs 47.7263 KOps/s 47.9743 KOps/s $\color{#d91a1a}-0.52\%$
test_lock_nested 7.7393ms 0.4807ms 2.0803 KOps/s 2.0705 KOps/s $\color{#35bf28}+0.48\%$
test_lock_stack_nested 0.5661ms 0.4789ms 2.0883 KOps/s 2.0609 KOps/s $\color{#35bf28}+1.33\%$
test_unlock_nested 0.6236ms 0.3847ms 2.5997 KOps/s 2.5898 KOps/s $\color{#35bf28}+0.38\%$
test_unlock_stack_nested 0.4152ms 0.3857ms 2.5930 KOps/s 2.5620 KOps/s $\color{#35bf28}+1.21\%$
test_flatten_speed 0.1881ms 0.1223ms 8.1734 KOps/s 8.1931 KOps/s $\color{#d91a1a}-0.24\%$
test_unflatten_speed 0.6347ms 0.5786ms 1.7283 KOps/s 1.7363 KOps/s $\color{#d91a1a}-0.46\%$
test_common_ops 0.8613ms 0.6845ms 1.4609 KOps/s 1.4590 KOps/s $\color{#35bf28}+0.13\%$
test_creation 73.3820μs 2.9423μs 339.8740 KOps/s 343.7849 KOps/s $\color{#d91a1a}-1.14\%$
test_creation_empty 61.5410μs 6.2081μs 161.0798 KOps/s 161.7854 KOps/s $\color{#d91a1a}-0.44\%$
test_creation_nested_1 39.3800μs 10.5582μs 94.7130 KOps/s 95.4625 KOps/s $\color{#d91a1a}-0.79\%$
test_creation_nested_2 63.2310μs 12.0528μs 82.9682 KOps/s 83.8281 KOps/s $\color{#d91a1a}-1.03\%$
test_creation_many_keys[10] 88.4820μs 18.3680μs 54.4426 KOps/s 55.0365 KOps/s $\color{#d91a1a}-1.08\%$
test_creation_many_keys[50] 0.1244ms 78.3712μs 12.7598 KOps/s 12.7045 KOps/s $\color{#35bf28}+0.44\%$
test_creation_many_keys[100] 0.2076ms 0.1542ms 6.4853 KOps/s 6.5356 KOps/s $\color{#d91a1a}-0.77\%$
test_creation_nested_many_keys[10] 68.6510μs 39.4601μs 25.3420 KOps/s 25.3304 KOps/s $\color{#35bf28}+0.05\%$
test_creation_nested_many_keys[50] 0.2458ms 0.1596ms 6.2670 KOps/s 6.2730 KOps/s $\color{#d91a1a}-0.10\%$
test_clone 54.0610μs 13.4421μs 74.3933 KOps/s 75.1694 KOps/s $\color{#d91a1a}-1.03\%$
test_getitem[int] 1.6481ms 14.7458μs 67.8159 KOps/s 56.5411 KOps/s $\textbf{\color{#35bf28}+19.94\%}$
test_getitem[slice_int] 0.1456ms 24.5892μs 40.6683 KOps/s 40.2168 KOps/s $\color{#35bf28}+1.12\%$
test_getitem[range] 0.1730ms 62.1119μs 16.1000 KOps/s 15.7942 KOps/s $\color{#35bf28}+1.94\%$
test_getitem[tuple] 0.1477ms 24.2067μs 41.3108 KOps/s 41.6474 KOps/s $\color{#d91a1a}-0.81\%$
test_getitem[list] 0.1779ms 58.1903μs 17.1850 KOps/s 17.2518 KOps/s $\color{#d91a1a}-0.39\%$
test_setitem_dim[int] 45.5710μs 26.2979μs 38.0258 KOps/s 38.0932 KOps/s $\color{#d91a1a}-0.18\%$
test_setitem_dim[slice_int] 66.6210μs 43.9193μs 22.7690 KOps/s 22.8039 KOps/s $\color{#d91a1a}-0.15\%$
test_setitem_dim[range] 0.1218ms 94.6330μs 10.5671 KOps/s 10.5403 KOps/s $\color{#35bf28}+0.25\%$
test_setitem_dim[tuple] 62.0910μs 40.8895μs 24.4562 KOps/s 24.4848 KOps/s $\color{#d91a1a}-0.12\%$
test_setitem 80.0620μs 17.9914μs 55.5822 KOps/s 56.1086 KOps/s $\color{#d91a1a}-0.94\%$
test_set 60.9310μs 17.1062μs 58.4583 KOps/s 59.2922 KOps/s $\color{#d91a1a}-1.41\%$
test_set_shared 0.6812ms 0.2059ms 4.8576 KOps/s 4.8742 KOps/s $\color{#d91a1a}-0.34\%$
test_update 0.4214ms 21.5830μs 46.3327 KOps/s 46.8401 KOps/s $\color{#d91a1a}-1.08\%$
test_update_nested 76.1120μs 33.9691μs 29.4385 KOps/s 29.6478 KOps/s $\color{#d91a1a}-0.71\%$
test_update__nested 0.5201ms 34.1324μs 29.2977 KOps/s 28.8591 KOps/s $\color{#35bf28}+1.52\%$
test_set_nested 85.8510μs 18.9637μs 52.7324 KOps/s 52.8789 KOps/s $\color{#d91a1a}-0.28\%$
test_set_nested_new 81.2720μs 23.7382μs 42.1262 KOps/s 41.1296 KOps/s $\color{#35bf28}+2.42\%$
test_select 0.1038ms 42.6733μs 23.4339 KOps/s 24.3741 KOps/s $\color{#d91a1a}-3.86\%$
test_select_nested 0.1201ms 73.7134μs 13.5661 KOps/s 13.4188 KOps/s $\color{#35bf28}+1.10\%$
test_exclude_nested 0.1489ms 90.9870μs 10.9906 KOps/s 10.8755 KOps/s $\color{#35bf28}+1.06\%$
test_empty[True] 0.7524ms 0.3897ms 2.5658 KOps/s 2.5466 KOps/s $\color{#35bf28}+0.75\%$
test_empty[False] 7.6478μs 1.3073μs 764.9512 KOps/s 756.6973 KOps/s $\color{#35bf28}+1.09\%$
test_to 0.1041ms 72.2399μs 13.8428 KOps/s 13.8981 KOps/s $\color{#d91a1a}-0.40\%$
test_to_nonblocking 0.1072ms 64.4690μs 15.5113 KOps/s 15.4966 KOps/s $\color{#35bf28}+0.09\%$
test_unbind_speed 0.4298ms 0.3246ms 3.0808 KOps/s 3.0265 KOps/s $\color{#35bf28}+1.79\%$
test_unbind_speed_stack0 0.3790ms 0.3268ms 3.0601 KOps/s 3.0544 KOps/s $\color{#35bf28}+0.19\%$
test_unbind_speed_stack1 0.1024s 0.9152ms 1.0926 KOps/s 1.1825 KOps/s $\textbf{\color{#d91a1a}-7.61\%}$
test_split 1.2017ms 1.1415ms 876.0392 Ops/s 784.8630 Ops/s $\textbf{\color{#35bf28}+11.62\%}$
test_chunk 0.1026s 1.2181ms 820.9488 Ops/s 911.8024 Ops/s $\textbf{\color{#d91a1a}-9.96\%}$
test_to_cpu_blocking 18.8936ms 18.3875ms 54.3847 Ops/s 36.7885 Ops/s $\textbf{\color{#35bf28}+47.83\%}$
test_to_cpu_global_sync 11.2194ms 11.0842ms 90.2183 Ops/s 91.4486 Ops/s $\color{#d91a1a}-1.35\%$
test_to_cpu_event_sync 12.3120ms 11.9192ms 83.8979 Ops/s 84.7237 Ops/s $\color{#d91a1a}-0.97\%$
test_to_cpu_default 0.1144s 13.1253ms 76.1889 Ops/s 84.6524 Ops/s $\textbf{\color{#d91a1a}-10.00\%}$
test_consolidate[False-None] 4.2837ms 4.1058ms 243.5552 Ops/s 219.1423 Ops/s $\textbf{\color{#35bf28}+11.14\%}$
test_consolidate[default-None] 2.1006ms 2.0119ms 497.0448 Ops/s 484.9623 Ops/s $\color{#35bf28}+2.49\%$
test_consolidate[reduce-overhead-None] 2.0655ms 1.9321ms 517.5678 Ops/s 506.9753 Ops/s $\color{#35bf28}+2.09\%$
test_consolidate_njt[False-None] 8.8172ms 8.4017ms 119.0228 Ops/s 117.6438 Ops/s $\color{#35bf28}+1.17\%$
test_to[False-False-None] 2.1575ms 2.0374ms 490.8225 Ops/s 490.5006 Ops/s $\color{#35bf28}+0.07\%$
test_to[True-False-None] 2.1934ms 1.9466ms 513.7219 Ops/s 519.2534 Ops/s $\color{#d91a1a}-1.07\%$
test_to[within-False-None] 6.4289ms 6.1096ms 163.6761 Ops/s 163.4178 Ops/s $\color{#35bf28}+0.16\%$
test_to[True-default-None] 7.6488ms 7.5131ms 133.1013 Ops/s 129.8987 Ops/s $\color{#35bf28}+2.47\%$
test_to_njt[False-False-None] 8.8086ms 8.4839ms 117.8707 Ops/s 116.7366 Ops/s $\color{#35bf28}+0.97\%$
test_to_njt[True-False-None] 7.2293ms 6.9275ms 144.3524 Ops/s 142.3045 Ops/s $\color{#35bf28}+1.44\%$
test_to_njt[within-False-None] 15.5275ms 15.4443ms 64.7487 Ops/s 63.9444 Ops/s $\color{#35bf28}+1.26\%$
test_creation[device0] 0.3798ms 0.1149ms 8.6996 KOps/s 8.6634 KOps/s $\color{#35bf28}+0.42\%$
test_creation_from_tensor 0.3699ms 0.1125ms 8.8926 KOps/s 8.8048 KOps/s $\color{#35bf28}+1.00\%$
test_add_one[memmap_tensor0] 0.1585ms 6.6120μs 151.2403 KOps/s 151.9275 KOps/s $\color{#d91a1a}-0.45\%$
test_contiguous[memmap_tensor0] 13.0900μs 0.6717μs 1.4887 MOps/s 2.2500 MOps/s $\textbf{\color{#d91a1a}-33.84\%}$
test_stack[memmap_tensor0] 38.7710μs 4.6429μs 215.3834 KOps/s 216.8514 KOps/s $\color{#d91a1a}-0.68\%$
test_memmaptd_index 1.0115ms 0.2665ms 3.7529 KOps/s 3.7652 KOps/s $\color{#d91a1a}-0.33\%$
test_memmaptd_index_astensor 0.5142ms 0.3612ms 2.7688 KOps/s 2.7673 KOps/s $\color{#35bf28}+0.05\%$
test_memmaptd_index_op 0.7724ms 0.6021ms 1.6610 KOps/s 1.6464 KOps/s $\color{#35bf28}+0.88\%$
test_serialize_model 0.1384s 0.1358s 7.3633 Ops/s 7.2858 Ops/s $\color{#35bf28}+1.06\%$
test_serialize_model_pickle 1.3737s 1.2001s 0.8332 Ops/s 0.8262 Ops/s $\color{#35bf28}+0.85\%$
test_serialize_weights 0.1391s 0.1365s 7.3286 Ops/s 7.3488 Ops/s $\color{#d91a1a}-0.28\%$
test_serialize_weights_returnearly 0.4309s 92.8328ms 10.7721 Ops/s 5.3175 Ops/s $\textbf{\color{#35bf28}+102.58\%}$
test_serialize_weights_pickle 1.3664s 1.1870s 0.8424 Ops/s 0.8237 Ops/s $\color{#35bf28}+2.28\%$
test_reshape_pytree 0.2033ms 32.9463μs 30.3524 KOps/s 30.2667 KOps/s $\color{#35bf28}+0.28\%$
test_reshape_td 86.8510μs 44.4915μs 22.4762 KOps/s 22.5066 KOps/s $\color{#d91a1a}-0.13\%$
test_view_pytree 0.2035ms 32.7397μs 30.5439 KOps/s 30.7163 KOps/s $\color{#d91a1a}-0.56\%$
test_view_td 94.0810μs 53.0789μs 18.8399 KOps/s 19.2228 KOps/s $\color{#d91a1a}-1.99\%$
test_unbind_pytree 0.2374ms 36.3180μs 27.5346 KOps/s 26.9317 KOps/s $\color{#35bf28}+2.24\%$
test_unbind_td 0.1814ms 49.1089μs 20.3629 KOps/s 20.0349 KOps/s $\color{#35bf28}+1.64\%$
test_split_pytree 0.2513ms 42.4412μs 23.5620 KOps/s 23.5695 KOps/s $\color{#d91a1a}-0.03\%$
test_split_td 0.1121ms 65.0302μs 15.3775 KOps/s 15.1857 KOps/s $\color{#35bf28}+1.26\%$
test_add_pytree 0.2393ms 42.9970μs 23.2574 KOps/s 24.0544 KOps/s $\color{#d91a1a}-3.31\%$
test_add_td 0.1171ms 53.8764μs 18.5610 KOps/s 18.7049 KOps/s $\color{#d91a1a}-0.77\%$
test_compile_add_one_nested[tensordict-compile] 0.1902ms 0.1382ms 7.2378 KOps/s 6.7404 KOps/s $\textbf{\color{#35bf28}+7.38\%}$
test_compile_add_one_nested[tensordict-eager] 0.3415ms 0.1948ms 5.1324 KOps/s 5.1514 KOps/s $\color{#d91a1a}-0.37\%$
test_compile_add_one_nested[pytree-compile] 0.1451ms 0.1084ms 9.2293 KOps/s 9.0243 KOps/s $\color{#35bf28}+2.27\%$
test_compile_add_one_nested[pytree-eager] 0.4313ms 0.1770ms 5.6492 KOps/s 5.6566 KOps/s $\color{#d91a1a}-0.13\%$
test_compile_copy_nested[tensordict-compile] 0.4017ms 36.9003μs 27.1000 KOps/s 28.9377 KOps/s $\textbf{\color{#d91a1a}-6.35\%}$
test_compile_copy_nested[tensordict-eager] 85.2410μs 52.2140μs 19.1519 KOps/s 19.3592 KOps/s $\color{#d91a1a}-1.07\%$
test_compile_copy_nested[pytree-compile] 48.9310μs 9.8588μs 101.4320 KOps/s 100.5866 KOps/s $\color{#35bf28}+0.84\%$
test_compile_copy_nested[pytree-eager] 0.4636ms 68.5108μs 14.5962 KOps/s 14.5794 KOps/s $\color{#35bf28}+0.12\%$
test_compile_add_one_flat[tensordict-compile] 0.2127ms 0.1760ms 5.6811 KOps/s 5.3603 KOps/s $\textbf{\color{#35bf28}+5.98\%}$
test_compile_add_one_flat[tensordict-eager] 0.2988ms 0.2557ms 3.9102 KOps/s 3.8867 KOps/s $\color{#35bf28}+0.61\%$
test_compile_add_one_flat[tensorclass-compile] 0.1951ms 0.1162ms 8.6030 KOps/s 8.2025 KOps/s $\color{#35bf28}+4.88\%$
test_compile_add_one_flat[tensorclass-eager] 0.1065ms 70.5405μs 14.1763 KOps/s 13.7632 KOps/s $\color{#35bf28}+3.00\%$
test_compile_add_one_flat[pytree-compile] 0.1945ms 0.1587ms 6.3019 KOps/s 6.1604 KOps/s $\color{#35bf28}+2.30\%$
test_compile_add_one_flat[pytree-eager] 0.8113ms 0.5235ms 1.9102 KOps/s 1.9087 KOps/s $\color{#35bf28}+0.08\%$
test_compile_add_self_flat[tensordict-eager] 0.3476ms 0.3091ms 3.2354 KOps/s 3.2214 KOps/s $\color{#35bf28}+0.43\%$
test_compile_add_self_flat[tensordict-compile] 0.2173ms 0.1794ms 5.5754 KOps/s 5.1528 KOps/s $\textbf{\color{#35bf28}+8.20\%}$
test_compile_add_self_flat[tensorclass-eager] 0.1262ms 86.5647μs 11.5521 KOps/s 11.8329 KOps/s $\color{#d91a1a}-2.37\%$
test_compile_add_self_flat[tensorclass-compile] 0.1956ms 0.1196ms 8.3591 KOps/s 7.9759 KOps/s $\color{#35bf28}+4.80\%$
test_compile_add_self_flat[pytree-eager] 0.6447ms 0.4238ms 2.3596 KOps/s 2.3082 KOps/s $\color{#35bf28}+2.22\%$
test_compile_add_self_flat[pytree-compile] 0.2001ms 0.1591ms 6.2857 KOps/s 6.1202 KOps/s $\color{#35bf28}+2.70\%$
test_compile_copy_flat[tensordict-compile] 0.1090ms 23.8349μs 41.9553 KOps/s 38.7734 KOps/s $\textbf{\color{#35bf28}+8.21\%}$
test_compile_copy_flat[tensordict-eager] 0.1328ms 40.7925μs 24.5143 KOps/s 23.9237 KOps/s $\color{#35bf28}+2.47\%$
test_compile_copy_flat[pytree-compile] 47.2510μs 10.8259μs 92.3709 KOps/s 93.4565 KOps/s $\color{#d91a1a}-1.16\%$
test_compile_copy_flat[pytree-eager] 0.4006ms 52.3954μs 19.0856 KOps/s 19.1762 KOps/s $\color{#d91a1a}-0.47\%$
test_compile_assign_and_add[tensordict-compile] 1.9833ms 0.1740ms 5.7487 KOps/s 5.4635 KOps/s $\textbf{\color{#35bf28}+5.22\%}$
test_compile_assign_and_add[tensordict-eager] 3.3879ms 3.2587ms 306.8700 Ops/s 306.0163 Ops/s $\color{#35bf28}+0.28\%$
test_compile_assign_and_add[pytree-compile] 2.0034ms 0.1611ms 6.2062 KOps/s 6.0349 KOps/s $\color{#35bf28}+2.84\%$
test_compile_assign_and_add[pytree-eager] 2.9294ms 2.7520ms 363.3705 Ops/s 364.2235 Ops/s $\color{#d91a1a}-0.23\%$
test_compile_indexing[tensor-tensordict-compile] 0.1737ms 0.1108ms 9.0264 KOps/s 8.7933 KOps/s $\color{#35bf28}+2.65\%$
test_compile_indexing[tensor-tensordict-eager] 0.3111ms 72.5235μs 13.7886 KOps/s 13.6174 KOps/s $\color{#35bf28}+1.26\%$
test_compile_indexing[tensor-tensorclass-compile] 0.1431ms 96.7784μs 10.3329 KOps/s 9.9661 KOps/s $\color{#35bf28}+3.68\%$
test_compile_indexing[tensor-tensorclass-eager] 0.2764ms 44.4779μs 22.4831 KOps/s 22.3617 KOps/s $\color{#35bf28}+0.54\%$
test_compile_indexing[tensor-pytree-compile] 0.2652ms 0.1003ms 9.9705 KOps/s 10.0419 KOps/s $\color{#d91a1a}-0.71\%$
test_compile_indexing[tensor-pytree-eager] 0.2598ms 46.2926μs 21.6017 KOps/s 22.3673 KOps/s $\color{#d91a1a}-3.42\%$
test_compile_indexing[slice-tensordict-compile] 93.0010μs 55.3779μs 18.0577 KOps/s 17.2598 KOps/s $\color{#35bf28}+4.62\%$
test_compile_indexing[slice-tensordict-eager] 0.2271ms 28.3381μs 35.2881 KOps/s 35.1310 KOps/s $\color{#35bf28}+0.45\%$
test_compile_indexing[slice-tensorclass-compile] 82.3320μs 45.3228μs 22.0640 KOps/s 21.1966 KOps/s $\color{#35bf28}+4.09\%$
test_compile_indexing[slice-tensorclass-eager] 0.2633ms 22.5812μs 44.2847 KOps/s 43.7785 KOps/s $\color{#35bf28}+1.16\%$
test_compile_indexing[slice-pytree-compile] 81.0610μs 46.1800μs 21.6544 KOps/s 21.0717 KOps/s $\color{#35bf28}+2.77\%$
test_compile_indexing[slice-pytree-eager] 0.2763ms 22.5488μs 44.3482 KOps/s 44.0482 KOps/s $\color{#35bf28}+0.68\%$
test_compile_indexing[int-tensordict-compile] 0.1015ms 56.1741μs 17.8018 KOps/s 16.6105 KOps/s $\textbf{\color{#35bf28}+7.17\%}$
test_compile_indexing[int-tensordict-eager] 0.2743ms 27.8942μs 35.8497 KOps/s 35.7678 KOps/s $\color{#35bf28}+0.23\%$
test_compile_indexing[int-tensorclass-compile] 0.1029ms 45.2005μs 22.1237 KOps/s 21.1016 KOps/s $\color{#35bf28}+4.84\%$
test_compile_indexing[int-tensorclass-eager] 0.2682ms 22.6121μs 44.2240 KOps/s 43.6574 KOps/s $\color{#35bf28}+1.30\%$
test_compile_indexing[int-pytree-compile] 81.6010μs 46.1918μs 21.6489 KOps/s 20.6474 KOps/s $\color{#35bf28}+4.85\%$
test_compile_indexing[int-pytree-eager] 0.2574ms 22.4092μs 44.6246 KOps/s 44.1692 KOps/s $\color{#35bf28}+1.03\%$
test_mod_add[eager] 98.3820μs 49.9314μs 20.0275 KOps/s 19.7527 KOps/s $\color{#35bf28}+1.39\%$
test_mod_add[compile] 0.1802ms 0.1065ms 9.3881 KOps/s 9.2569 KOps/s $\color{#35bf28}+1.42\%$
test_mod_add[compile-overhead] 0.2298ms 0.1477ms 6.7686 KOps/s 6.6400 KOps/s $\color{#35bf28}+1.94\%$
test_mod_wrap[eager] 0.4510ms 0.2970ms 3.3666 KOps/s 3.4081 KOps/s $\color{#d91a1a}-1.22\%$
test_mod_wrap[compile] 0.3934ms 0.3496ms 2.8603 KOps/s 2.7895 KOps/s $\color{#35bf28}+2.54\%$
test_mod_wrap[compile-overhead] 7.3474ms 4.0750ms 245.3965 Ops/s 249.7965 Ops/s $\color{#d91a1a}-1.76\%$
test_mod_wrap_and_backward[eager] 1.6355ms 1.5038ms 664.9638 Ops/s 626.4627 Ops/s $\textbf{\color{#35bf28}+6.15\%}$
test_mod_wrap_and_backward[compile] 1.5097ms 1.4401ms 694.4023 Ops/s 686.1609 Ops/s $\color{#35bf28}+1.20\%$
test_mod_wrap_and_backward[compile-overhead] 1.2520ms 0.8916ms 1.1216 KOps/s 1.1163 KOps/s $\color{#35bf28}+0.47\%$
test_seq_add[eager] 0.2348ms 0.1563ms 6.3987 KOps/s 6.0708 KOps/s $\textbf{\color{#35bf28}+5.40\%}$
test_seq_add[compile] 0.1722ms 0.1160ms 8.6219 KOps/s 8.5035 KOps/s $\color{#35bf28}+1.39\%$
test_seq_add[compile-overhead] 0.3444ms 0.1579ms 6.3315 KOps/s 6.2254 KOps/s $\color{#35bf28}+1.70\%$
test_seq_wrap[eager] 0.5953ms 0.5269ms 1.8979 KOps/s 1.9027 KOps/s $\color{#d91a1a}-0.25\%$
test_seq_wrap[compile] 0.4343ms 0.3696ms 2.7054 KOps/s 2.6946 KOps/s $\color{#35bf28}+0.40\%$
test_seq_wrap[compile-overhead] 0.3268ms 0.2652ms 3.7709 KOps/s 3.7036 KOps/s $\color{#35bf28}+1.82\%$
test_func_call_runtime[False-eager] 0.9102ms 0.8525ms 1.1731 KOps/s 1.1860 KOps/s $\color{#d91a1a}-1.09\%$
test_func_call_runtime[False-compile] 0.9835ms 0.9134ms 1.0948 KOps/s 1.0889 KOps/s $\color{#35bf28}+0.54\%$
test_func_call_runtime[False-compile-overhead] 0.5184ms 0.4623ms 2.1632 KOps/s 2.1449 KOps/s $\color{#35bf28}+0.85\%$
test_func_call_runtime[True-eager] 1.1962ms 1.1050ms 904.9388 Ops/s 916.9514 Ops/s $\color{#d91a1a}-1.31\%$
test_func_call_runtime[True-compile] 1.0091ms 0.9199ms 1.0871 KOps/s 1.0750 KOps/s $\color{#35bf28}+1.12\%$
test_func_call_runtime[True-compile-overhead] 0.5542ms 0.4774ms 2.0949 KOps/s 2.0809 KOps/s $\color{#35bf28}+0.67\%$
test_func_call_cm_runtime[False-eager] 0.9699ms 0.8946ms 1.1179 KOps/s 1.1832 KOps/s $\textbf{\color{#d91a1a}-5.52\%}$
test_func_call_cm_runtime[False-compile] 1.0987ms 0.9169ms 1.0907 KOps/s 1.0863 KOps/s $\color{#35bf28}+0.41\%$
test_func_call_cm_runtime[False-compile-overhead] 0.5192ms 0.4653ms 2.1492 KOps/s 2.1353 KOps/s $\color{#35bf28}+0.65\%$
test_func_call_cm_runtime[True-eager] 1.3643ms 1.2429ms 804.5913 Ops/s 805.4764 Ops/s $\color{#d91a1a}-0.11\%$
test_func_call_cm_runtime[True-compile] 1.0365ms 0.9550ms 1.0472 KOps/s 1.0375 KOps/s $\color{#35bf28}+0.93\%$
test_func_call_cm_runtime[True-compile-overhead] 0.5547ms 0.5074ms 1.9707 KOps/s 1.9430 KOps/s $\color{#35bf28}+1.42\%$
test_vmap_func_call_cm_runtime[eager] 2.8769ms 2.3692ms 422.0844 Ops/s 419.8872 Ops/s $\color{#35bf28}+0.52\%$
test_vmap_func_call_cm_runtime[compile] 1.0900ms 0.9796ms 1.0208 KOps/s 1.0161 KOps/s $\color{#35bf28}+0.47\%$
test_vmap_func_call_cm_runtime[compile-overhead] 0.5822ms 0.5136ms 1.9469 KOps/s 1.9212 KOps/s $\color{#35bf28}+1.34\%$
test_distributed 0.5569ms 0.1535ms 6.5146 KOps/s 6.5773 KOps/s $\color{#d91a1a}-0.95\%$
test_tdmodule 46.3310μs 27.9939μs 35.7221 KOps/s 35.0146 KOps/s $\color{#35bf28}+2.02\%$
test_tdmodule_dispatch 76.0610μs 45.8553μs 21.8077 KOps/s 21.6354 KOps/s $\color{#35bf28}+0.80\%$
test_tdseq 46.6810μs 27.1321μs 36.8567 KOps/s 36.4486 KOps/s $\color{#35bf28}+1.12\%$
test_tdseq_dispatch 69.8110μs 47.9144μs 20.8706 KOps/s 20.8546 KOps/s $\color{#35bf28}+0.08\%$
test_instantiation_functorch 2.1285ms 2.0708ms 482.9053 Ops/s 483.6358 Ops/s $\color{#d91a1a}-0.15\%$
test_exec_functorch 0.2170ms 0.1817ms 5.5049 KOps/s 5.5278 KOps/s $\color{#d91a1a}-0.41\%$
test_exec_functional_call 0.2361ms 0.1658ms 6.0326 KOps/s 6.1647 KOps/s $\color{#d91a1a}-2.14\%$
test_exec_td_decorator 0.4438ms 0.2408ms 4.1525 KOps/s 4.1814 KOps/s $\color{#d91a1a}-0.69\%$
test_vmap_mlp_speed_decorator[True-True] 1.0218ms 0.8232ms 1.2148 KOps/s 1.2173 KOps/s $\color{#d91a1a}-0.20\%$
test_vmap_mlp_speed_decorator[True-False] 1.0468ms 0.8303ms 1.2044 KOps/s 1.2192 KOps/s $\color{#d91a1a}-1.22\%$
test_vmap_mlp_speed_decorator[False-True] 0.9733ms 0.7152ms 1.3981 KOps/s 1.4027 KOps/s $\color{#d91a1a}-0.32\%$
test_vmap_mlp_speed_decorator[False-False] 0.9044ms 0.7147ms 1.3991 KOps/s 1.4029 KOps/s $\color{#d91a1a}-0.27\%$
test_vmap_transformer_speed_decorator[True-True] 21.3147ms 20.5262ms 48.7181 Ops/s 48.9062 Ops/s $\color{#d91a1a}-0.38\%$
test_vmap_transformer_speed_decorator[True-False] 20.6880ms 20.5088ms 48.7595 Ops/s 48.9527 Ops/s $\color{#d91a1a}-0.39\%$
test_vmap_transformer_speed_decorator[False-True] 20.8733ms 20.3652ms 49.1034 Ops/s 49.3124 Ops/s $\color{#d91a1a}-0.42\%$
test_vmap_transformer_speed_decorator[False-False] 20.5238ms 20.3665ms 49.1002 Ops/s 49.3583 Ops/s $\color{#d91a1a}-0.52\%$
test_to_module_speed[True] 1.5640ms 1.4873ms 672.3512 Ops/s 675.4403 Ops/s $\color{#d91a1a}-0.46\%$
test_to_module_speed[False] 1.5587ms 1.4585ms 685.6585 Ops/s 688.7943 Ops/s $\color{#d91a1a}-0.46\%$
test_tc_init 66.6510μs 45.9935μs 21.7422 KOps/s 21.4953 KOps/s $\color{#35bf28}+1.15\%$
test_tc_init_tensor_only 41.5700μs 10.0178μs 99.8227 KOps/s 101.7876 KOps/s $\color{#d91a1a}-1.93\%$
test_tc_init_nested 0.1296ms 91.6370μs 10.9126 KOps/s 10.8801 KOps/s $\color{#35bf28}+0.30\%$
test_tc_init_many_fields 44.0610μs 16.7113μs 59.8396 KOps/s 60.0673 KOps/s $\color{#d91a1a}-0.38\%$
test_tc_first_layer_tensor 18.7010μs 1.8701μs 534.7174 KOps/s 532.6193 KOps/s $\color{#35bf28}+0.39\%$
test_tc_first_layer_tensor_only 5.7801μs 0.7538μs 1.3266 MOps/s 1.3366 MOps/s $\color{#d91a1a}-0.75\%$
test_tc_first_layer_tensor_set 25.6210μs 3.9614μs 252.4380 KOps/s 256.7132 KOps/s $\color{#d91a1a}-1.67\%$
test_tc_first_layer_tensor_only_set 26.5210μs 3.1868μs 313.7916 KOps/s 319.4785 KOps/s $\color{#d91a1a}-1.78\%$
test_tc_first_layer_nontensor 31.2200μs 6.2720μs 159.4380 KOps/s 160.0830 KOps/s $\color{#d91a1a}-0.40\%$
test_tc_second_layer_tensor 27.4210μs 4.5298μs 220.7618 KOps/s 225.9680 KOps/s $\color{#d91a1a}-2.30\%$
test_tc_second_layer_nontensor 50.3310μs 8.7811μs 113.8810 KOps/s 113.3444 KOps/s $\color{#35bf28}+0.47\%$
test_unbind 0.2445s 14.3625ms 69.6255 Ops/s 55.9657 Ops/s $\textbf{\color{#35bf28}+24.41\%}$
test_full_like 4.5408ms 4.3898ms 227.8003 Ops/s 227.9094 Ops/s $\color{#d91a1a}-0.05\%$
test_zeros_like 10.5411ms 4.4028ms 227.1296 Ops/s 136.9134 Ops/s $\textbf{\color{#35bf28}+65.89\%}$
test_ones_like 4.5676ms 4.2997ms 232.5764 Ops/s 137.2148 Ops/s $\textbf{\color{#35bf28}+69.50\%}$
test_clone 11.7858ms 9.4666ms 105.6341 Ops/s 106.4070 Ops/s $\color{#d91a1a}-0.73\%$
test_squeeze 0.1526ms 14.4361μs 69.2706 KOps/s 69.8536 KOps/s $\color{#d91a1a}-0.83\%$
test_unsqueeze 0.2790ms 0.1126ms 8.8845 KOps/s 9.0271 KOps/s $\color{#d91a1a}-1.58\%$
test_split 0.2401ms 0.1863ms 5.3684 KOps/s 5.3214 KOps/s $\color{#35bf28}+0.88\%$
test_permute 0.2572ms 0.2109ms 4.7425 KOps/s 4.8476 KOps/s $\color{#d91a1a}-2.17\%$
test_stack 52.2116ms 51.8791ms 19.2756 Ops/s 18.7417 Ops/s $\color{#35bf28}+2.85\%$
test_cat 53.7993ms 51.9276ms 19.2576 Ops/s 19.3091 Ops/s $\color{#d91a1a}-0.27\%$

[ghstack-poisoned]
vmoens added a commit that referenced this pull request Feb 18, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: 52e6884
Pull-Request: #1593
Co-authored-by: Cursor <cursoragent@cursor.com>
vmoens added a commit that referenced this pull request Feb 18, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: 52e6884
Pull-Request: #1593
Co-authored-by: Cursor <cursoragent@cursor.com>
[ghstack-poisoned]
vmoens added a commit that referenced this pull request Feb 18, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: ad23138
Pull-Request: #1593
Co-authored-by: Cursor <cursoragent@cursor.com>
[ghstack-poisoned]
vmoens added a commit that referenced this pull request Feb 18, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: 3e5b487
Pull-Request: #1593
Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

Copy link
Copy Markdown
Contributor

PR Title Label Error

Unknown or invalid prefix [Distributed].

Current title: [Distributed] Add use_broadcast kwarg to init_remote / from_remote_init

Supported Prefixes

Your PR title must start with exactly one of these prefixes:

Prefix Label Applied Example
[BugFix] BugFix [BugFix] Fix memory leak in TensorDict
[Feature] Feature [Feature] Add new storage backend
[Doc] or [Docs] Documentation [Doc] Update installation guide
[Refactor] Refactor [Refactor] Clean up module imports
[CI] CI [CI] Fix workflow permissions
[Test] or [Tests] Test [Test] Add unit tests for nn module
[Compile] Compile [Compile] Fix torch.compile issue
[Performance] or [Perf] Perf [Perf] Optimize tensor operations
[Deprecation] Deprecation [Deprecation] Mark old function
[Setup] Setup [Setup] Update build configuration

Note: Common variations like singular/plural are supported (e.g., [Doc] or [Docs]).

[ghstack-poisoned]
@github-actions

Copy link
Copy Markdown
Contributor

PR Title Label Error

Unknown or invalid prefix [Distributed].

Current title: [Distributed] Add use_broadcast kwarg to init_remote / from_remote_init

Supported Prefixes

Your PR title must start with exactly one of these prefixes:

Prefix Label Applied Example
[BugFix] BugFix [BugFix] Fix memory leak in TensorDict
[Feature] Feature [Feature] Add new storage backend
[Doc] or [Docs] Documentation [Doc] Update installation guide
[Refactor] Refactor [Refactor] Clean up module imports
[CI] CI [CI] Fix workflow permissions
[Test] or [Tests] Test [Test] Add unit tests for nn module
[Compile] Compile [Compile] Fix torch.compile issue
[Performance] or [Perf] Perf [Perf] Optimize tensor operations
[Deprecation] Deprecation [Deprecation] Mark old function
[Setup] Setup [Setup] Update build configuration

Note: Common variations like singular/plural are supported (e.g., [Doc] or [Docs]).

vmoens added a commit that referenced this pull request Feb 19, 2026
Allow callers to choose between point-to-point (send/recv, default)
and broadcast transport for the init_remote / from_remote_init pair.

When use_broadcast=True, init_remote delegates to broadcast() and all
ranks must participate.  This is useful with NCCL backends or when
initializing more than one receiver at a time.

Co-authored-by: Cursor <cursoragent@cursor.com>
ghstack-source-id: fb87728
Pull-Request: #1593
Co-authored-by: Cursor <cursoragent@cursor.com>
@vmoens
vmoens merged commit 4d28c01 into gh/vmoens/76/base Feb 19, 2026
35 of 53 checks passed
@vmoens
vmoens deleted the gh/vmoens/76/head branch February 19, 2026 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Distributed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant