[Performance] Fix consolidate(num_threads>0) slowdown with chunked copies - #1740
Merged
Conversation
This was referenced Jul 9, 2026
Contributor
|
| Name | Max | Mean | Ops | Ops on Repo HEAD
|
Change |
|---|---|---|---|---|---|
| test_collector_preallocated_write[stack_out-cpu-32-2] | 0.2932ms | 0.1632ms | 6.1291 KOps/s | 6.0755 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-32-8] | 0.3799ms | 0.2942ms | 3.3996 KOps/s | 3.3529 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-32-32] | 0.8817ms | 0.7816ms | 1.2794 KOps/s | 1.2789 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-2] | 0.3962ms | 0.3339ms | 2.9948 KOps/s | 2.9670 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-8] | 1.2492ms | 1.1006ms | 908.5645 Ops/s | 906.3202 Ops/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-32] | 7.5404ms | 7.3195ms | 136.6218 Ops/s | 137.4088 Ops/s | |
| test_collector_preallocated_write[stack_out-cuda-32-2] | 0.2988ms | 0.2490ms | 4.0169 KOps/s | 3.7194 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-32-8] | 0.4787ms | 0.3663ms | 2.7300 KOps/s | 2.6174 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-32-32] | 0.8811ms | 0.8261ms | 1.2105 KOps/s | 1.1948 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-2] | 0.3246ms | 0.2464ms | 4.0580 KOps/s | 3.7678 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-8] | 0.4420ms | 0.3684ms | 2.7142 KOps/s | 2.6168 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-32] | 0.9649ms | 0.8868ms | 1.1276 KOps/s | 1.1184 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-2] | 0.2585ms | 0.2082ms | 4.8021 KOps/s | 4.8055 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-8] | 0.8598ms | 0.7986ms | 1.2522 KOps/s | 1.2280 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-32] | 3.2926ms | 3.1695ms | 315.5089 Ops/s | 310.1801 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-2] | 0.9179ms | 0.3564ms | 2.8060 KOps/s | 2.7215 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-8] | 2.2580ms | 1.6915ms | 591.1881 Ops/s | 592.8950 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-32] | 10.2983ms | 10.0649ms | 99.3556 Ops/s | 99.1869 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-2] | 0.4606ms | 0.3923ms | 2.5491 KOps/s | 2.5697 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-8] | 1.5809ms | 1.4608ms | 684.5543 Ops/s | 673.1189 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-32] | 5.7416ms | 5.6130ms | 178.1577 Ops/s | 176.4622 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-2] | 0.4634ms | 0.3864ms | 2.5880 KOps/s | 2.4324 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-8] | 1.5508ms | 1.4411ms | 693.9234 Ops/s | 679.0966 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-32] | 5.7449ms | 5.6596ms | 176.6916 Ops/s | 175.8919 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-32-2] | 0.2155ms | 0.1694ms | 5.9042 KOps/s | 5.8514 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-32-8] | 0.7212ms | 0.6580ms | 1.5197 KOps/s | 1.4990 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-32-32] | 2.7318ms | 2.6285ms | 380.4401 Ops/s | 377.7897 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-2] | 0.3827ms | 0.3236ms | 3.0900 KOps/s | 3.0978 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-8] | 1.6903ms | 1.4940ms | 669.3494 Ops/s | 671.9500 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-32] | 9.6477ms | 9.4084ms | 106.2885 Ops/s | 105.6726 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-32-2] | 0.4522ms | 0.3213ms | 3.1124 KOps/s | 3.0939 KOps/s | |
| test_collector_preallocated_write[copy_at-cuda-32-8] | 1.4623ms | 1.2007ms | 832.8714 Ops/s | 830.2311 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-32-32] | 4.8187ms | 4.6825ms | 213.5628 Ops/s | 212.4013 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-2] | 0.4066ms | 0.3241ms | 3.0852 KOps/s | 3.0577 KOps/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-8] | 1.3098ms | 1.2087ms | 827.3326 Ops/s | 828.1228 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-32] | 4.9015ms | 4.7249ms | 211.6429 Ops/s | 210.8296 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-2] | 0.1504ms | 0.1186ms | 8.4328 KOps/s | 8.5436 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-8] | 0.5245ms | 0.4626ms | 2.1619 KOps/s | 2.1612 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-32] | 1.9250ms | 1.8341ms | 545.2350 Ops/s | 539.8782 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-2] | 0.3183ms | 0.2505ms | 3.9913 KOps/s | 3.8537 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-8] | 1.4814ms | 1.2457ms | 802.7883 Ops/s | 822.6331 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-32] | 8.7082ms | 8.5185ms | 117.3913 Ops/s | 118.0188 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-2] | 0.3472ms | 0.2701ms | 3.7022 KOps/s | 3.7304 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-8] | 1.0878ms | 0.9958ms | 1.0043 KOps/s | 1.0056 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-32] | 3.9968ms | 3.8828ms | 257.5455 Ops/s | 257.4220 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-2] | 0.4143ms | 0.2685ms | 3.7248 KOps/s | 3.7373 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-8] | 1.1336ms | 0.9961ms | 1.0039 KOps/s | 1.0059 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-32] | 4.0145ms | 3.8973ms | 256.5887 Ops/s | 256.4591 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-128-128] | 16.5786ms | 16.4324ms | 60.8552 Ops/s | 60.2758 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-128-256] | 33.3508ms | 33.1508ms | 30.1652 Ops/s | 30.0574 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-4096-128] | 83.6455ms | 83.4531ms | 11.9828 Ops/s | 11.9833 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-4096-256] | 0.1970s | 0.1962s | 5.0962 Ops/s | 5.0504 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-128-128] | 13.9396ms | 13.7871ms | 72.5314 Ops/s | 72.5033 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-128-256] | 27.1949ms | 26.9767ms | 37.0690 Ops/s | 37.1494 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-4096-128] | 14.0422ms | 13.9245ms | 71.8158 Ops/s | 71.7024 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-4096-256] | 27.4828ms | 27.3316ms | 36.5877 Ops/s | 36.6321 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-128-128] | 53.5522ms | 52.7332ms | 18.9634 Ops/s | 19.6361 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-128-256] | 0.1069s | 0.1058s | 9.4483 Ops/s | 9.6925 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-4096-128] | 0.1451s | 0.1435s | 6.9664 Ops/s | 6.8393 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-4096-256] | 0.3165s | 0.3139s | 3.1862 Ops/s | 3.1697 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-128-128] | 77.1712ms | 76.2890ms | 13.1080 Ops/s | 12.9404 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-128-256] | 0.1549s | 0.1542s | 6.4845 Ops/s | 6.4313 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-4096-128] | 77.8319ms | 76.8250ms | 13.0166 Ops/s | 12.8846 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-4096-256] | 0.1561s | 0.1541s | 6.4901 Ops/s | 6.4509 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-128-128] | 30.2533ms | 30.0323ms | 33.2975 Ops/s | 33.1204 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-128-256] | 60.6839ms | 60.4511ms | 16.5423 Ops/s | 16.4312 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-4096-128] | 0.1229s | 0.1214s | 8.2365 Ops/s | 8.3697 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-4096-256] | 0.2670s | 0.2666s | 3.7508 Ops/s | 3.7181 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-128-128] | 43.4659ms | 43.2456ms | 23.1237 Ops/s | 23.1375 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-128-256] | 86.5976ms | 86.2288ms | 11.5971 Ops/s | 11.5918 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-4096-128] | 43.8841ms | 43.6300ms | 22.9200 Ops/s | 22.8969 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-4096-256] | 87.2938ms | 86.8456ms | 11.5147 Ops/s | 11.4829 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-128-128] | 20.2765ms | 20.0488ms | 49.8784 Ops/s | 49.7408 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-128-256] | 41.0788ms | 40.9425ms | 24.4245 Ops/s | 24.3257 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-4096-128] | 0.1040s | 0.1039s | 9.6272 Ops/s | 9.3381 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-4096-256] | 0.2372s | 0.2368s | 4.2221 Ops/s | 4.0582 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-128-128] | 35.7395ms | 35.4795ms | 28.1853 Ops/s | 28.0633 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-128-256] | 71.4763ms | 70.9803ms | 14.0884 Ops/s | 14.0860 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-4096-128] | 36.0090ms | 35.6536ms | 28.0477 Ops/s | 28.1279 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-4096-256] | 71.3503ms | 70.7876ms | 14.1268 Ops/s | 13.9946 Ops/s | |
| test_plain_set_nested | 47.4410μs | 15.3699μs | 65.0624 KOps/s | 65.9251 KOps/s | |
| test_plain_set_stack_nested | 56.6710μs | 14.9598μs | 66.8458 KOps/s | 67.3257 KOps/s | |
| test_plain_set_nested_inplace | 48.9000μs | 16.6520μs | 60.0527 KOps/s | 60.4925 KOps/s | |
| test_plain_set_stack_nested_inplace | 61.5210μs | 16.3763μs | 61.0637 KOps/s | 61.3276 KOps/s | |
| test_items | 39.6010μs | 6.0610μs | 164.9891 KOps/s | 164.0905 KOps/s | |
| test_items_nested | 0.5307ms | 0.4640ms | 2.1553 KOps/s | 2.1434 KOps/s | |
| test_items_nested_locked | 0.5245ms | 0.4708ms | 2.1239 KOps/s | 2.1601 KOps/s | |
| test_items_nested_leaf | 0.1538ms | 98.5253μs | 10.1497 KOps/s | 10.1746 KOps/s | |
| test_items_stack_nested | 0.5328ms | 0.4686ms | 2.1340 KOps/s | 2.1519 KOps/s | |
| test_items_stack_nested_leaf | 0.1575ms | 95.6177μs | 10.4583 KOps/s | 10.2678 KOps/s | |
| test_items_stack_nested_locked | 0.5396ms | 0.4716ms | 2.1206 KOps/s | 2.1299 KOps/s | |
| test_keys | 43.2310μs | 4.2010μs | 238.0378 KOps/s | 240.5479 KOps/s | |
| test_keys_nested | 0.1679ms | 0.1301ms | 7.6880 KOps/s | 7.6761 KOps/s | |
| test_keys_nested_locked | 0.7864ms | 0.1388ms | 7.2036 KOps/s | 7.2189 KOps/s | |
| test_keys_nested_leaf | 0.1630ms | 0.1214ms | 8.2382 KOps/s | 8.2905 KOps/s | |
| test_keys_stack_nested | 0.2095ms | 0.1301ms | 7.6840 KOps/s | 7.7275 KOps/s | |
| test_keys_stack_nested_leaf | 0.1653ms | 0.1212ms | 8.2528 KOps/s | 8.3264 KOps/s | |
| test_keys_stack_nested_locked | 0.1822ms | 0.1395ms | 7.1709 KOps/s | 7.2407 KOps/s | |
| test_values | 6.2462μs | 1.0201μs | 980.3026 KOps/s | 985.5953 KOps/s | |
| test_values_nested | 0.1020ms | 53.0720μs | 18.8423 KOps/s | 18.7704 KOps/s | |
| test_values_nested_locked | 90.4720μs | 56.1192μs | 17.8192 KOps/s | 17.6642 KOps/s | |
| test_values_nested_leaf | 93.4220μs | 60.8209μs | 16.4417 KOps/s | 16.2686 KOps/s | |
| test_values_stack_nested | 92.7010μs | 52.7306μs | 18.9643 KOps/s | 18.8152 KOps/s | |
| test_values_stack_nested_leaf | 96.8320μs | 61.1320μs | 16.3581 KOps/s | 16.8768 KOps/s | |
| test_values_stack_nested_locked | 98.4820μs | 55.8726μs | 17.8979 KOps/s | 18.0371 KOps/s | |
| test_membership | 4.9717μs | 0.8417μs | 1.1880 MOps/s | 1.0045 MOps/s | |
| test_membership_nested | 26.5100μs | 2.9378μs | 340.3862 KOps/s | 336.0779 KOps/s | |
| test_membership_nested_leaf | 33.8910μs | 2.9444μs | 339.6319 KOps/s | 339.2153 KOps/s | |
| test_membership_stacked_nested | 24.4910μs | 2.8168μs | 355.0182 KOps/s | 350.3506 KOps/s | |
| test_membership_stacked_nested_leaf | 32.2610μs | 2.8255μs | 353.9228 KOps/s | 350.7508 KOps/s | |
| test_membership_nested_last | 31.1900μs | 4.4263μs | 225.9214 KOps/s | 225.4171 KOps/s | |
| test_membership_nested_leaf_last | 32.3910μs | 4.4268μs | 225.8975 KOps/s | 226.1285 KOps/s | |
| test_membership_stacked_nested_last | 49.8910μs | 4.3069μs | 232.1852 KOps/s | 234.9431 KOps/s | |
| test_membership_stacked_nested_leaf_last | 45.4810μs | 4.2699μs | 234.1981 KOps/s | 243.6765 KOps/s | |
| test_nested_getleaf | 51.2210μs | 21.4041μs | 46.7201 KOps/s | 47.2309 KOps/s | |
| test_nested_get | 47.6110μs | 20.2624μs | 49.3525 KOps/s | 49.7425 KOps/s | |
| test_stacked_getleaf | 64.2810μs | 21.0706μs | 47.4595 KOps/s | 47.8388 KOps/s | |
| test_stacked_get | 56.8010μs | 19.7795μs | 50.5575 KOps/s | 50.0679 KOps/s | |
| test_nested_getitemleaf | 50.5810μs | 21.9005μs | 45.6611 KOps/s | 45.5687 KOps/s | |
| test_nested_getitem | 50.4910μs | 20.8487μs | 47.9647 KOps/s | 47.5882 KOps/s | |
| test_stacked_getitemleaf | 61.5010μs | 21.8683μs | 45.7283 KOps/s | 45.9992 KOps/s | |
| test_stacked_getitem | 89.9220μs | 19.8845μs | 50.2904 KOps/s | 49.2457 KOps/s | |
| test_lock_nested | 0.5833ms | 0.4980ms | 2.0079 KOps/s | 1.9553 KOps/s | |
| test_lock_stack_nested | 0.6446ms | 0.5052ms | 1.9794 KOps/s | 1.9729 KOps/s | |
| test_unlock_nested | 0.4714ms | 0.3965ms | 2.5220 KOps/s | 2.5114 KOps/s | |
| test_unlock_stack_nested | 0.6220ms | 0.3979ms | 2.5134 KOps/s | 2.4823 KOps/s | |
| test_flatten_speed | 0.3556ms | 0.1215ms | 8.2330 KOps/s | 8.0693 KOps/s | |
| test_unflatten_speed | 0.6524ms | 0.5632ms | 1.7756 KOps/s | 1.7613 KOps/s | |
| test_common_ops | 0.8495ms | 0.7142ms | 1.4001 KOps/s | 1.4244 KOps/s | |
| test_creation | 0.1326ms | 3.1312μs | 319.3693 KOps/s | 315.8079 KOps/s | |
| test_creation_empty | 54.6310μs | 6.7684μs | 147.7460 KOps/s | 142.3413 KOps/s | |
| test_creation_nested_1 | 37.1200μs | 11.3256μs | 88.2954 KOps/s | 87.1277 KOps/s | |
| test_creation_nested_2 | 39.0610μs | 13.3254μs | 75.0446 KOps/s | 74.3889 KOps/s | |
| test_creation_many_keys[10] | 47.4710μs | 20.6962μs | 48.3182 KOps/s | 47.5617 KOps/s | |
| test_creation_many_keys[50] | 0.1338ms | 89.1757μs | 11.2138 KOps/s | 11.0393 KOps/s | |
| test_creation_many_keys[100] | 0.2185ms | 0.1752ms | 5.7065 KOps/s | 5.6349 KOps/s | |
| test_creation_nested_many_keys[10] | 97.4820μs | 44.2487μs | 22.5995 KOps/s | 22.1235 KOps/s | |
| test_creation_nested_many_keys[50] | 0.2444ms | 0.1819ms | 5.4978 KOps/s | 5.4564 KOps/s | |
| test_clone | 42.7310μs | 13.2179μs | 75.6550 KOps/s | 77.5587 KOps/s | |
| test_getitem[int] | 1.5551ms | 15.2871μs | 65.4146 KOps/s | 65.8189 KOps/s | |
| test_getitem[slice_int] | 0.1477ms | 25.2839μs | 39.5509 KOps/s | 40.9774 KOps/s | |
| test_getitem[range] | 0.1841ms | 64.9017μs | 15.4079 KOps/s | 15.3589 KOps/s | |
| test_getitem[tuple] | 0.1531ms | 24.8162μs | 40.2962 KOps/s | 41.6602 KOps/s | |
| test_getitem[list] | 0.1952ms | 60.3935μs | 16.5581 KOps/s | 16.8415 KOps/s | |
| test_setitem_dim[int] | 95.3820μs | 26.1265μs | 38.2754 KOps/s | 38.3181 KOps/s | |
| test_setitem_dim[slice_int] | 83.9310μs | 41.8694μs | 23.8838 KOps/s | 22.7523 KOps/s | |
| test_setitem_dim[range] | 0.1429ms | 97.3347μs | 10.2738 KOps/s | 10.8305 KOps/s | |
| test_setitem_dim[tuple] | 62.7210μs | 41.6208μs | 24.0265 KOps/s | 25.1848 KOps/s | |
| test_setitem | 53.4310μs | 17.0864μs | 58.5260 KOps/s | 58.0167 KOps/s | |
| test_set | 51.9310μs | 16.3492μs | 61.1651 KOps/s | 60.1111 KOps/s | |
| test_set_shared | 0.5822ms | 0.2097ms | 4.7681 KOps/s | 4.8699 KOps/s | |
| test_update | 0.3816ms | 20.9783μs | 47.6683 KOps/s | 47.4098 KOps/s | |
| test_update_nested | 87.2220μs | 32.9244μs | 30.3726 KOps/s | 29.8568 KOps/s | |
| test_update__nested | 0.4838ms | 33.5640μs | 29.7939 KOps/s | 30.5832 KOps/s | |
| test_set_nested | 53.8110μs | 18.1200μs | 55.1876 KOps/s | 55.1070 KOps/s | |
| test_set_nested_new | 59.8010μs | 22.6570μs | 44.1364 KOps/s | 43.6875 KOps/s | |
| test_select | 0.1040ms | 41.5074μs | 24.0921 KOps/s | 25.3613 KOps/s | |
| test_select_nested | 0.1163ms | 73.6115μs | 13.5848 KOps/s | 13.4503 KOps/s | |
| test_exclude_nested | 0.1249ms | 90.8547μs | 11.0066 KOps/s | 10.8888 KOps/s | |
| test_empty[True] | 0.4621ms | 0.3926ms | 2.5470 KOps/s | 2.5149 KOps/s | |
| test_empty[False] | 12.0078μs | 1.3909μs | 718.9421 KOps/s | 706.9801 KOps/s | |
| test_to | 0.1142ms | 73.7484μs | 13.5596 KOps/s | 14.6727 KOps/s | |
| test_to_nonblocking | 0.1176ms | 72.2715μs | 13.8367 KOps/s | 14.4886 KOps/s | |
| test_unbind_speed | 0.4156ms | 0.3352ms | 2.9837 KOps/s | 2.9295 KOps/s | |
| test_unbind_speed_stack0 | 0.4985ms | 0.3327ms | 3.0054 KOps/s | 3.0108 KOps/s | |
| test_unbind_speed_stack1 | 0.1170s | 0.8506ms | 1.1757 KOps/s | 1.1652 KOps/s | |
| test_split | 0.1174s | 1.4554ms | 687.0920 Ops/s | 638.0872 Ops/s | |
| test_chunk | 1.3327ms | 1.2237ms | 817.1814 Ops/s | 810.8499 Ops/s | |
| test_to_cpu_blocking | 20.2574ms | 19.9982ms | 50.0045 Ops/s | 50.1940 Ops/s | |
| test_to_cpu_global_sync | 0.1290s | 12.8645ms | 77.7332 Ops/s | 86.2229 Ops/s | |
| test_to_cpu_event_sync | 12.8387ms | 12.5125ms | 79.9200 Ops/s | 79.0676 Ops/s | |
| test_to_cpu_default | 12.8780ms | 12.5087ms | 79.9446 Ops/s | 70.2668 Ops/s | |
| test_consolidate[False-None] | 4.8237ms | 4.1633ms | 240.1965 Ops/s | 240.4947 Ops/s | |
| test_consolidate[default-None] | 3.2136ms | 2.2850ms | 437.6329 Ops/s | 439.3397 Ops/s | |
| test_consolidate[reduce-overhead-None] | 3.4225ms | 2.2168ms | 451.0942 Ops/s | 449.1604 Ops/s | |
| test_consolidate_njt[False-None] | 5.9807ms | 5.2091ms | 191.9706 Ops/s | 193.0785 Ops/s | |
| test_to[False-False-None] | 2.3193ms | 2.1909ms | 456.4279 Ops/s | 458.4469 Ops/s | |
| test_to[True-False-None] | 2.1372ms | 1.9618ms | 509.7463 Ops/s | 516.5311 Ops/s | |
| test_to[within-False-None] | 6.6421ms | 6.2699ms | 159.4925 Ops/s | 159.7010 Ops/s | |
| test_to[True-default-None] | 11.1732ms | 10.6132ms | 94.2222 Ops/s | 96.1006 Ops/s | |
| test_to_njt[False-False-None] | 7.2371ms | 7.0042ms | 142.7711 Ops/s | 144.4840 Ops/s | |
| test_to_njt[True-False-None] | 4.1475ms | 3.9062ms | 256.0008 Ops/s | 257.2200 Ops/s | |
| test_to_njt[within-False-None] | 9.5868ms | 9.1844ms | 108.8808 Ops/s | 110.5411 Ops/s | |
| test_creation[device0] | 0.4090ms | 0.1159ms | 8.6244 KOps/s | 8.5881 KOps/s | |
| test_creation_from_tensor | 0.4136ms | 0.1126ms | 8.8803 KOps/s | 9.0400 KOps/s | |
| test_add_one[memmap_tensor0] | 0.6406ms | 6.1596μs | 162.3483 KOps/s | 164.2226 KOps/s | |
| test_contiguous[memmap_tensor0] | 1.8305μs | 0.5226μs | 1.9134 MOps/s | 2.0640 MOps/s | |
| test_stack[memmap_tensor0] | 86.9020μs | 4.2053μs | 237.7968 KOps/s | 239.5708 KOps/s | |
| test_memmaptd_index | 1.4468ms | 0.2770ms | 3.6102 KOps/s | 3.6610 KOps/s | |
| test_memmaptd_index_astensor | 0.5456ms | 0.3797ms | 2.6339 KOps/s | 2.6658 KOps/s | |
| test_memmaptd_index_op | 0.8382ms | 0.6263ms | 1.5967 KOps/s | 1.6403 KOps/s | |
| test_serialize_model | 0.1403s | 0.1369s | 7.3034 Ops/s | 7.3566 Ops/s | |
| test_serialize_model_pickle | 1.3507s | 1.2101s | 0.8264 Ops/s | 0.8246 Ops/s | |
| test_serialize_weights | 0.1384s | 0.1355s | 7.3785 Ops/s | 7.4143 Ops/s | |
| test_serialize_weights_returnearly | 88.4507ms | 66.0011ms | 15.1513 Ops/s | 10.4558 Ops/s | |
| test_serialize_weights_pickle | 1.3556s | 1.2114s | 0.8255 Ops/s | 0.8231 Ops/s | |
| test_reshape_pytree | 0.1892ms | 32.2732μs | 30.9855 KOps/s | 31.0407 KOps/s | |
| test_reshape_td | 88.0220μs | 45.6525μs | 21.9046 KOps/s | 22.0651 KOps/s | |
| test_view_pytree | 0.2206ms | 31.7645μs | 31.4817 KOps/s | 31.5883 KOps/s | |
| test_view_td | 0.1026ms | 53.8965μs | 18.5541 KOps/s | 18.4389 KOps/s | |
| test_unbind_pytree | 0.2475ms | 35.6470μs | 28.0528 KOps/s | 27.9436 KOps/s | |
| test_unbind_td | 0.1790ms | 49.7128μs | 20.1155 KOps/s | 20.1126 KOps/s | |
| test_split_pytree | 0.2474ms | 40.6549μs | 24.5973 KOps/s | 24.2429 KOps/s | |
| test_split_td | 0.1425ms | 70.9588μs | 14.0927 KOps/s | 13.7616 KOps/s | |
| test_add_pytree | 0.2357ms | 39.4202μs | 25.3677 KOps/s | 25.3805 KOps/s | |
| test_add_td | 0.1049ms | 52.4491μs | 19.0661 KOps/s | 18.9001 KOps/s | |
| test_compile_add_one_nested[tensordict-compile] | 0.3821ms | 0.2852ms | 3.5065 KOps/s | 3.7388 KOps/s | |
| test_compile_add_one_nested[tensordict-eager] | 0.2944ms | 0.2031ms | 4.9233 KOps/s | 4.9537 KOps/s | |
| test_compile_add_one_nested[pytree-compile] | 0.2398ms | 0.1557ms | 6.4220 KOps/s | 6.3977 KOps/s | |
| test_compile_add_one_nested[pytree-eager] | 0.5104ms | 0.1766ms | 5.6615 KOps/s | 5.5751 KOps/s | |
| test_compile_copy_nested[tensordict-compile] | 77.8410μs | 21.6858μs | 46.1132 KOps/s | 46.7829 KOps/s | |
| test_compile_copy_nested[tensordict-eager] | 0.2517ms | 53.9977μs | 18.5193 KOps/s | 18.2741 KOps/s | |
| test_compile_copy_nested[pytree-compile] | 0.2253ms | 19.3426μs | 51.6993 KOps/s | 53.0161 KOps/s | |
| test_compile_copy_nested[pytree-eager] | 0.3647ms | 67.6849μs | 14.7743 KOps/s | 15.0896 KOps/s | |
| test_compile_add_one_flat[tensordict-compile] | 0.6263ms | 0.3184ms | 3.1405 KOps/s | 3.1601 KOps/s | |
| test_compile_add_one_flat[tensordict-eager] | 0.3524ms | 0.2931ms | 3.4123 KOps/s | 3.3925 KOps/s | |
| test_compile_add_one_flat[tensorclass-compile] | 0.2917ms | 0.2170ms | 4.6079 KOps/s | 4.6494 KOps/s | |
| test_compile_add_one_flat[tensorclass-eager] | 0.1215ms | 76.6332μs | 13.0492 KOps/s | 12.9505 KOps/s | |
| test_compile_add_one_flat[pytree-compile] | 0.5843ms | 0.2442ms | 4.0956 KOps/s | 4.0092 KOps/s | |
| test_compile_add_one_flat[pytree-eager] | 0.8248ms | 0.5288ms | 1.8912 KOps/s | 1.8778 KOps/s | |
| test_compile_add_self_flat[tensordict-eager] | 0.5110ms | 0.3418ms | 2.9255 KOps/s | 2.8602 KOps/s | |
| test_compile_add_self_flat[tensordict-compile] | 0.4262ms | 0.3209ms | 3.1164 KOps/s | 3.0949 KOps/s | |
| test_compile_add_self_flat[tensorclass-eager] | 0.2290ms | 93.9583μs | 10.6430 KOps/s | 10.7717 KOps/s | |
| test_compile_add_self_flat[tensorclass-compile] | 0.3815ms | 0.2184ms | 4.5790 KOps/s | 4.5515 KOps/s | |
| test_compile_add_self_flat[pytree-eager] | 0.6950ms | 0.4393ms | 2.2765 KOps/s | 2.2845 KOps/s | |
| test_compile_add_self_flat[pytree-compile] | 0.6036ms | 0.2450ms | 4.0819 KOps/s | 4.0763 KOps/s | |
| test_compile_copy_flat[tensordict-compile] | 90.1510μs | 26.6550μs | 37.5164 KOps/s | 38.6407 KOps/s | |
| test_compile_copy_flat[tensordict-eager] | 99.4120μs | 41.1816μs | 24.2827 KOps/s | 24.1232 KOps/s | |
| test_compile_copy_flat[pytree-compile] | 0.2007ms | 25.2659μs | 39.5790 KOps/s | 38.7371 KOps/s | |
| test_compile_copy_flat[pytree-eager] | 0.3347ms | 52.0279μs | 19.2205 KOps/s | 19.3550 KOps/s | |
| test_compile_assign_and_add[tensordict-compile] | 2.1525ms | 0.2666ms | 3.7511 KOps/s | 3.7396 KOps/s | |
| test_compile_assign_and_add[tensordict-eager] | 3.6188ms | 3.3193ms | 301.2651 Ops/s | 291.7064 Ops/s | |
| test_compile_assign_and_add[pytree-compile] | 1.9483ms | 0.1972ms | 5.0708 KOps/s | 5.0247 KOps/s | |
| test_compile_assign_and_add[pytree-eager] | 3.2242ms | 2.8014ms | 356.9587 Ops/s | 355.7169 Ops/s | |
| test_compile_indexing[tensor-tensordict-compile] | 0.2809ms | 0.1571ms | 6.3670 KOps/s | 6.3725 KOps/s | |
| test_compile_indexing[tensor-tensordict-eager] | 0.3781ms | 75.6008μs | 13.2274 KOps/s | 13.4302 KOps/s | |
| test_compile_indexing[tensor-tensorclass-compile] | 0.3189ms | 0.1362ms | 7.3435 KOps/s | 7.4512 KOps/s | |
| test_compile_indexing[tensor-tensorclass-eager] | 0.3273ms | 46.6103μs | 21.4545 KOps/s | 22.5094 KOps/s | |
| test_compile_indexing[tensor-pytree-compile] | 0.1827ms | 0.1360ms | 7.3518 KOps/s | 7.4046 KOps/s | |
| test_compile_indexing[tensor-pytree-eager] | 0.2870ms | 44.7921μs | 22.3254 KOps/s | 22.6485 KOps/s | |
| test_compile_indexing[slice-tensordict-compile] | 0.2014ms | 0.1016ms | 9.8414 KOps/s | 11.1785 KOps/s | |
| test_compile_indexing[slice-tensordict-eager] | 0.2084ms | 28.1045μs | 35.5815 KOps/s | 36.6010 KOps/s | |
| test_compile_indexing[slice-tensorclass-compile] | 0.1834ms | 70.3477μs | 14.2151 KOps/s | 14.3411 KOps/s | |
| test_compile_indexing[slice-tensorclass-eager] | 0.2493ms | 22.2230μs | 44.9985 KOps/s | 45.3210 KOps/s | |
| test_compile_indexing[slice-pytree-compile] | 0.1212ms | 72.7501μs | 13.7457 KOps/s | 13.7801 KOps/s | |
| test_compile_indexing[slice-pytree-eager] | 0.3072ms | 22.0137μs | 45.4262 KOps/s | 45.2550 KOps/s | |
| test_compile_indexing[int-tensordict-compile] | 0.1444ms | 90.0428μs | 11.1058 KOps/s | 11.0938 KOps/s | |
| test_compile_indexing[int-tensordict-eager] | 0.2156ms | 27.4546μs | 36.4238 KOps/s | 36.6978 KOps/s | |
| test_compile_indexing[int-tensorclass-compile] | 0.1153ms | 72.6073μs | 13.7727 KOps/s | 13.9796 KOps/s | |
| test_compile_indexing[int-tensorclass-eager] | 0.2363ms | 21.6461μs | 46.1976 KOps/s | 45.3269 KOps/s | |
| test_compile_indexing[int-pytree-compile] | 0.1411ms | 72.1325μs | 13.8634 KOps/s | 14.1246 KOps/s | |
| test_compile_indexing[int-pytree-eager] | 0.2604ms | 22.0477μs | 45.3562 KOps/s | 45.7313 KOps/s | |
| test_compile_replace[single-eager] | 99.3020μs | 47.4212μs | 21.0876 KOps/s | 21.4734 KOps/s | |
| test_compile_replace[single-compile] | 0.2708ms | 0.1488ms | 6.7197 KOps/s | 6.8382 KOps/s | |
| test_compile_replace[multi-eager] | 0.6509ms | 0.5711ms | 1.7512 KOps/s | 1.7816 KOps/s | |
| test_compile_replace[multi-compile] | 0.3277ms | 0.1600ms | 6.2499 KOps/s | 6.3165 KOps/s | |
| test_compile_tc_getattr_20[eager] | 0.2299ms | 0.1724ms | 5.7999 KOps/s | 5.8089 KOps/s | |
| test_compile_tc_getattr_20[compile] | 0.3938ms | 0.1761ms | 5.6777 KOps/s | 5.6291 KOps/s | |
| test_compile_clone_shallow[20-eager] | 55.0110μs | 18.7371μs | 53.3700 KOps/s | 52.3646 KOps/s | |
| test_compile_clone_shallow[20-compile] | 82.1420μs | 23.2551μs | 43.0012 KOps/s | 41.9974 KOps/s | |
| test_compile_clone_shallow[40-eager] | 82.0010μs | 32.6071μs | 30.6682 KOps/s | 29.9119 KOps/s | |
| test_compile_clone_shallow[40-compile] | 83.2910μs | 24.8351μs | 40.2656 KOps/s | 40.6356 KOps/s | |
| test_compile_clone_shallow[80-eager] | 98.5220μs | 61.3728μs | 16.2939 KOps/s | 15.8510 KOps/s | |
| test_compile_clone_shallow[80-compile] | 0.1130ms | 28.8232μs | 34.6943 KOps/s | 35.4623 KOps/s | |
| test_compile_update_inplace[eager] | 0.1263ms | 61.7946μs | 16.1827 KOps/s | 15.8584 KOps/s | |
| test_compile_update_inplace[compile] | 0.4176ms | 0.1221ms | 8.1912 KOps/s | 7.9965 KOps/s | |
| test_mod_add[eager] | 0.2736ms | 0.2247ms | 4.4511 KOps/s | 4.3849 KOps/s | |
| test_mod_add[compile] | 0.8065ms | 0.1178ms | 8.4877 KOps/s | 8.2658 KOps/s | |
| test_mod_add[compile-overhead] | 0.4101ms | 0.2004ms | 4.9896 KOps/s | 5.0642 KOps/s | |
| test_mod_wrap[eager] | 0.5884ms | 0.4888ms | 2.0458 KOps/s | 2.1029 KOps/s | |
| test_mod_wrap[compile] | 0.4506ms | 0.3499ms | 2.8581 KOps/s | 2.8103 KOps/s | |
| test_mod_wrap[compile-overhead] | 7.1264ms | 3.9872ms | 250.8022 Ops/s | 257.4861 Ops/s | |
| test_mod_wrap_and_backward[eager] | 1.9679ms | 1.7790ms | 562.1144 Ops/s | 598.3165 Ops/s | |
| test_mod_wrap_and_backward[compile] | 2.0183ms | 1.4441ms | 692.4904 Ops/s | 736.1828 Ops/s | |
| test_mod_wrap_and_backward[compile-overhead] | 1.8066ms | 1.0563ms | 946.7105 Ops/s | 1.0313 KOps/s | |
| test_seq_add[eager] | 0.5591ms | 0.5059ms | 1.9768 KOps/s | 1.9444 KOps/s | |
| test_seq_add[compile] | 0.2987ms | 0.1377ms | 7.2613 KOps/s | 7.1284 KOps/s | |
| test_seq_add[compile-overhead] | 0.2915ms | 0.2073ms | 4.8237 KOps/s | 4.7014 KOps/s | |
| test_seq_wrap[eager] | 5.0874ms | 1.4229ms | 702.7891 Ops/s | 699.5694 Ops/s | |
| test_seq_wrap[compile] | 0.4323ms | 0.3626ms | 2.7580 KOps/s | 2.6608 KOps/s | |
| test_seq_wrap[compile-overhead] | 0.4606ms | 0.3268ms | 3.0600 KOps/s | 3.0330 KOps/s | |
| test_func_call_runtime[False-eager] | 0.9121ms | 0.8451ms | 1.1833 KOps/s | 1.2268 KOps/s | |
| test_func_call_runtime[False-compile] | 0.8541ms | 0.7650ms | 1.3072 KOps/s | 1.3046 KOps/s | |
| test_func_call_runtime[False-compile-overhead] | 0.6831ms | 0.5092ms | 1.9638 KOps/s | 1.9455 KOps/s | |
| test_func_call_runtime[True-eager] | 1.1722ms | 1.0730ms | 931.9457 Ops/s | 927.2930 Ops/s | |
| test_func_call_runtime[True-compile] | 0.8867ms | 0.7759ms | 1.2887 KOps/s | 1.2784 KOps/s | |
| test_func_call_runtime[True-compile-overhead] | 0.7084ms | 0.5287ms | 1.8916 KOps/s | 1.8788 KOps/s | |
| test_func_call_cm_runtime[False-eager] | 1.0193ms | 0.8506ms | 1.1756 KOps/s | 1.2342 KOps/s | |
| test_func_call_cm_runtime[False-compile] | 0.9495ms | 0.7452ms | 1.3420 KOps/s | 1.3223 KOps/s | |
| test_func_call_cm_runtime[False-compile-overhead] | 0.5706ms | 0.4937ms | 2.0254 KOps/s | 2.0129 KOps/s | |
| test_func_call_cm_runtime[True-eager] | 1.4192ms | 1.2208ms | 819.1367 Ops/s | 798.9892 Ops/s | |
| test_func_call_cm_runtime[True-compile] | 0.9262ms | 0.8589ms | 1.1643 KOps/s | 1.1548 KOps/s | |
| test_func_call_cm_runtime[True-compile-overhead] | 1.0972ms | 0.8719ms | 1.1469 KOps/s | 1.1589 KOps/s | |
| test_vmap_func_call_cm_runtime[eager] | 3.1726ms | 2.6724ms | 374.1894 Ops/s | 372.9919 Ops/s | |
| test_vmap_func_call_cm_runtime[compile] | 4.1370ms | 3.6682ms | 272.6161 Ops/s | 272.1404 Ops/s | |
| test_vmap_func_call_cm_runtime[compile-overhead] | 4.1323ms | 3.6584ms | 273.3404 Ops/s | 272.1835 Ops/s | |
| test_distributed | 1.6387ms | 0.1501ms | 6.6642 KOps/s | 5.9448 KOps/s | |
| test_tdmodule | 0.4762ms | 0.1937ms | 5.1620 KOps/s | 5.1499 KOps/s | |
| test_tdmodule_dispatch | 0.4288ms | 0.3702ms | 2.7014 KOps/s | 2.6580 KOps/s | |
| test_tdseq | 46.0510μs | 26.6922μs | 37.4641 KOps/s | 36.6215 KOps/s | |
| test_tdseq_dispatch | 0.2634ms | 0.2177ms | 4.5928 KOps/s | 4.5536 KOps/s | |
| test_instantiation_functorch | 2.1726ms | 2.0481ms | 488.2504 Ops/s | 488.4956 Ops/s | |
| test_exec_functorch | 0.2862ms | 0.1728ms | 5.7867 KOps/s | 5.7646 KOps/s | |
| test_exec_functional_call | 0.2182ms | 0.1563ms | 6.3966 KOps/s | 6.4692 KOps/s | |
| test_exec_td_decorator | 0.5486ms | 0.2421ms | 4.1310 KOps/s | 4.0980 KOps/s | |
| test_vmap_mlp_speed_decorator[True-True] | 1.4030ms | 1.1269ms | 887.3674 Ops/s | 890.1602 Ops/s | |
| test_vmap_mlp_speed_decorator[True-False] | 1.3197ms | 1.1141ms | 897.5574 Ops/s | 893.3216 Ops/s | |
| test_vmap_mlp_speed_decorator[False-True] | 1.0378ms | 0.8195ms | 1.2203 KOps/s | 1.2141 KOps/s | |
| test_vmap_mlp_speed_decorator[False-False] | 1.0321ms | 0.8167ms | 1.2244 KOps/s | 1.2217 KOps/s | |
| test_vmap_transformer_speed_decorator[True-True] | 27.3545ms | 25.1102ms | 39.8245 Ops/s | 40.0032 Ops/s | |
| test_vmap_transformer_speed_decorator[True-False] | 25.9827ms | 24.9621ms | 40.0608 Ops/s | 40.0781 Ops/s | |
| test_vmap_transformer_speed_decorator[False-True] | 24.7137ms | 24.5859ms | 40.6738 Ops/s | 40.7057 Ops/s | |
| test_vmap_transformer_speed_decorator[False-False] | 24.6737ms | 24.5114ms | 40.7973 Ops/s | 40.7588 Ops/s | |
| test_to_module_speed[True] | 2.3471ms | 1.6579ms | 603.1872 Ops/s | 597.3821 Ops/s | |
| test_to_module_speed[False] | 2.2101ms | 1.6039ms | 623.4819 Ops/s | 606.0503 Ops/s | |
| test_to_module_plain_tensor_speed[None] | 2.4792ms | 1.7434ms | 573.5977 Ops/s | 566.2807 Ops/s | |
| test_to_module_plain_tensor_speed[False] | 2.1538ms | 1.5766ms | 634.2659 Ops/s | 617.4585 Ops/s | |
| test_to_module_plain_tensor_speed[True] | 3.8233ms | 3.3500ms | 298.5061 Ops/s | 293.5595 Ops/s | |
| test_tc_init | 83.8210μs | 44.5697μs | 22.4368 KOps/s | 22.8112 KOps/s | |
| test_tc_init_tensor_only | 25.0610μs | 9.4501μs | 105.8189 KOps/s | 106.8905 KOps/s | |
| test_tc_init_nested | 0.1079ms | 87.5717μs | 11.4192 KOps/s | 11.2990 KOps/s | |
| test_tc_init_many_fields | 56.7510μs | 17.0063μs | 58.8017 KOps/s | 58.7520 KOps/s | |
| test_tc_first_layer_tensor | 32.4500μs | 1.7945μs | 557.2686 KOps/s | 570.4024 KOps/s | |
| test_tc_first_layer_tensor_only | 2.1705μs | 0.4021μs | 2.4869 MOps/s | 2.5128 MOps/s | |
| test_tc_first_layer_tensor_set | 34.3010μs | 4.1835μs | 239.0326 KOps/s | 242.5818 KOps/s | |
| test_tc_first_layer_tensor_only_set | 25.5900μs | 3.4969μs | 285.9691 KOps/s | 289.0480 KOps/s | |
| test_tc_first_layer_nontensor | 32.4310μs | 6.0897μs | 164.2124 KOps/s | 165.0690 KOps/s | |
| test_tc_second_layer_tensor | 30.4800μs | 4.3716μs | 228.7496 KOps/s | 231.5691 KOps/s | |
| test_tc_second_layer_nontensor | 54.8910μs | 8.2145μs | 121.7363 KOps/s | 121.9948 KOps/s | |
| test_unbind | 0.2959s | 14.3676ms | 69.6010 Ops/s | 65.0855 Ops/s | |
| test_full_like | 4.5008ms | 4.3718ms | 228.7367 Ops/s | 228.1413 Ops/s | |
| test_zeros_like | 4.5639ms | 4.3521ms | 229.7743 Ops/s | 228.6786 Ops/s | |
| test_ones_like | 4.5047ms | 4.3238ms | 231.2804 Ops/s | 228.6817 Ops/s | |
| test_clone | 6.6294ms | 6.4474ms | 155.1004 Ops/s | 155.9691 Ops/s | |
| test_squeeze | 72.8720μs | 14.1886μs | 70.4792 KOps/s | 70.2969 KOps/s | |
| test_unsqueeze | 0.3206ms | 0.1093ms | 9.1512 KOps/s | 8.9302 KOps/s | |
| test_split | 0.2612ms | 0.1915ms | 5.2227 KOps/s | 5.2339 KOps/s | |
| test_permute | 0.3069ms | 0.1990ms | 5.0262 KOps/s | 5.1923 KOps/s | |
| test_stack | 18.1552ms | 17.9867ms | 55.5967 Ops/s | 55.4985 Ops/s | |
| test_cat | 18.1547ms | 17.9739ms | 55.6361 Ops/s | 55.6730 Ops/s | |
| test_sequential_tensordict | 0.7058ms | 0.5652ms | 1.7692 KOps/s | 1.7446 KOps/s | |
| test_sequential_graph_module | 0.1671ms | 0.1125ms | 8.8912 KOps/s | 8.7645 KOps/s | |
| test_nested_tensordict | 1.0979ms | 0.8065ms | 1.2400 KOps/s | 1.2134 KOps/s | |
| test_nested_graph_module | 0.2153ms | 0.1236ms | 8.0880 KOps/s | 7.9298 KOps/s |
Contributor
|
| Name | Max | Mean | Ops | Ops on Repo HEAD
|
Change |
|---|---|---|---|---|---|
| test_collector_preallocated_write[stack_out-cpu-32-2] | 0.2716ms | 0.1646ms | 6.0737 KOps/s | 6.2580 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-32-8] | 0.4187ms | 0.2864ms | 3.4915 KOps/s | 3.4968 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-32-32] | 0.8167ms | 0.7541ms | 1.3261 KOps/s | 1.3162 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-2] | 0.4039ms | 0.3326ms | 3.0066 KOps/s | 2.9590 KOps/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-8] | 1.5169ms | 1.1252ms | 888.7540 Ops/s | 890.2375 Ops/s | |
| test_collector_preallocated_write[stack_out-cpu-4096-32] | 7.7796ms | 7.4691ms | 133.8852 Ops/s | 132.8375 Ops/s | |
| test_collector_preallocated_write[stack_out-cuda-32-2] | 0.3148ms | 0.2528ms | 3.9553 KOps/s | 4.0950 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-32-8] | 0.4408ms | 0.3649ms | 2.7408 KOps/s | 2.6314 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-32-32] | 0.8754ms | 0.8060ms | 1.2407 KOps/s | 1.2334 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-2] | 0.3455ms | 0.2539ms | 3.9389 KOps/s | 3.8987 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-8] | 0.4523ms | 0.3655ms | 2.7363 KOps/s | 2.7402 KOps/s | |
| test_collector_preallocated_write[stack_out-cuda-4096-32] | 0.9565ms | 0.8641ms | 1.1573 KOps/s | 1.1538 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-2] | 0.2697ms | 0.2063ms | 4.8477 KOps/s | 4.8443 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-8] | 0.9485ms | 0.7848ms | 1.2742 KOps/s | 1.2508 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-32-32] | 3.3950ms | 3.2347ms | 309.1523 Ops/s | 312.3496 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-2] | 0.4403ms | 0.3692ms | 2.7086 KOps/s | 2.6988 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-8] | 3.8224ms | 1.8221ms | 548.8046 Ops/s | 586.2489 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cpu-4096-32] | 10.9667ms | 10.4263ms | 95.9117 Ops/s | 96.7835 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-2] | 0.4371ms | 0.3923ms | 2.5491 KOps/s | 2.5258 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-8] | 1.6564ms | 1.4926ms | 669.9703 Ops/s | 663.0011 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-32-32] | 6.2066ms | 5.8488ms | 170.9741 Ops/s | 166.5541 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-2] | 0.5013ms | 0.3985ms | 2.5097 KOps/s | 2.5543 KOps/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-8] | 1.6568ms | 1.4862ms | 672.8626 Ops/s | 695.4772 Ops/s | |
| test_collector_preallocated_write[set_at_loop-cuda-4096-32] | 6.0848ms | 5.8553ms | 170.7869 Ops/s | 176.9492 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-32-2] | 0.2865ms | 0.1645ms | 6.0781 KOps/s | 5.9403 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-32-8] | 0.7361ms | 0.6455ms | 1.5492 KOps/s | 1.5314 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-32-32] | 2.7029ms | 2.5552ms | 391.3562 Ops/s | 384.8943 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-2] | 0.3893ms | 0.3138ms | 3.1865 KOps/s | 3.0408 KOps/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-8] | 1.6437ms | 1.4612ms | 684.3777 Ops/s | 660.5890 Ops/s | |
| test_collector_preallocated_write[copy_at-cpu-4096-32] | 9.7094ms | 9.5246ms | 104.9918 Ops/s | 102.1791 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-32-2] | 0.4161ms | 0.3143ms | 3.1814 KOps/s | 3.1668 KOps/s | |
| test_collector_preallocated_write[copy_at-cuda-32-8] | 1.2568ms | 1.1685ms | 855.8218 Ops/s | 849.6128 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-32-32] | 4.7020ms | 4.5790ms | 218.3894 Ops/s | 215.9935 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-2] | 0.3828ms | 0.3153ms | 3.1720 KOps/s | 3.1352 KOps/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-8] | 1.2786ms | 1.1750ms | 851.0884 Ops/s | 839.6776 Ops/s | |
| test_collector_preallocated_write[copy_at-cuda-4096-32] | 4.7441ms | 4.6183ms | 216.5303 Ops/s | 214.4260 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-2] | 0.1923ms | 0.1169ms | 8.5526 KOps/s | 8.5375 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-8] | 0.5219ms | 0.4580ms | 2.1833 KOps/s | 2.1849 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-32-32] | 1.9001ms | 1.8214ms | 549.0394 Ops/s | 547.5915 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-2] | 0.3171ms | 0.2469ms | 4.0508 KOps/s | 3.6968 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-8] | 1.4017ms | 1.2140ms | 823.7481 Ops/s | 804.0755 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cpu-4096-32] | 8.8847ms | 8.6111ms | 116.1290 Ops/s | 115.9142 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-2] | 0.3612ms | 0.2705ms | 3.6968 KOps/s | 3.5114 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-8] | 1.0783ms | 1.0011ms | 998.8523 Ops/s | 955.9764 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-32-32] | 4.1563ms | 3.9250ms | 254.7782 Ops/s | 242.6368 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-2] | 0.3502ms | 0.2698ms | 3.7071 KOps/s | 3.5297 KOps/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-8] | 1.1049ms | 1.0131ms | 987.0875 Ops/s | 949.3138 Ops/s | |
| test_collector_preallocated_write[manual_leaf_copy-cuda-4096-32] | 4.0584ms | 3.9499ms | 253.1716 Ops/s | 241.6030 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-128-128] | 15.8463ms | 15.7007ms | 63.6914 Ops/s | 63.3735 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-128-256] | 32.1995ms | 31.9102ms | 31.3379 Ops/s | 31.3750 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-4096-128] | 88.1134ms | 86.0090ms | 11.6267 Ops/s | 10.6739 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cpu-4096-256] | 0.2029s | 0.2021s | 4.9489 Ops/s | 4.7158 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-128-128] | 13.3711ms | 13.2486ms | 75.4794 Ops/s | 75.9306 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-128-256] | 26.0152ms | 25.8017ms | 38.7572 Ops/s | 38.7251 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-4096-128] | 13.5892ms | 13.3730ms | 74.7776 Ops/s | 74.9569 Ops/s | |
| test_wide_nested_preallocated_write[stack_out-cuda-4096-256] | 26.4211ms | 26.1039ms | 38.3085 Ops/s | 38.2825 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-128-128] | 51.7944ms | 50.1923ms | 19.9234 Ops/s | 20.3081 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-128-256] | 0.1047s | 0.1031s | 9.7014 Ops/s | 9.9585 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-4096-128] | 0.1492s | 0.1467s | 6.8157 Ops/s | 7.0121 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cpu-4096-256] | 0.3255s | 0.3234s | 3.0919 Ops/s | 3.1244 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-128-128] | 76.0049ms | 73.7568ms | 13.5581 Ops/s | 13.9620 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-128-256] | 0.1516s | 0.1496s | 6.6836 Ops/s | 7.0227 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-4096-128] | 77.5729ms | 76.8974ms | 13.0043 Ops/s | 13.9334 Ops/s | |
| test_wide_nested_preallocated_write[set_at_loop-cuda-4096-256] | 0.1554s | 0.1539s | 6.4987 Ops/s | 6.9668 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-128-128] | 29.9467ms | 29.5068ms | 33.8905 Ops/s | 33.8204 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-128-256] | 59.8623ms | 59.4665ms | 16.8162 Ops/s | 16.7934 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-4096-128] | 0.1212s | 0.1205s | 8.3018 Ops/s | 8.4001 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cpu-4096-256] | 0.2697s | 0.2676s | 3.7365 Ops/s | 3.7780 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-128-128] | 42.6699ms | 42.3659ms | 23.6039 Ops/s | 23.6060 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-128-256] | 85.0500ms | 84.8553ms | 11.7848 Ops/s | 11.8392 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-4096-128] | 42.9340ms | 42.7077ms | 23.4150 Ops/s | 23.4316 Ops/s | |
| test_wide_nested_preallocated_write[copy_at-cuda-4096-256] | 85.9140ms | 85.6329ms | 11.6777 Ops/s | 11.7442 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-128-128] | 20.0108ms | 19.8318ms | 50.4241 Ops/s | 50.5370 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-128-256] | 40.6755ms | 40.4363ms | 24.7302 Ops/s | 24.7276 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-4096-128] | 0.1110s | 0.1101s | 9.0866 Ops/s | 9.3861 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cpu-4096-256] | 0.2545s | 0.2482s | 4.0289 Ops/s | 4.1020 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-128-128] | 38.4580ms | 38.0110ms | 26.3082 Ops/s | 27.9646 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-128-256] | 77.4872ms | 76.6903ms | 13.0395 Ops/s | 13.9872 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-4096-128] | 38.5719ms | 38.1512ms | 26.2115 Ops/s | 27.9233 Ops/s | |
| test_wide_nested_preallocated_write[manual_leaf_copy-cuda-4096-256] | 76.8252ms | 75.9539ms | 13.1659 Ops/s | 13.9680 Ops/s | |
| test_plain_set_nested | 42.3710μs | 14.5962μs | 68.5109 KOps/s | 68.4546 KOps/s | |
| test_plain_set_stack_nested | 58.1810μs | 14.4508μs | 69.2001 KOps/s | 69.8228 KOps/s | |
| test_plain_set_nested_inplace | 72.2920μs | 15.6830μs | 63.7635 KOps/s | 63.0107 KOps/s | |
| test_plain_set_stack_nested_inplace | 84.4020μs | 15.5006μs | 64.5135 KOps/s | 63.9140 KOps/s | |
| test_items | 30.9710μs | 5.5177μs | 181.2349 KOps/s | 179.4222 KOps/s | |
| test_items_nested | 0.5068ms | 0.4411ms | 2.2668 KOps/s | 2.2374 KOps/s | |
| test_items_nested_locked | 0.5422ms | 0.4459ms | 2.2427 KOps/s | 2.2291 KOps/s | |
| test_items_nested_leaf | 0.1513ms | 92.9625μs | 10.7570 KOps/s | 10.7437 KOps/s | |
| test_items_stack_nested | 0.5176ms | 0.4445ms | 2.2498 KOps/s | 2.2377 KOps/s | |
| test_items_stack_nested_leaf | 0.1491ms | 91.6513μs | 10.9109 KOps/s | 10.8252 KOps/s | |
| test_items_stack_nested_locked | 0.5127ms | 0.4470ms | 2.2370 KOps/s | 2.2261 KOps/s | |
| test_keys | 65.6920μs | 4.1182μs | 242.8221 KOps/s | 243.8837 KOps/s | |
| test_keys_nested | 0.1878ms | 0.1249ms | 8.0071 KOps/s | 7.9067 KOps/s | |
| test_keys_nested_locked | 0.7405ms | 0.1340ms | 7.4653 KOps/s | 7.4721 KOps/s | |
| test_keys_nested_leaf | 0.2290ms | 0.1153ms | 8.6713 KOps/s | 8.5654 KOps/s | |
| test_keys_stack_nested | 0.2053ms | 0.1250ms | 7.9990 KOps/s | 7.9404 KOps/s | |
| test_keys_stack_nested_leaf | 0.1707ms | 0.1160ms | 8.6241 KOps/s | 8.5959 KOps/s | |
| test_keys_stack_nested_locked | 0.1952ms | 0.1338ms | 7.4720 KOps/s | 7.4987 KOps/s | |
| test_values | 8.8162μs | 0.9945μs | 1.0056 MOps/s | 1.0081 MOps/s | |
| test_values_nested | 98.1320μs | 50.7087μs | 19.7205 KOps/s | 19.5933 KOps/s | |
| test_values_nested_locked | 0.1014ms | 53.2873μs | 18.7662 KOps/s | 18.4752 KOps/s | |
| test_values_nested_leaf | 0.1022ms | 58.5479μs | 17.0800 KOps/s | 17.0662 KOps/s | |
| test_values_stack_nested | 0.1042ms | 50.7443μs | 19.7066 KOps/s | 19.6133 KOps/s | |
| test_values_stack_nested_leaf | 0.1009ms | 57.8580μs | 17.2837 KOps/s | 17.0739 KOps/s | |
| test_values_stack_nested_locked | 0.1022ms | 53.4351μs | 18.7143 KOps/s | 18.4906 KOps/s | |
| test_membership | 2.1651μs | 0.7852μs | 1.2736 MOps/s | 1.2460 MOps/s | |
| test_membership_nested | 62.1710μs | 2.8575μs | 349.9573 KOps/s | 350.1958 KOps/s | |
| test_membership_nested_leaf | 21.0705μs | 2.7458μs | 364.1937 KOps/s | 365.7374 KOps/s | |
| test_membership_stacked_nested | 42.2410μs | 2.7189μs | 367.7944 KOps/s | 363.4749 KOps/s | |
| test_membership_stacked_nested_leaf | 53.2610μs | 2.7059μs | 369.5599 KOps/s | 364.9867 KOps/s | |
| test_membership_nested_last | 48.4010μs | 4.2626μs | 234.5966 KOps/s | 234.9864 KOps/s | |
| test_membership_nested_leaf_last | 55.5720μs | 4.2696μs | 234.2113 KOps/s | 235.8242 KOps/s | |
| test_membership_stacked_nested_last | 47.1610μs | 4.0995μs | 243.9324 KOps/s | 242.5743 KOps/s | |
| test_membership_stacked_nested_leaf_last | 69.2310μs | 4.0849μs | 244.8050 KOps/s | 244.8251 KOps/s | |
| test_nested_getleaf | 51.5210μs | 20.1628μs | 49.5963 KOps/s | 48.7847 KOps/s | |
| test_nested_get | 71.1320μs | 18.7324μs | 53.3834 KOps/s | 51.5695 KOps/s | |
| test_stacked_getleaf | 78.5320μs | 19.8723μs | 50.3214 KOps/s | 50.0694 KOps/s | |
| test_stacked_get | 73.4420μs | 18.9647μs | 52.7296 KOps/s | 52.1623 KOps/s | |
| test_nested_getitemleaf | 89.5020μs | 20.8298μs | 48.0081 KOps/s | 48.0413 KOps/s | |
| test_nested_getitem | 93.5920μs | 19.6016μs | 51.0162 KOps/s | 50.4524 KOps/s | |
| test_stacked_getitemleaf | 79.8220μs | 20.7225μs | 48.2567 KOps/s | 48.4678 KOps/s | |
| test_stacked_getitem | 55.7210μs | 19.3837μs | 51.5896 KOps/s | 50.6637 KOps/s | |
| test_lock_nested | 0.6001ms | 0.4738ms | 2.1106 KOps/s | 2.0661 KOps/s | |
| test_lock_stack_nested | 0.6484ms | 0.4814ms | 2.0774 KOps/s | 2.0767 KOps/s | |
| test_unlock_nested | 0.4549ms | 0.3777ms | 2.6478 KOps/s | 2.6292 KOps/s | |
| test_unlock_stack_nested | 0.5690ms | 0.3831ms | 2.6106 KOps/s | 2.6249 KOps/s | |
| test_flatten_speed | 0.4437ms | 0.1162ms | 8.6032 KOps/s | 8.4558 KOps/s | |
| test_unflatten_speed | 0.6763ms | 0.5381ms | 1.8583 KOps/s | 1.8579 KOps/s | |
| test_common_ops | 0.8165ms | 0.6752ms | 1.4812 KOps/s | 1.4656 KOps/s | |
| test_creation | 0.1290ms | 3.0036μs | 332.9357 KOps/s | 333.8977 KOps/s | |
| test_creation_empty | 39.6610μs | 6.5950μs | 151.6305 KOps/s | 150.7922 KOps/s | |
| test_creation_nested_1 | 40.4710μs | 10.9378μs | 91.4257 KOps/s | 92.3311 KOps/s | |
| test_creation_nested_2 | 40.6110μs | 12.7506μs | 78.4274 KOps/s | 78.0529 KOps/s | |
| test_creation_many_keys[10] | 66.8810μs | 19.7064μs | 50.7450 KOps/s | 50.0796 KOps/s | |
| test_creation_many_keys[50] | 0.1277ms | 85.0921μs | 11.7520 KOps/s | 11.6880 KOps/s | |
| test_creation_many_keys[100] | 0.2480ms | 0.1676ms | 5.9660 KOps/s | 5.9507 KOps/s | |
| test_creation_nested_many_keys[10] | 71.8910μs | 42.7552μs | 23.3890 KOps/s | 23.4759 KOps/s | |
| test_creation_nested_many_keys[50] | 0.2034ms | 0.1734ms | 5.7663 KOps/s | 5.7823 KOps/s | |
| test_clone | 37.6010μs | 12.2076μs | 81.9160 KOps/s | 81.1060 KOps/s | |
| test_getitem[int] | 1.5278ms | 14.7466μs | 67.8122 KOps/s | 67.7093 KOps/s | |
| test_getitem[slice_int] | 0.1400ms | 23.8638μs | 41.9045 KOps/s | 41.4528 KOps/s | |
| test_getitem[range] | 0.1721ms | 61.4103μs | 16.2839 KOps/s | 17.0431 KOps/s | |
| test_getitem[tuple] | 0.1394ms | 23.3897μs | 42.7538 KOps/s | 43.2256 KOps/s | |
| test_getitem[list] | 0.1822ms | 54.7748μs | 18.2566 KOps/s | 18.3720 KOps/s | |
| test_setitem_dim[int] | 54.8010μs | 24.5786μs | 40.6858 KOps/s | 39.7342 KOps/s | |
| test_setitem_dim[slice_int] | 64.5410μs | 41.3171μs | 24.2031 KOps/s | 24.2434 KOps/s | |
| test_setitem_dim[range] | 0.1189ms | 91.5710μs | 10.9205 KOps/s | 11.1923 KOps/s | |
| test_setitem_dim[tuple] | 59.0510μs | 37.4059μs | 26.7338 KOps/s | 26.9720 KOps/s | |
| test_setitem | 82.9320μs | 15.9128μs | 62.8426 KOps/s | 61.7321 KOps/s | |
| test_set | 46.9910μs | 15.7101μs | 63.6532 KOps/s | 64.0885 KOps/s | |
| test_set_shared | 0.5183ms | 0.2035ms | 4.9133 KOps/s | 4.9435 KOps/s | |
| test_update | 0.4156ms | 20.1931μs | 49.5219 KOps/s | 49.2380 KOps/s | |
| test_update_nested | 65.8220μs | 31.2620μs | 31.9877 KOps/s | 31.8583 KOps/s | |
| test_update__nested | 0.5427ms | 31.5708μs | 31.6748 KOps/s | 31.6671 KOps/s | |
| test_set_nested | 49.4410μs | 17.2679μs | 57.9108 KOps/s | 58.3213 KOps/s | |
| test_set_nested_new | 54.2210μs | 21.8206μs | 45.8283 KOps/s | 46.2527 KOps/s | |
| test_select | 83.1820μs | 37.7747μs | 26.4727 KOps/s | 26.9082 KOps/s | |
| test_select_nested | 0.1061ms | 70.0608μs | 14.2733 KOps/s | 14.1719 KOps/s | |
| test_exclude_nested | 0.1229ms | 86.6738μs | 11.5375 KOps/s | 11.5446 KOps/s | |
| test_empty[True] | 0.4377ms | 0.3800ms | 2.6315 KOps/s | 2.6221 KOps/s | |
| test_empty[False] | 8.0028μs | 1.3280μs | 752.9936 KOps/s | 752.2765 KOps/s | |
| test_to | 0.1124ms | 68.0649μs | 14.6919 KOps/s | 14.6728 KOps/s | |
| test_to_nonblocking | 0.1101ms | 67.7377μs | 14.7628 KOps/s | 14.8588 KOps/s | |
| test_unbind_speed | 0.4216ms | 0.3219ms | 3.1063 KOps/s | 3.0925 KOps/s | |
| test_unbind_speed_stack0 | 0.3644ms | 0.3173ms | 3.1513 KOps/s | 3.1743 KOps/s | |
| test_unbind_speed_stack1 | 0.1171s | 1.0627ms | 940.9726 Ops/s | 1.2120 KOps/s | |
| test_split | 1.3189ms | 1.2415ms | 805.4787 Ops/s | 646.8488 Ops/s | |
| test_chunk | 0.1175s | 1.3405ms | 745.9980 Ops/s | 841.2915 Ops/s | |
| test_to_cpu_blocking | 19.9910ms | 19.8712ms | 50.3241 Ops/s | 50.2974 Ops/s | |
| test_to_cpu_global_sync | 11.6844ms | 11.5534ms | 86.5548 Ops/s | 86.7562 Ops/s | |
| test_to_cpu_event_sync | 12.9721ms | 12.6049ms | 79.3340 Ops/s | 79.9108 Ops/s | |
| test_to_cpu_default | 12.9551ms | 12.6147ms | 79.2724 Ops/s | 70.7344 Ops/s | |
| test_consolidate[False-None] | 0.1481s | 4.5859ms | 218.0613 Ops/s | 250.3538 Ops/s | |
| test_consolidate[default-None] | 3.1634ms | 2.2259ms | 449.2631 Ops/s | 449.4220 Ops/s | |
| test_consolidate[reduce-overhead-None] | 3.3094ms | 2.1571ms | 463.5773 Ops/s | 466.2779 Ops/s | |
| test_consolidate_njt[False-None] | 5.2335ms | 4.9855ms | 200.5814 Ops/s | 198.8755 Ops/s | |
| test_to[False-False-None] | 2.2704ms | 2.1636ms | 462.1981 Ops/s | 458.5623 Ops/s | |
| test_to[True-False-None] | 2.1041ms | 1.9114ms | 523.1896 Ops/s | 522.6657 Ops/s | |
| test_to[within-False-None] | 0.8672s | 11.4691ms | 87.1907 Ops/s | 166.8893 Ops/s | |
| test_to[True-default-None] | 10.6803ms | 10.0388ms | 99.6136 Ops/s | 98.2743 Ops/s | |
| test_to_njt[False-False-None] | 7.0831ms | 6.8098ms | 146.8482 Ops/s | 147.6525 Ops/s | |
| test_to_njt[True-False-None] | 4.0252ms | 3.7506ms | 266.6272 Ops/s | 270.1545 Ops/s | |
| test_to_njt[within-False-None] | 11.0127ms | 8.8270ms | 113.2893 Ops/s | 113.7017 Ops/s | |
| test_creation[device0] | 0.3883ms | 0.1160ms | 8.6206 KOps/s | 8.6513 KOps/s | |
| test_creation_from_tensor | 0.4781ms | 0.1144ms | 8.7418 KOps/s | 8.7403 KOps/s | |
| test_add_one[memmap_tensor0] | 0.4232ms | 5.9412μs | 168.3160 KOps/s | 168.5050 KOps/s | |
| test_contiguous[memmap_tensor0] | 2.6011μs | 0.4461μs | 2.2415 MOps/s | 2.2122 MOps/s | |
| test_stack[memmap_tensor0] | 49.7010μs | 4.0187μs | 248.8363 KOps/s | 249.7874 KOps/s | |
| test_memmaptd_index | 1.7194ms | 0.2624ms | 3.8111 KOps/s | 3.7316 KOps/s | |
| test_memmaptd_index_astensor | 0.5027ms | 0.3582ms | 2.7919 KOps/s | 2.7602 KOps/s | |
| test_memmaptd_index_op | 0.8293ms | 0.6039ms | 1.6558 KOps/s | 1.6332 KOps/s | |
| test_serialize_model | 0.3445s | 0.1650s | 6.0608 Ops/s | 7.4289 Ops/s | |
| test_serialize_model_pickle | 1.3704s | 1.2141s | 0.8236 Ops/s | 0.8266 Ops/s | |
| test_serialize_weights | 0.1350s | 0.1336s | 7.4833 Ops/s | 7.3916 Ops/s | |
| test_serialize_weights_returnearly | 76.9213ms | 63.7143ms | 15.6951 Ops/s | 10.8287 Ops/s | |
| test_serialize_weights_pickle | 1.3699s | 1.2132s | 0.8242 Ops/s | 0.8213 Ops/s | |
| test_reshape_pytree | 6.3538ms | 31.1492μs | 32.1035 KOps/s | 32.6311 KOps/s | |
| test_reshape_td | 66.2120μs | 43.0629μs | 23.2219 KOps/s | 23.0204 KOps/s | |
| test_view_pytree | 0.2179ms | 30.4163μs | 32.8771 KOps/s | 33.2241 KOps/s | |
| test_view_td | 86.1220μs | 51.2103μs | 19.5273 KOps/s | 19.2927 KOps/s | |
| test_unbind_pytree | 0.2236ms | 34.5017μs | 28.9841 KOps/s | 28.9780 KOps/s | |
| test_unbind_td | 0.1412ms | 47.4759μs | 21.0633 KOps/s | 20.9281 KOps/s | |
| test_split_pytree | 0.2376ms | 38.1743μs | 26.1956 KOps/s | 25.4565 KOps/s | |
| test_split_td | 0.1456ms | 67.0078μs | 14.9236 KOps/s | 14.9466 KOps/s | |
| test_add_pytree | 0.2257ms | 38.8277μs | 25.7548 KOps/s | 26.2385 KOps/s | |
| test_add_td | 96.1920μs | 51.3247μs | 19.4838 KOps/s | 19.7925 KOps/s | |
| test_compile_add_one_nested[tensordict-compile] | 0.4300ms | 0.2742ms | 3.6475 KOps/s | 3.7953 KOps/s | |
| test_compile_add_one_nested[tensordict-eager] | 0.4363ms | 0.1962ms | 5.0980 KOps/s | 5.1574 KOps/s | |
| test_compile_add_one_nested[pytree-compile] | 0.2266ms | 0.1560ms | 6.4114 KOps/s | 6.6557 KOps/s | |
| test_compile_add_one_nested[pytree-eager] | 0.4930ms | 0.1748ms | 5.7204 KOps/s | 5.7191 KOps/s | |
| test_compile_copy_nested[tensordict-compile] | 0.1085ms | 21.9681μs | 45.5205 KOps/s | 47.0562 KOps/s | |
| test_compile_copy_nested[tensordict-eager] | 0.1350ms | 50.2539μs | 19.8989 KOps/s | 19.5324 KOps/s | |
| test_compile_copy_nested[pytree-compile] | 0.1997ms | 18.9937μs | 52.6491 KOps/s | 52.1101 KOps/s | |
| test_compile_copy_nested[pytree-eager] | 0.3675ms | 62.8644μs | 15.9073 KOps/s | 15.7174 KOps/s | |
| test_compile_add_one_flat[tensordict-compile] | 0.4052ms | 0.3135ms | 3.1900 KOps/s | 3.2238 KOps/s | |
| test_compile_add_one_flat[tensordict-eager] | 0.3349ms | 0.2827ms | 3.5370 KOps/s | 3.5486 KOps/s | |
| test_compile_add_one_flat[tensorclass-compile] | 0.4011ms | 0.2117ms | 4.7239 KOps/s | 4.6266 KOps/s | |
| test_compile_add_one_flat[tensorclass-eager] | 0.1648ms | 74.2045μs | 13.4763 KOps/s | 13.4312 KOps/s | |
| test_compile_add_one_flat[pytree-compile] | 0.6391ms | 0.2361ms | 4.2357 KOps/s | 4.1910 KOps/s | |
| test_compile_add_one_flat[pytree-eager] | 0.8350ms | 0.5323ms | 1.8786 KOps/s | 1.8984 KOps/s | |
| test_compile_add_self_flat[tensordict-eager] | 0.4966ms | 0.3302ms | 3.0287 KOps/s | 2.9896 KOps/s | |
| test_compile_add_self_flat[tensordict-compile] | 0.4093ms | 0.3149ms | 3.1756 KOps/s | 3.1839 KOps/s | |
| test_compile_add_self_flat[tensorclass-eager] | 0.2239ms | 92.8045μs | 10.7753 KOps/s | 10.8817 KOps/s | |
| test_compile_add_self_flat[tensorclass-compile] | 0.3752ms | 0.2189ms | 4.5675 KOps/s | 4.6940 KOps/s | |
| test_compile_add_self_flat[pytree-eager] | 0.7247ms | 0.4424ms | 2.2606 KOps/s | 2.3161 KOps/s | |
| test_compile_add_self_flat[pytree-compile] | 0.4229ms | 0.2427ms | 4.1208 KOps/s | 4.1597 KOps/s | |
| test_compile_copy_flat[tensordict-compile] | 82.5220μs | 26.1178μs | 38.2881 KOps/s | 39.8403 KOps/s | |
| test_compile_copy_flat[tensordict-eager] | 77.4110μs | 39.5031μs | 25.3145 KOps/s | 25.2217 KOps/s | |
| test_compile_copy_flat[pytree-compile] | 0.1205ms | 26.0797μs | 38.3440 KOps/s | 40.2261 KOps/s | |
| test_compile_copy_flat[pytree-eager] | 0.3274ms | 49.8812μs | 20.0476 KOps/s | 19.8445 KOps/s | |
| test_compile_assign_and_add[tensordict-compile] | 2.0291ms | 0.2543ms | 3.9318 KOps/s | 3.6440 KOps/s | |
| test_compile_assign_and_add[tensordict-eager] | 3.4647ms | 3.2677ms | 306.0234 Ops/s | 290.9154 Ops/s | |
| test_compile_assign_and_add[pytree-compile] | 1.8579ms | 0.1938ms | 5.1594 KOps/s | 5.1896 KOps/s | |
| test_compile_assign_and_add[pytree-eager] | 3.0029ms | 2.7527ms | 363.2741 Ops/s | 366.2815 Ops/s | |
| test_compile_indexing[tensor-tensordict-compile] | 0.3150ms | 0.1496ms | 6.6861 KOps/s | 6.6429 KOps/s | |
| test_compile_indexing[tensor-tensordict-eager] | 0.3723ms | 73.4404μs | 13.6165 KOps/s | 13.6615 KOps/s | |
| test_compile_indexing[tensor-tensorclass-compile] | 0.2856ms | 0.1310ms | 7.6349 KOps/s | 7.4156 KOps/s | |
| test_compile_indexing[tensor-tensorclass-eager] | 0.3041ms | 44.7216μs | 22.3606 KOps/s | 22.1465 KOps/s | |
| test_compile_indexing[tensor-pytree-compile] | 0.1942ms | 0.1348ms | 7.4211 KOps/s | 7.5773 KOps/s | |
| test_compile_indexing[tensor-pytree-eager] | 0.3227ms | 45.4187μs | 22.0174 KOps/s | 22.6914 KOps/s | |
| test_compile_indexing[slice-tensordict-compile] | 0.2148ms | 89.5448μs | 11.1676 KOps/s | 11.3999 KOps/s | |
| test_compile_indexing[slice-tensordict-eager] | 0.2159ms | 26.3346μs | 37.9728 KOps/s | 36.3584 KOps/s | |
| test_compile_indexing[slice-tensorclass-compile] | 0.1828ms | 69.2390μs | 14.4427 KOps/s | 14.2663 KOps/s | |
| test_compile_indexing[slice-tensorclass-eager] | 0.2502ms | 21.0372μs | 47.5349 KOps/s | 47.1986 KOps/s | |
| test_compile_indexing[slice-pytree-compile] | 0.1179ms | 71.7244μs | 13.9423 KOps/s | 14.0620 KOps/s | |
| test_compile_indexing[slice-pytree-eager] | 0.2983ms | 20.9706μs | 47.6859 KOps/s | 47.4330 KOps/s | |
| test_compile_indexing[int-tensordict-compile] | 0.1512ms | 88.4426μs | 11.3068 KOps/s | 11.2906 KOps/s | |
| test_compile_indexing[int-tensordict-eager] | 0.2595ms | 27.6504μs | 36.1658 KOps/s | 38.0861 KOps/s | |
| test_compile_indexing[int-tensorclass-compile] | 0.1682ms | 71.6501μs | 13.9567 KOps/s | 14.1367 KOps/s | |
| test_compile_indexing[int-tensorclass-eager] | 0.2533ms | 21.6995μs | 46.0840 KOps/s | 47.5132 KOps/s | |
| test_compile_indexing[int-pytree-compile] | 0.1404ms | 71.8546μs | 13.9170 KOps/s | 14.1131 KOps/s | |
| test_compile_indexing[int-pytree-eager] | 0.2633ms | 20.9610μs | 47.7077 KOps/s | 47.4505 KOps/s | |
| test_compile_replace[single-eager] | 91.9020μs | 46.4339μs | 21.5360 KOps/s | 20.7339 KOps/s | |
| test_compile_replace[single-compile] | 0.2525ms | 0.1454ms | 6.8753 KOps/s | 6.8199 KOps/s | |
| test_compile_replace[multi-eager] | 0.6360ms | 0.5621ms | 1.7791 KOps/s | 1.7560 KOps/s | |
| test_compile_replace[multi-compile] | 0.2967ms | 0.1548ms | 6.4586 KOps/s | 6.3817 KOps/s | |
| test_compile_tc_getattr_20[eager] | 0.2496ms | 0.1716ms | 5.8260 KOps/s | 5.8844 KOps/s | |
| test_compile_tc_getattr_20[compile] | 0.4083ms | 0.1716ms | 5.8261 KOps/s | 5.8496 KOps/s | |
| test_compile_clone_shallow[20-eager] | 49.4110μs | 18.2583μs | 54.7695 KOps/s | 54.3289 KOps/s | |
| test_compile_clone_shallow[20-compile] | 73.8410μs | 23.3576μs | 42.8127 KOps/s | 43.2030 KOps/s | |
| test_compile_clone_shallow[40-eager] | 94.8220μs | 32.4337μs | 30.8321 KOps/s | 30.9699 KOps/s | |
| test_compile_clone_shallow[40-compile] | 0.1044ms | 24.2268μs | 41.2766 KOps/s | 38.9603 KOps/s | |
| test_compile_clone_shallow[80-eager] | 90.2310μs | 60.7891μs | 16.4503 KOps/s | 16.7157 KOps/s | |
| test_compile_clone_shallow[80-compile] | 79.1810μs | 28.6904μs | 34.8549 KOps/s | 35.6978 KOps/s | |
| test_compile_update_inplace[eager] | 0.1005ms | 59.7834μs | 16.7271 KOps/s | 16.4515 KOps/s | |
| test_compile_update_inplace[compile] | 0.4889ms | 0.1222ms | 8.1862 KOps/s | 8.3732 KOps/s | |
| test_mod_add[eager] | 0.3118ms | 0.2196ms | 4.5535 KOps/s | 4.5974 KOps/s | |
| test_mod_add[compile] | 0.2475ms | 0.1197ms | 8.3523 KOps/s | 8.3315 KOps/s | |
| test_mod_add[compile-overhead] | 0.2772ms | 0.1879ms | 5.3206 KOps/s | 5.0405 KOps/s | |
| test_mod_wrap[eager] | 0.5718ms | 0.4770ms | 2.0965 KOps/s | 2.1164 KOps/s | |
| test_mod_wrap[compile] | 0.4169ms | 0.3370ms | 2.9673 KOps/s | 2.9492 KOps/s | |
| test_mod_wrap[compile-overhead] | 7.1577ms | 4.0127ms | 249.2096 Ops/s | 252.8916 Ops/s | |
| test_mod_wrap_and_backward[eager] | 1.8307ms | 1.6449ms | 607.9243 Ops/s | 607.7739 Ops/s | |
| test_mod_wrap_and_backward[compile] | 2.0123ms | 1.3222ms | 756.3107 Ops/s | 762.3821 Ops/s | |
| test_mod_wrap_and_backward[compile-overhead] | 1.5441ms | 0.9197ms | 1.0873 KOps/s | 1.0743 KOps/s | |
| test_seq_add[eager] | 0.5419ms | 0.4912ms | 2.0357 KOps/s | 2.0474 KOps/s | |
| test_seq_add[compile] | 0.1923ms | 0.1304ms | 7.6676 KOps/s | 7.4474 KOps/s | |
| test_seq_add[compile-overhead] | 0.2823ms | 0.1978ms | 5.0559 KOps/s | 4.8531 KOps/s | |
| test_seq_wrap[eager] | 5.2782ms | 1.3728ms | 728.4495 Ops/s | 721.7704 Ops/s | |
| test_seq_wrap[compile] | 0.4415ms | 0.3558ms | 2.8109 KOps/s | 2.6342 KOps/s | |
| test_seq_wrap[compile-overhead] | 0.4580ms | 0.3152ms | 3.1726 KOps/s | 3.0592 KOps/s | |
| test_func_call_runtime[False-eager] | 0.8336ms | 0.7812ms | 1.2800 KOps/s | 1.2099 KOps/s | |
| test_func_call_runtime[False-compile] | 0.8974ms | 0.7440ms | 1.3442 KOps/s | 1.3368 KOps/s | |
| test_func_call_runtime[False-compile-overhead] | 0.6697ms | 0.4928ms | 2.0293 KOps/s | 2.0147 KOps/s | |
| test_func_call_runtime[True-eager] | 1.1435ms | 1.0266ms | 974.1082 Ops/s | 963.0559 Ops/s | |
| test_func_call_runtime[True-compile] | 0.8642ms | 0.7637ms | 1.3093 KOps/s | 1.2803 KOps/s | |
| test_func_call_runtime[True-compile-overhead] | 0.6882ms | 0.5117ms | 1.9543 KOps/s | 1.9608 KOps/s | |
| test_func_call_cm_runtime[False-eager] | 0.8753ms | 0.8063ms | 1.2403 KOps/s | 1.2243 KOps/s | |
| test_func_call_cm_runtime[False-compile] | 0.8976ms | 0.7335ms | 1.3634 KOps/s | 1.3656 KOps/s | |
| test_func_call_cm_runtime[False-compile-overhead] | 0.5622ms | 0.4777ms | 2.0934 KOps/s | 2.0934 KOps/s | |
| test_func_call_cm_runtime[True-eager] | 1.3051ms | 1.1806ms | 847.0501 Ops/s | 849.7098 Ops/s | |
| test_func_call_cm_runtime[True-compile] | 0.9362ms | 0.8364ms | 1.1957 KOps/s | 1.1990 KOps/s | |
| test_func_call_cm_runtime[True-compile-overhead] | 1.1352ms | 0.8516ms | 1.1742 KOps/s | 1.1875 KOps/s | |
| test_vmap_func_call_cm_runtime[eager] | 3.1677ms | 2.6087ms | 383.3332 Ops/s | 381.9028 Ops/s | |
| test_vmap_func_call_cm_runtime[compile] | 4.2973ms | 3.5938ms | 278.2564 Ops/s | 279.3921 Ops/s | |
| test_vmap_func_call_cm_runtime[compile-overhead] | 4.5271ms | 3.5786ms | 279.4392 Ops/s | 277.2735 Ops/s | |
| test_distributed | 0.5675ms | 0.1437ms | 6.9603 KOps/s | 6.9764 KOps/s | |
| test_tdmodule | 0.4881ms | 0.1859ms | 5.3791 KOps/s | 5.3024 KOps/s | |
| test_tdmodule_dispatch | 0.3921ms | 0.3625ms | 2.7590 KOps/s | 2.7963 KOps/s | |
| test_tdseq | 45.4310μs | 26.0280μs | 38.4202 KOps/s | 38.2435 KOps/s | |
| test_tdseq_dispatch | 0.2407ms | 0.2109ms | 4.7408 KOps/s | 4.7676 KOps/s | |
| test_instantiation_functorch | 2.0560ms | 1.9228ms | 520.0691 Ops/s | 514.3334 Ops/s | |
| test_exec_functorch | 0.2086ms | 0.1673ms | 5.9776 KOps/s | 5.8901 KOps/s | |
| test_exec_functional_call | 0.1896ms | 0.1497ms | 6.6807 KOps/s | 6.6446 KOps/s | |
| test_exec_td_decorator | 0.6079ms | 0.2351ms | 4.2542 KOps/s | 4.2965 KOps/s | |
| test_vmap_mlp_speed_decorator[True-True] | 1.3085ms | 1.0925ms | 915.2943 Ops/s | 915.4745 Ops/s | |
| test_vmap_mlp_speed_decorator[True-False] | 1.3224ms | 1.0866ms | 920.3173 Ops/s | 919.4735 Ops/s | |
| test_vmap_mlp_speed_decorator[False-True] | 1.0143ms | 0.7989ms | 1.2518 KOps/s | 1.2470 KOps/s | |
| test_vmap_mlp_speed_decorator[False-False] | 1.0133ms | 0.8021ms | 1.2468 KOps/s | 1.2514 KOps/s | |
| test_vmap_transformer_speed_decorator[True-True] | 25.0611ms | 24.3298ms | 41.1019 Ops/s | 40.4122 Ops/s | |
| test_vmap_transformer_speed_decorator[True-False] | 25.1468ms | 24.2862ms | 41.1756 Ops/s | 40.3251 Ops/s | |
| test_vmap_transformer_speed_decorator[False-True] | 24.5950ms | 23.9918ms | 41.6809 Ops/s | 40.8533 Ops/s | |
| test_vmap_transformer_speed_decorator[False-False] | 25.0245ms | 24.0052ms | 41.6577 Ops/s | 41.4269 Ops/s | |
| test_to_module_speed[True] | 1.7471ms | 1.5905ms | 628.7149 Ops/s | 629.1155 Ops/s | |
| test_to_module_speed[False] | 1.6682ms | 1.5653ms | 638.8652 Ops/s | 641.7534 Ops/s | |
| test_to_module_plain_tensor_speed[None] | 1.7889ms | 1.6684ms | 599.3667 Ops/s | 596.5970 Ops/s | |
| test_to_module_plain_tensor_speed[False] | 1.6691ms | 1.5349ms | 651.5177 Ops/s | 656.3718 Ops/s | |
| test_to_module_plain_tensor_speed[True] | 3.3811ms | 3.2343ms | 309.1816 Ops/s | 308.0308 Ops/s | |
| test_tc_init | 83.3520μs | 42.4137μs | 23.5773 KOps/s | 23.2855 KOps/s | |
| test_tc_init_tensor_only | 89.3010μs | 8.8853μs | 112.5457 KOps/s | 111.2303 KOps/s | |
| test_tc_init_nested | 0.1732ms | 81.8903μs | 12.2115 KOps/s | 11.7253 KOps/s | |
| test_tc_init_many_fields | 66.7510μs | 16.2623μs | 61.4918 KOps/s | 60.2907 KOps/s | |
| test_tc_first_layer_tensor | 53.8910μs | 1.7063μs | 586.0682 KOps/s | 585.6782 KOps/s | |
| test_tc_first_layer_tensor_only | 2.9776μs | 0.3905μs | 2.5611 MOps/s | 2.6207 MOps/s | |
| test_tc_first_layer_tensor_set | 30.1510μs | 4.0057μs | 249.6420 KOps/s | 247.1695 KOps/s | |
| test_tc_first_layer_tensor_only_set | 22.6100μs | 3.3481μs | 298.6742 KOps/s | 294.3358 KOps/s | |
| test_tc_first_layer_nontensor | 33.4110μs | 5.8172μs | 171.9041 KOps/s | 169.5603 KOps/s | |
| test_tc_second_layer_tensor | 34.9710μs | 4.1732μs | 239.6250 KOps/s | 237.3022 KOps/s | |
| test_tc_second_layer_nontensor | 35.2810μs | 8.1399μs | 122.8517 KOps/s | 120.1652 KOps/s | |
| test_unbind | 0.2836s | 14.2380ms | 70.2348 Ops/s | 59.7258 Ops/s | |
| test_full_like | 4.5582ms | 4.3965ms | 227.4555 Ops/s | 226.9233 Ops/s | |
| test_zeros_like | 4.4944ms | 4.3735ms | 228.6496 Ops/s | 228.2491 Ops/s | |
| test_ones_like | 4.4864ms | 4.3787ms | 228.3797 Ops/s | 227.7515 Ops/s | |
| test_clone | 6.8683ms | 6.6171ms | 151.1235 Ops/s | 151.4470 Ops/s | |
| test_squeeze | 67.9010μs | 14.3288μs | 69.7893 KOps/s | 73.3599 KOps/s | |
| test_unsqueeze | 0.1660ms | 0.1124ms | 8.8990 KOps/s | 8.8697 KOps/s | |
| test_split | 0.3837ms | 0.1794ms | 5.5733 KOps/s | 5.4532 KOps/s | |
| test_permute | 0.2295ms | 0.1891ms | 5.2880 KOps/s | 5.3011 KOps/s | |
| test_stack | 54.4103ms | 51.8419ms | 19.2894 Ops/s | 28.4388 Ops/s | |
| test_cat | 44.0898ms | 43.5330ms | 22.9711 Ops/s | 28.3993 Ops/s | |
| test_sequential_tensordict | 0.7537ms | 0.5484ms | 1.8233 KOps/s | 1.8083 KOps/s | |
| test_sequential_graph_module | 0.2407ms | 0.1127ms | 8.8768 KOps/s | 9.0128 KOps/s | |
| test_nested_tensordict | 1.9165ms | 0.7997ms | 1.2504 KOps/s | 1.2839 KOps/s | |
| test_nested_graph_module | 0.1717ms | 0.1239ms | 8.0713 KOps/s | 8.3396 KOps/s |
vmoens
added a commit
that referenced
this pull request
Jul 9, 2026
…pies The multithreaded path of `consolidate` used one executor task per leaf, each running a Python-level `copy_`. This made `num_threads>0` up to 4x slower than the sequential fused `torch.cat` for tensordicts with many small leaves, and up to 2x slower when writing to a memory-mapped file. Rework the copy stage: - Split the leaves into contiguous chunks of roughly equal byte size (at most one chunk per thread) and run one fused `torch.cat` per chunk. - When all leaves already live on the storage device, prepare the flat uint8 views on the main thread: this work is GIL-bound and only adds contention inside workers, which now run a single GIL-releasing copy. - When leaves need a device change, keep per-leaf copies inside the worker threads so device transfers can overlap. - When writing to a memory-mapped file with no device change, fall back to the sequential fused copy: concurrent writes to a fresh file mapping are 2-4x slower than a single sequential one on local filesystems (page-fault and writeback contention). - Share the storage-view rebuild step between the threaded and sequential paths (the threaded path previously duplicated it with a per-leaf `assign` and a separate NJT rebuild). Measured on M-series/APFS: in-memory 8x128MB 218ms (nt=0) / 20ms (nt=8, was 202ms); 2000x256KB 48ms (nt=0) / 53ms (nt=8, was 194ms); file-backed writes now match the sequential path instead of doubling. Also fixes an AttributeError when `non_blocking=True` was used without an explicit `device` (the sync check dereferenced `device.type` on `None`). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> ghstack-source-id: c29cc57 Pull-Request: #1740
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack from ghstack (oldest at bottom):
The multithreaded path of
consolidateused one executor task per leaf,each running a Python-level
copy_. This madenum_threads>0up to 4xslower than the sequential fused
torch.catfor tensordicts with manysmall leaves, and up to 2x slower when writing to a memory-mapped file.
Rework the copy stage:
(at most one chunk per thread) and run one fused
torch.catper chunk.uint8 views on the main thread: this work is GIL-bound and only adds
contention inside workers, which now run a single GIL-releasing copy.
worker threads so device transfers can overlap.
to the sequential fused copy: concurrent writes to a fresh file
mapping are 2-4x slower than a single sequential one on local
filesystems (page-fault and writeback contention).
sequential paths (the threaded path previously duplicated it with a
per-leaf
assignand a separate NJT rebuild).Measured on M-series/APFS: in-memory 8x128MB 218ms (nt=0) / 20ms (nt=8,
was 202ms); 2000x256KB 48ms (nt=0) / 53ms (nt=8, was 194ms); file-backed
writes now match the sequential path instead of doubling.
Also fixes an AttributeError when
non_blocking=Truewas used withoutan explicit
device(the sync check dereferenceddevice.typeonNone).Co-Authored-By: Claude Fable 5 noreply@anthropic.com