[Feature] Tabular data import/export (pandas, CSV, Parquet, JSON)#1679
Merged
[Feature] Tabular data import/export (pandas, CSV, Parquet, JSON)#1679
Conversation
Add from_pandas/to_pandas, from_csv/to_csv, from_parquet/to_parquet, and from_json/to_json for first-class tabular data support. Numeric columns become tensors, string columns become NonTensorData. A separator parameter enables nested TensorDicts from dotted column names (e.g. "obs.x" -> td["obs","x"]). File formats auto-select the best available backend (pandas or pyarrow). All new dependencies are optional. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Contributor
|
| Name | Max | Mean | Ops | Ops on Repo HEAD
|
Change |
|---|---|---|---|---|---|
| test_plain_set_nested | 37.4710μs | 14.4322μs | 69.2895 KOps/s | 68.7598 KOps/s | |
| test_plain_set_stack_nested | 35.3710μs | 14.7394μs | 67.8455 KOps/s | 68.0889 KOps/s | |
| test_plain_set_nested_inplace | 47.6620μs | 16.1757μs | 61.8211 KOps/s | 61.1705 KOps/s | |
| test_plain_set_stack_nested_inplace | 40.3510μs | 16.1698μs | 61.8436 KOps/s | 62.4830 KOps/s | |
| test_items | 25.6510μs | 5.4528μs | 183.3935 KOps/s | 182.8226 KOps/s | |
| test_items_nested | 0.5470ms | 0.4484ms | 2.2303 KOps/s | 2.1705 KOps/s | |
| test_items_nested_locked | 0.7232ms | 0.4493ms | 2.2259 KOps/s | 2.1671 KOps/s | |
| test_items_nested_leaf | 0.1341ms | 92.0862μs | 10.8594 KOps/s | 10.8759 KOps/s | |
| test_items_stack_nested | 0.5506ms | 0.4499ms | 2.2227 KOps/s | 2.1858 KOps/s | |
| test_items_stack_nested_leaf | 0.1379ms | 92.1670μs | 10.8499 KOps/s | 10.7917 KOps/s | |
| test_items_stack_nested_locked | 0.6533ms | 0.4471ms | 2.2368 KOps/s | 2.1840 KOps/s | |
| test_keys | 39.6520μs | 4.1597μs | 240.4038 KOps/s | 242.8862 KOps/s | |
| test_keys_nested | 0.3826ms | 0.1278ms | 7.8233 KOps/s | 7.8331 KOps/s | |
| test_keys_nested_locked | 2.4869ms | 0.1366ms | 7.3195 KOps/s | 7.3459 KOps/s | |
| test_keys_nested_leaf | 0.1698ms | 0.1182ms | 8.4568 KOps/s | 8.5032 KOps/s | |
| test_keys_stack_nested | 0.1817ms | 0.1284ms | 7.7870 KOps/s | 7.8371 KOps/s | |
| test_keys_stack_nested_leaf | 0.1553ms | 0.1187ms | 8.4255 KOps/s | 8.4840 KOps/s | |
| test_keys_stack_nested_locked | 0.4229ms | 0.1357ms | 7.3673 KOps/s | 7.3818 KOps/s | |
| test_values | 5.7982μs | 1.0058μs | 994.2594 KOps/s | 989.6901 KOps/s | |
| test_values_nested | 0.1144ms | 50.9248μs | 19.6368 KOps/s | 19.6494 KOps/s | |
| test_values_nested_locked | 88.4530μs | 54.1175μs | 18.4783 KOps/s | 18.5056 KOps/s | |
| test_values_nested_leaf | 94.8330μs | 58.5317μs | 17.0847 KOps/s | 17.2136 KOps/s | |
| test_values_stack_nested | 86.8630μs | 51.1673μs | 19.5438 KOps/s | 19.5369 KOps/s | |
| test_values_stack_nested_leaf | 0.6574ms | 58.8021μs | 17.0062 KOps/s | 17.0918 KOps/s | |
| test_values_stack_nested_locked | 86.7030μs | 54.6840μs | 18.2869 KOps/s | 18.3576 KOps/s | |
| test_membership | 5.3852μs | 0.7893μs | 1.2669 MOps/s | 1.2508 MOps/s | |
| test_membership_nested | 31.6520μs | 2.7414μs | 364.7816 KOps/s | 364.7007 KOps/s | |
| test_membership_nested_leaf | 16.8760μs | 2.6507μs | 377.2593 KOps/s | 362.6045 KOps/s | |
| test_membership_stacked_nested | 30.3510μs | 2.7265μs | 366.7689 KOps/s | 365.1490 KOps/s | |
| test_membership_stacked_nested_leaf | 33.7910μs | 2.7366μs | 365.4126 KOps/s | 368.6162 KOps/s | |
| test_membership_nested_last | 28.6710μs | 4.1292μs | 242.1783 KOps/s | 242.7558 KOps/s | |
| test_membership_nested_leaf_last | 23.2600μs | 4.0992μs | 243.9488 KOps/s | 242.9301 KOps/s | |
| test_membership_stacked_nested_last | 39.0620μs | 4.1383μs | 241.6476 KOps/s | 242.8227 KOps/s | |
| test_membership_stacked_nested_leaf_last | 31.8310μs | 4.1190μs | 242.7771 KOps/s | 243.1639 KOps/s | |
| test_nested_getleaf | 45.5210μs | 20.5530μs | 48.6547 KOps/s | 48.6282 KOps/s | |
| test_nested_get | 54.6010μs | 19.5433μs | 51.1683 KOps/s | 51.2088 KOps/s | |
| test_stacked_getleaf | 56.0820μs | 20.7998μs | 48.0774 KOps/s | 48.3925 KOps/s | |
| test_stacked_get | 50.8710μs | 19.7321μs | 50.6788 KOps/s | 51.1469 KOps/s | |
| test_nested_getitemleaf | 55.5110μs | 21.3611μs | 46.8142 KOps/s | 48.6485 KOps/s | |
| test_nested_getitem | 48.0710μs | 20.0392μs | 49.9021 KOps/s | 49.6696 KOps/s | |
| test_stacked_getitemleaf | 44.4320μs | 21.2763μs | 47.0007 KOps/s | 47.1073 KOps/s | |
| test_stacked_getitem | 47.3410μs | 20.0448μs | 49.8883 KOps/s | 49.2618 KOps/s | |
| test_lock_nested | 5.2623ms | 0.4621ms | 2.1641 KOps/s | 2.1837 KOps/s | |
| test_lock_stack_nested | 0.5454ms | 0.4626ms | 2.1615 KOps/s | 2.1342 KOps/s | |
| test_unlock_nested | 0.6143ms | 0.3707ms | 2.6977 KOps/s | 2.6499 KOps/s | |
| test_unlock_stack_nested | 0.4286ms | 0.3735ms | 2.6771 KOps/s | 2.6193 KOps/s | |
| test_flatten_speed | 0.1711ms | 0.1159ms | 8.6287 KOps/s | 8.5521 KOps/s | |
| test_unflatten_speed | 0.6463ms | 0.5478ms | 1.8254 KOps/s | 1.7935 KOps/s | |
| test_common_ops | 96.0281ms | 0.8223ms | 1.2162 KOps/s | 237.5913 Ops/s | |
| test_creation | 0.1367ms | 2.9632μs | 337.4731 KOps/s | 342.8558 KOps/s | |
| test_creation_empty | 34.5210μs | 6.5499μs | 152.6737 KOps/s | 153.5918 KOps/s | |
| test_creation_nested_1 | 40.0020μs | 10.9530μs | 91.2991 KOps/s | 91.3344 KOps/s | |
| test_creation_nested_2 | 37.6310μs | 12.6182μs | 79.2506 KOps/s | 79.8929 KOps/s | |
| test_creation_many_keys[10] | 49.8520μs | 19.6219μs | 50.9636 KOps/s | 50.6941 KOps/s | |
| test_creation_many_keys[50] | 0.1281ms | 83.4384μs | 11.9849 KOps/s | 11.7609 KOps/s | |
| test_creation_many_keys[100] | 0.2252ms | 0.1644ms | 6.0833 KOps/s | 5.9253 KOps/s | |
| test_creation_nested_many_keys[10] | 77.7230μs | 42.3053μs | 23.6377 KOps/s | 23.6558 KOps/s | |
| test_creation_nested_many_keys[50] | 0.2080ms | 0.1727ms | 5.7899 KOps/s | 5.7562 KOps/s | |
| test_clone | 70.1820μs | 12.7572μs | 78.3873 KOps/s | 78.2131 KOps/s | |
| test_getitem[int] | 1.6000ms | 14.5989μs | 68.4983 KOps/s | 61.6194 KOps/s | |
| test_getitem[slice_int] | 0.1411ms | 23.8792μs | 41.8775 KOps/s | 41.3712 KOps/s | |
| test_getitem[range] | 0.1746ms | 65.2742μs | 15.3200 KOps/s | 16.2224 KOps/s | |
| test_getitem[tuple] | 0.1416ms | 22.7779μs | 43.9022 KOps/s | 42.3080 KOps/s | |
| test_getitem[list] | 0.1934ms | 56.6847μs | 17.6415 KOps/s | 17.6431 KOps/s | |
| test_setitem_dim[int] | 46.0510μs | 25.0140μs | 39.9776 KOps/s | 39.5628 KOps/s | |
| test_setitem_dim[slice_int] | 78.6520μs | 41.0631μs | 24.3528 KOps/s | 23.8754 KOps/s | |
| test_setitem_dim[range] | 0.1135ms | 90.5204μs | 11.0472 KOps/s | 10.7994 KOps/s | |
| test_setitem_dim[tuple] | 57.3320μs | 37.5163μs | 26.6550 KOps/s | 25.5956 KOps/s | |
| test_setitem | 59.2720μs | 16.9820μs | 58.8860 KOps/s | 58.7491 KOps/s | |
| test_set | 60.4020μs | 17.2835μs | 57.8587 KOps/s | 60.4298 KOps/s | |
| test_set_shared | 0.4971ms | 0.2045ms | 4.8903 KOps/s | 4.8148 KOps/s | |
| test_update | 0.3499ms | 21.0203μs | 47.5731 KOps/s | 46.8256 KOps/s | |
| test_update_nested | 79.0130μs | 32.4069μs | 30.8576 KOps/s | 30.3850 KOps/s | |
| test_update__nested | 0.5183ms | 32.7733μs | 30.5126 KOps/s | 29.0247 KOps/s | |
| test_set_nested | 62.5120μs | 18.1861μs | 54.9870 KOps/s | 54.9121 KOps/s | |
| test_set_nested_new | 71.2620μs | 23.3031μs | 42.9127 KOps/s | 42.4938 KOps/s | |
| test_select | 93.9830μs | 38.7853μs | 25.7830 KOps/s | 25.8056 KOps/s | |
| test_select_nested | 99.8830μs | 70.0930μs | 14.2668 KOps/s | 14.3586 KOps/s | |
| test_exclude_nested | 0.1190ms | 87.2289μs | 11.4641 KOps/s | 11.5194 KOps/s | |
| test_empty[True] | 0.4372ms | 0.3863ms | 2.5890 KOps/s | 2.5764 KOps/s | |
| test_empty[False] | 8.4502μs | 1.2498μs | 800.1264 KOps/s | 809.8462 KOps/s | |
| test_to | 0.1053ms | 73.8837μs | 13.5348 KOps/s | 13.3285 KOps/s | |
| test_to_nonblocking | 0.1221ms | 68.2060μs | 14.6615 KOps/s | 14.9925 KOps/s | |
| test_unbind_speed | 0.3719ms | 0.3207ms | 3.1184 KOps/s | 3.1242 KOps/s | |
| test_unbind_speed_stack0 | 0.4354ms | 0.3174ms | 3.1506 KOps/s | 3.1386 KOps/s | |
| test_unbind_speed_stack1 | 0.1059s | 1.0105ms | 989.6554 Ops/s | 1.2179 KOps/s | |
| test_split | 1.2137ms | 1.0893ms | 918.0444 Ops/s | 820.8376 Ops/s | |
| test_chunk | 0.1055s | 1.1644ms | 858.8465 Ops/s | 958.1635 Ops/s | |
| test_to_cpu_blocking | 19.7894ms | 19.1207ms | 52.2994 Ops/s | 52.0514 Ops/s | |
| test_to_cpu_global_sync | 11.6620ms | 11.4946ms | 86.9973 Ops/s | 78.3932 Ops/s | |
| test_to_cpu_event_sync | 0.1188s | 13.7036ms | 72.9737 Ops/s | 81.2651 Ops/s | |
| test_to_cpu_default | 12.8728ms | 12.3742ms | 80.8131 Ops/s | 80.8596 Ops/s | |
| test_consolidate[False-None] | 4.1699ms | 3.9559ms | 252.7843 Ops/s | 216.7808 Ops/s | |
| test_consolidate[default-None] | 2.3822ms | 1.9527ms | 512.1064 Ops/s | 501.4082 Ops/s | |
| test_consolidate[reduce-overhead-None] | 1.9508ms | 1.8805ms | 531.7710 Ops/s | 516.3504 Ops/s | |
| test_consolidate_njt[False-None] | 8.5235ms | 8.2963ms | 120.5358 Ops/s | 119.0167 Ops/s | |
| test_to[False-False-None] | 2.2714ms | 2.1177ms | 472.2105 Ops/s | 466.7594 Ops/s | |
| test_to[True-False-None] | 1.9798ms | 1.8394ms | 543.6573 Ops/s | 547.6386 Ops/s | |
| test_to[within-False-None] | 6.2686ms | 5.9365ms | 168.4489 Ops/s | 168.4932 Ops/s | |
| test_to[True-default-None] | 9.1538ms | 8.9999ms | 111.1120 Ops/s | 109.7025 Ops/s | |
| test_to_njt[False-False-None] | 8.4812ms | 8.4000ms | 119.0472 Ops/s | 119.7092 Ops/s | |
| test_to_njt[True-False-None] | 7.1916ms | 6.8767ms | 145.4179 Ops/s | 148.8550 Ops/s | |
| test_to_njt[within-False-None] | 15.3956ms | 15.1313ms | 66.0880 Ops/s | 65.8167 Ops/s | |
| test_creation[device0] | 0.2890ms | 0.1174ms | 8.5178 KOps/s | 8.6298 KOps/s | |
| test_creation_from_tensor | 0.3955ms | 0.1146ms | 8.7274 KOps/s | 8.9329 KOps/s | |
| test_add_one[memmap_tensor0] | 0.1943ms | 6.4031μs | 156.1742 KOps/s | 154.6713 KOps/s | |
| test_contiguous[memmap_tensor0] | 26.4910μs | 0.5889μs | 1.6980 MOps/s | 2.1004 MOps/s | |
| test_stack[memmap_tensor0] | 37.0420μs | 4.4048μs | 227.0254 KOps/s | 224.5209 KOps/s | |
| test_memmaptd_index | 1.0309ms | 0.2606ms | 3.8380 KOps/s | 3.8929 KOps/s | |
| test_memmaptd_index_astensor | 0.5078ms | 0.3583ms | 2.7906 KOps/s | 2.8297 KOps/s | |
| test_memmaptd_index_op | 0.9151ms | 0.6089ms | 1.6423 KOps/s | 1.6565 KOps/s | |
| test_serialize_model | 0.1348s | 0.1342s | 7.4537 Ops/s | 7.4068 Ops/s | |
| test_serialize_model_pickle | 1.3612s | 1.2126s | 0.8246 Ops/s | 0.8260 Ops/s | |
| test_serialize_weights | 0.1366s | 0.1330s | 7.5188 Ops/s | 6.1386 Ops/s | |
| test_serialize_weights_returnearly | 68.6627ms | 61.2348ms | 16.3306 Ops/s | 15.6133 Ops/s | |
| test_serialize_weights_pickle | 1.3500s | 1.2106s | 0.8260 Ops/s | 0.8212 Ops/s | |
| test_reshape_pytree | 0.2137ms | 30.6915μs | 32.5823 KOps/s | 32.5610 KOps/s | |
| test_reshape_td | 72.3930μs | 43.9870μs | 22.7340 KOps/s | 23.4681 KOps/s | |
| test_view_pytree | 0.2182ms | 30.1502μs | 33.1672 KOps/s | 32.8946 KOps/s | |
| test_view_td | 85.3530μs | 52.1549μs | 19.1736 KOps/s | 19.7741 KOps/s | |
| test_unbind_pytree | 0.2323ms | 34.8124μs | 28.7254 KOps/s | 29.1438 KOps/s | |
| test_unbind_td | 0.1777ms | 48.3150μs | 20.6975 KOps/s | 20.9556 KOps/s | |
| test_split_pytree | 0.2377ms | 40.0064μs | 24.9960 KOps/s | 24.2714 KOps/s | |
| test_split_td | 0.1579ms | 60.7877μs | 16.4507 KOps/s | 16.2060 KOps/s | |
| test_add_pytree | 0.2241ms | 41.0458μs | 24.3631 KOps/s | 25.1976 KOps/s | |
| test_add_td | 0.1045ms | 55.6876μs | 17.9573 KOps/s | 17.9886 KOps/s | |
| test_compile_add_one_nested[tensordict-compile] | 0.2638ms | 0.1649ms | 6.0660 KOps/s | 6.0300 KOps/s | |
| test_compile_add_one_nested[tensordict-eager] | 0.5415ms | 0.1944ms | 5.1451 KOps/s | 5.2123 KOps/s | |
| test_compile_add_one_nested[pytree-compile] | 0.2860ms | 0.1246ms | 8.0266 KOps/s | 7.7415 KOps/s | |
| test_compile_add_one_nested[pytree-eager] | 0.4343ms | 0.1739ms | 5.7488 KOps/s | 5.7570 KOps/s | |
| test_compile_copy_nested[tensordict-compile] | 0.1282ms | 16.5181μs | 60.5397 KOps/s | 61.9284 KOps/s | |
| test_compile_copy_nested[tensordict-eager] | 0.4915ms | 50.5076μs | 19.7990 KOps/s | 19.6390 KOps/s | |
| test_compile_copy_nested[pytree-compile] | 0.4659ms | 15.5453μs | 64.3279 KOps/s | 64.4437 KOps/s | |
| test_compile_copy_nested[pytree-eager] | 0.5029ms | 63.3080μs | 15.7958 KOps/s | 15.7625 KOps/s | |
| test_compile_add_one_flat[tensordict-compile] | 0.6423ms | 0.1956ms | 5.1133 KOps/s | 5.0029 KOps/s | |
| test_compile_add_one_flat[tensordict-eager] | 0.3587ms | 0.2727ms | 3.6675 KOps/s | 3.6524 KOps/s | |
| test_compile_add_one_flat[tensorclass-compile] | 0.2020ms | 0.1316ms | 7.5986 KOps/s | 7.4666 KOps/s | |
| test_compile_add_one_flat[tensorclass-eager] | 0.5082ms | 72.6740μs | 13.7601 KOps/s | 13.2280 KOps/s | |
| test_compile_add_one_flat[pytree-compile] | 0.6164ms | 0.1762ms | 5.6768 KOps/s | 5.5660 KOps/s | |
| test_compile_add_one_flat[pytree-eager] | 0.9526ms | 0.5109ms | 1.9573 KOps/s | 1.8374 KOps/s | |
| test_compile_add_self_flat[tensordict-eager] | 0.7357ms | 0.3229ms | 3.0965 KOps/s | 3.0790 KOps/s | |
| test_compile_add_self_flat[tensordict-compile] | 0.6227ms | 0.1975ms | 5.0625 KOps/s | 4.8176 KOps/s | |
| test_compile_add_self_flat[tensorclass-eager] | 0.1340ms | 88.7272μs | 11.2705 KOps/s | 11.3553 KOps/s | |
| test_compile_add_self_flat[tensorclass-compile] | 0.3847ms | 0.1343ms | 7.4463 KOps/s | 7.0864 KOps/s | |
| test_compile_add_self_flat[pytree-eager] | 0.8709ms | 0.4262ms | 2.3462 KOps/s | 2.3346 KOps/s | |
| test_compile_add_self_flat[pytree-compile] | 0.6174ms | 0.1771ms | 5.6457 KOps/s | 5.3757 KOps/s | |
| test_compile_copy_flat[tensordict-compile] | 0.4627ms | 20.2507μs | 49.3811 KOps/s | 50.9402 KOps/s | |
| test_compile_copy_flat[tensordict-eager] | 78.0830μs | 39.9514μs | 25.0304 KOps/s | 24.9166 KOps/s | |
| test_compile_copy_flat[pytree-compile] | 0.7242ms | 16.2270μs | 61.6255 KOps/s | 61.4617 KOps/s | |
| test_compile_copy_flat[pytree-eager] | 0.5004ms | 50.9150μs | 19.6406 KOps/s | 19.5652 KOps/s | |
| test_compile_assign_and_add[tensordict-compile] | 2.0084ms | 0.1863ms | 5.3673 KOps/s | 5.1088 KOps/s | |
| test_compile_assign_and_add[tensordict-eager] | 3.6971ms | 3.2992ms | 303.1044 Ops/s | 303.0308 Ops/s | |
| test_compile_assign_and_add[pytree-compile] | 1.9891ms | 0.1717ms | 5.8231 KOps/s | 5.6657 KOps/s | |
| test_compile_assign_and_add[pytree-eager] | 3.1539ms | 2.7710ms | 360.8822 Ops/s | 345.5969 Ops/s | |
| test_compile_indexing[tensor-tensordict-compile] | 0.5680ms | 0.1248ms | 8.0143 KOps/s | 7.8072 KOps/s | |
| test_compile_indexing[tensor-tensordict-eager] | 0.3071ms | 73.8245μs | 13.5456 KOps/s | 13.9588 KOps/s | |
| test_compile_indexing[tensor-tensorclass-compile] | 0.2207ms | 0.1118ms | 8.9449 KOps/s | 8.8887 KOps/s | |
| test_compile_indexing[tensor-tensorclass-eager] | 0.5366ms | 44.1323μs | 22.6592 KOps/s | 21.4414 KOps/s | |
| test_compile_indexing[tensor-pytree-compile] | 0.5533ms | 0.1126ms | 8.8819 KOps/s | 8.7986 KOps/s | |
| test_compile_indexing[tensor-pytree-eager] | 0.4770ms | 44.0359μs | 22.7088 KOps/s | 21.3683 KOps/s | |
| test_compile_indexing[slice-tensordict-compile] | 0.5075ms | 69.3368μs | 14.4224 KOps/s | 14.3711 KOps/s | |
| test_compile_indexing[slice-tensordict-eager] | 0.2073ms | 27.9212μs | 35.8150 KOps/s | 37.0603 KOps/s | |
| test_compile_indexing[slice-tensorclass-compile] | 0.5036ms | 56.5167μs | 17.6939 KOps/s | 17.7648 KOps/s | |
| test_compile_indexing[slice-tensorclass-eager] | 0.2363ms | 21.1452μs | 47.2921 KOps/s | 46.0916 KOps/s | |
| test_compile_indexing[slice-pytree-compile] | 0.4910ms | 57.4531μs | 17.4055 KOps/s | 17.1712 KOps/s | |
| test_compile_indexing[slice-pytree-eager] | 0.4496ms | 20.9745μs | 47.6769 KOps/s | 47.5148 KOps/s | |
| test_compile_indexing[int-tensordict-compile] | 0.4980ms | 69.6694μs | 14.3535 KOps/s | 14.0119 KOps/s | |
| test_compile_indexing[int-tensordict-eager] | 0.4888ms | 27.0074μs | 37.0269 KOps/s | 34.2645 KOps/s | |
| test_compile_indexing[int-tensorclass-compile] | 0.4894ms | 56.4979μs | 17.6998 KOps/s | 16.3134 KOps/s | |
| test_compile_indexing[int-tensorclass-eager] | 0.2327ms | 20.9399μs | 47.7557 KOps/s | 45.1225 KOps/s | |
| test_compile_indexing[int-pytree-compile] | 0.4835ms | 56.5558μs | 17.6817 KOps/s | 16.3199 KOps/s | |
| test_compile_indexing[int-pytree-eager] | 0.4476ms | 21.0406μs | 47.5273 KOps/s | 44.8059 KOps/s | |
| test_compile_replace[single-eager] | 0.4849ms | 46.6607μs | 21.4313 KOps/s | 20.0568 KOps/s | |
| test_compile_replace[single-compile] | 0.5538ms | 0.1197ms | 8.3576 KOps/s | 8.3769 KOps/s | |
| test_compile_replace[multi-eager] | 1.0327ms | 0.5576ms | 1.7934 KOps/s | 1.8176 KOps/s | |
| test_compile_replace[multi-compile] | 0.6009ms | 0.1261ms | 7.9317 KOps/s | 7.9785 KOps/s | |
| test_compile_tc_getattr_20[eager] | 0.5914ms | 0.1649ms | 6.0633 KOps/s | 6.0474 KOps/s | |
| test_compile_tc_getattr_20[compile] | 0.1941ms | 0.1351ms | 7.4028 KOps/s | 7.4197 KOps/s | |
| test_compile_clone_shallow[20-eager] | 0.4556ms | 18.6250μs | 53.6913 KOps/s | 54.0307 KOps/s | |
| test_compile_clone_shallow[20-compile] | 0.4586ms | 17.2477μs | 57.9786 KOps/s | 59.1482 KOps/s | |
| test_compile_clone_shallow[40-eager] | 0.4620ms | 33.2021μs | 30.1185 KOps/s | 30.5711 KOps/s | |
| test_compile_clone_shallow[40-compile] | 0.4581ms | 18.7546μs | 53.3203 KOps/s | 54.6172 KOps/s | |
| test_compile_clone_shallow[80-eager] | 0.4949ms | 61.2538μs | 16.3255 KOps/s | 16.5724 KOps/s | |
| test_compile_clone_shallow[80-compile] | 0.1096ms | 20.9705μs | 47.6859 KOps/s | 48.5006 KOps/s | |
| test_compile_update_inplace[eager] | 0.4900ms | 58.0294μs | 17.2326 KOps/s | 17.2471 KOps/s | |
| test_compile_update_inplace[compile] | 0.5875ms | 0.1463ms | 6.8333 KOps/s | 6.7761 KOps/s | |
| test_mod_add[eager] | 0.6491ms | 0.2161ms | 4.6283 KOps/s | 20.0249 KOps/s | |
| test_mod_add[compile] | 0.5469ms | 0.1166ms | 8.5791 KOps/s | 8.5721 KOps/s | |
| test_mod_add[compile-overhead] | 0.2434ms | 0.1641ms | 6.0921 KOps/s | 6.0666 KOps/s | |
| test_mod_wrap[eager] | 0.9100ms | 0.4659ms | 2.1462 KOps/s | 3.5433 KOps/s | |
| test_mod_wrap[compile] | 0.4658ms | 0.3724ms | 2.6853 KOps/s | 2.6374 KOps/s | |
| test_mod_wrap[compile-overhead] | 9.2526ms | 5.0177ms | 199.2932 Ops/s | 199.7564 Ops/s | |
| test_mod_wrap_and_backward[eager] | 1.8177ms | 1.6817ms | 594.6483 Ops/s | 661.7099 Ops/s | |
| test_mod_wrap_and_backward[compile] | 2.4335ms | 1.4926ms | 669.9816 Ops/s | 636.6783 Ops/s | |
| test_mod_wrap_and_backward[compile-overhead] | 1.2361ms | 0.8955ms | 1.1166 KOps/s | 979.1355 Ops/s | |
| test_seq_add[eager] | 0.5836ms | 0.4940ms | 2.0242 KOps/s | 6.3876 KOps/s | |
| test_seq_add[compile] | 0.1725ms | 0.1274ms | 7.8517 KOps/s | 7.4654 KOps/s | |
| test_seq_add[compile-overhead] | 0.2080ms | 0.1691ms | 5.9120 KOps/s | 5.8385 KOps/s | |
| test_seq_wrap[eager] | 1.4676ms | 1.3736ms | 727.9949 Ops/s | 1.9254 KOps/s | |
| test_seq_wrap[compile] | 0.4712ms | 0.3797ms | 2.6336 KOps/s | 2.6380 KOps/s | |
| test_seq_wrap[compile-overhead] | 0.3540ms | 0.2817ms | 3.5494 KOps/s | 3.5150 KOps/s | |
| test_func_call_runtime[False-eager] | 0.9545ms | 0.8531ms | 1.1722 KOps/s | 1.2324 KOps/s | |
| test_func_call_runtime[False-compile] | 1.0688ms | 0.9063ms | 1.1034 KOps/s | 1.1027 KOps/s | |
| test_func_call_runtime[False-compile-overhead] | 0.5303ms | 0.4721ms | 2.1184 KOps/s | 2.1016 KOps/s | |
| test_func_call_runtime[True-eager] | 1.1254ms | 1.0471ms | 955.0058 Ops/s | 955.2535 Ops/s | |
| test_func_call_runtime[True-compile] | 1.0189ms | 0.9165ms | 1.0911 KOps/s | 1.0715 KOps/s | |
| test_func_call_runtime[True-compile-overhead] | 0.5276ms | 0.4839ms | 2.0664 KOps/s | 2.0228 KOps/s | |
| test_func_call_cm_runtime[False-eager] | 0.9416ms | 0.8213ms | 1.2175 KOps/s | 1.1682 KOps/s | |
| test_func_call_cm_runtime[False-compile] | 1.0000ms | 0.8820ms | 1.1338 KOps/s | 1.1103 KOps/s | |
| test_func_call_cm_runtime[False-compile-overhead] | 2.7961ms | 0.4484ms | 2.2302 KOps/s | 2.2046 KOps/s | |
| test_func_call_cm_runtime[True-eager] | 1.3035ms | 1.1872ms | 842.3178 Ops/s | 838.9576 Ops/s | |
| test_func_call_cm_runtime[True-compile] | 1.0456ms | 0.9197ms | 1.0873 KOps/s | 1.0784 KOps/s | |
| test_func_call_cm_runtime[True-compile-overhead] | 0.5398ms | 0.4937ms | 2.0256 KOps/s | 1.9911 KOps/s | |
| test_vmap_func_call_cm_runtime[eager] | 2.8314ms | 2.3306ms | 429.0659 Ops/s | 427.4644 Ops/s | |
| test_vmap_func_call_cm_runtime[compile] | 0.9934ms | 0.9369ms | 1.0674 KOps/s | 1.0519 KOps/s | |
| test_vmap_func_call_cm_runtime[compile-overhead] | 0.5411ms | 0.4976ms | 2.0098 KOps/s | 1.9614 KOps/s | |
| test_distributed | 0.5650ms | 0.1520ms | 6.5806 KOps/s | 5.8870 KOps/s | |
| test_tdmodule | 0.8047ms | 0.1844ms | 5.4217 KOps/s | 35.9956 KOps/s | |
| test_tdmodule_dispatch | 0.3890ms | 0.3537ms | 2.8276 KOps/s | 21.4647 KOps/s | |
| test_tdseq | 45.3320μs | 25.2671μs | 39.5772 KOps/s | 37.2051 KOps/s | |
| test_tdseq_dispatch | 0.2467ms | 0.2065ms | 4.8426 KOps/s | 20.9701 KOps/s | |
| test_instantiation_functorch | 2.0798ms | 1.9737ms | 506.6505 Ops/s | 502.6079 Ops/s | |
| test_exec_functorch | 0.2254ms | 0.1704ms | 5.8692 KOps/s | 5.7641 KOps/s | |
| test_exec_functional_call | 0.2179ms | 0.1535ms | 6.5144 KOps/s | 6.4586 KOps/s | |
| test_exec_td_decorator | 0.4473ms | 0.2257ms | 4.4305 KOps/s | 4.3751 KOps/s | |
| test_vmap_mlp_speed_decorator[True-True] | 1.1938ms | 0.9866ms | 1.0136 KOps/s | 1.2394 KOps/s | |
| test_vmap_mlp_speed_decorator[True-False] | 1.7595ms | 0.9853ms | 1.0150 KOps/s | 1.2455 KOps/s | |
| test_vmap_mlp_speed_decorator[False-True] | 0.8855ms | 0.6955ms | 1.4379 KOps/s | 1.4388 KOps/s | |
| test_vmap_mlp_speed_decorator[False-False] | 0.8743ms | 0.6934ms | 1.4421 KOps/s | 1.4388 KOps/s | |
| test_vmap_transformer_speed_decorator[True-True] | 21.3026ms | 20.6316ms | 48.4694 Ops/s | 49.1331 Ops/s | |
| test_vmap_transformer_speed_decorator[True-False] | 21.4587ms | 20.5803ms | 48.5901 Ops/s | 49.3310 Ops/s | |
| test_vmap_transformer_speed_decorator[False-True] | 20.8634ms | 20.2404ms | 49.4062 Ops/s | 49.7249 Ops/s | |
| test_vmap_transformer_speed_decorator[False-False] | 20.4606ms | 20.2185ms | 49.4597 Ops/s | 49.7964 Ops/s | |
| test_to_module_speed[True] | 1.5114ms | 1.4230ms | 702.7274 Ops/s | 701.9709 Ops/s | |
| test_to_module_speed[False] | 1.4923ms | 1.3923ms | 718.2289 Ops/s | 714.3434 Ops/s | |
| test_tc_init | 69.7020μs | 42.4033μs | 23.5831 KOps/s | 22.3423 KOps/s | |
| test_tc_init_tensor_only | 41.8120μs | 9.3774μs | 106.6396 KOps/s | 107.1550 KOps/s | |
| test_tc_init_nested | 0.1364ms | 84.3276μs | 11.8585 KOps/s | 11.7081 KOps/s | |
| test_tc_init_many_fields | 39.4520μs | 15.5517μs | 64.3016 KOps/s | 63.6534 KOps/s | |
| test_tc_first_layer_tensor | 23.7210μs | 1.7106μs | 584.5781 KOps/s | 580.6594 KOps/s | |
| test_tc_first_layer_tensor_only | 1.8941μs | 0.3812μs | 2.6232 MOps/s | 2.5743 MOps/s | |
| test_tc_first_layer_tensor_set | 33.4710μs | 3.6740μs | 272.1792 KOps/s | 263.2402 KOps/s | |
| test_tc_first_layer_tensor_only_set | 25.2410μs | 3.0655μs | 326.2148 KOps/s | 323.8972 KOps/s | |
| test_tc_first_layer_nontensor | 32.3610μs | 5.7842μs | 172.8861 KOps/s | 171.2173 KOps/s | |
| test_tc_second_layer_tensor | 29.6410μs | 4.0795μs | 245.1253 KOps/s | 248.5821 KOps/s | |
| test_tc_second_layer_nontensor | 37.8810μs | 8.1906μs | 122.0912 KOps/s | 121.2382 KOps/s | |
| test_unbind | 0.2807s | 13.6619ms | 73.1963 Ops/s | 65.1682 Ops/s | |
| test_full_like | 4.8223ms | 4.2805ms | 233.6179 Ops/s | 225.5270 Ops/s | |
| test_zeros_like | 5.0616ms | 4.3670ms | 228.9887 Ops/s | 229.1786 Ops/s | |
| test_ones_like | 4.7968ms | 4.3694ms | 228.8622 Ops/s | 228.5355 Ops/s | |
| test_clone | 6.8035ms | 6.5662ms | 152.2949 Ops/s | 152.7845 Ops/s | |
| test_squeeze | 0.1636ms | 13.3369μs | 74.9800 KOps/s | 74.1681 KOps/s | |
| test_unsqueeze | 0.1874ms | 0.1103ms | 9.0648 KOps/s | 9.2716 KOps/s | |
| test_split | 0.2807ms | 0.1785ms | 5.6027 KOps/s | 5.6879 KOps/s | |
| test_permute | 0.2592ms | 0.2089ms | 4.7880 KOps/s | 4.9866 KOps/s | |
| test_stack | 51.9851ms | 51.3933ms | 19.4578 Ops/s | 19.4160 Ops/s | |
| test_cat | 51.9964ms | 51.4403ms | 19.4400 Ops/s | 19.4280 Ops/s | |
| test_sequential_tensordict | 0.7942ms | 0.5548ms | 1.8023 KOps/s | 4.7360 KOps/s | |
| test_sequential_graph_module | 0.5249ms | 0.1183ms | 8.4516 KOps/s | 8.7494 KOps/s | |
| test_nested_tensordict | 0.8844ms | 0.7884ms | 1.2684 KOps/s | 3.4945 KOps/s | |
| test_nested_graph_module | 0.5154ms | 0.1266ms | 7.8980 KOps/s | 8.0522 KOps/s |
Contributor
|
| Name | Max | Mean | Ops | Ops on Repo HEAD
|
Change |
|---|---|---|---|---|---|
| test_plain_set_nested | 34.3310μs | 14.8770μs | 67.2179 KOps/s | 67.6161 KOps/s | |
| test_plain_set_stack_nested | 55.4220μs | 15.1715μs | 65.9132 KOps/s | 66.3310 KOps/s | |
| test_plain_set_nested_inplace | 38.7310μs | 16.6772μs | 59.9622 KOps/s | 59.8046 KOps/s | |
| test_plain_set_stack_nested_inplace | 53.4310μs | 16.4693μs | 60.7190 KOps/s | 60.4289 KOps/s | |
| test_items | 31.2900μs | 6.0334μs | 165.7453 KOps/s | 168.6230 KOps/s | |
| test_items_nested | 0.5417ms | 0.4727ms | 2.1155 KOps/s | 2.1477 KOps/s | |
| test_items_nested_locked | 0.5563ms | 0.4767ms | 2.0977 KOps/s | 2.1240 KOps/s | |
| test_items_nested_leaf | 0.1439ms | 97.8602μs | 10.2187 KOps/s | 10.2757 KOps/s | |
| test_items_stack_nested | 0.5662ms | 0.4741ms | 2.1092 KOps/s | 2.1637 KOps/s | |
| test_items_stack_nested_leaf | 0.1377ms | 97.3675μs | 10.2704 KOps/s | 10.3851 KOps/s | |
| test_items_stack_nested_locked | 0.5606ms | 0.4708ms | 2.1239 KOps/s | 2.1085 KOps/s | |
| test_keys | 29.4400μs | 4.2276μs | 236.5389 KOps/s | 236.5276 KOps/s | |
| test_keys_nested | 0.1738ms | 0.1306ms | 7.6541 KOps/s | 7.6406 KOps/s | |
| test_keys_nested_locked | 2.5106ms | 0.1392ms | 7.1861 KOps/s | 7.1424 KOps/s | |
| test_keys_nested_leaf | 0.1676ms | 0.1211ms | 8.2555 KOps/s | 8.3000 KOps/s | |
| test_keys_stack_nested | 0.1682ms | 0.1310ms | 7.6359 KOps/s | 7.6619 KOps/s | |
| test_keys_stack_nested_leaf | 0.1686ms | 0.1215ms | 8.2324 KOps/s | 8.2664 KOps/s | |
| test_keys_stack_nested_locked | 0.2146ms | 0.1401ms | 7.1382 KOps/s | 7.1852 KOps/s | |
| test_values | 5.6482μs | 1.0221μs | 978.3937 KOps/s | 975.1464 KOps/s | |
| test_values_nested | 82.8320μs | 52.4534μs | 19.0646 KOps/s | 18.9550 KOps/s | |
| test_values_nested_locked | 87.5320μs | 55.8414μs | 17.9079 KOps/s | 17.9457 KOps/s | |
| test_values_nested_leaf | 94.1120μs | 59.9859μs | 16.6706 KOps/s | 16.5212 KOps/s | |
| test_values_stack_nested | 0.1294ms | 52.2834μs | 19.1265 KOps/s | 18.9554 KOps/s | |
| test_values_stack_nested_leaf | 95.6620μs | 60.3974μs | 16.5570 KOps/s | 16.5693 KOps/s | |
| test_values_stack_nested_locked | 82.9620μs | 55.9149μs | 17.8843 KOps/s | 17.7688 KOps/s | |
| test_membership | 4.5118μs | 0.8328μs | 1.2008 MOps/s | 1.1732 MOps/s | |
| test_membership_nested | 22.5900μs | 2.8759μs | 347.7176 KOps/s | 347.8562 KOps/s | |
| test_membership_nested_leaf | 32.8410μs | 2.8771μs | 347.5748 KOps/s | 343.9731 KOps/s | |
| test_membership_stacked_nested | 29.0210μs | 2.8761μs | 347.6946 KOps/s | 345.1299 KOps/s | |
| test_membership_stacked_nested_leaf | 27.9210μs | 2.8970μs | 345.1819 KOps/s | 348.2886 KOps/s | |
| test_membership_nested_last | 37.9310μs | 4.3023μs | 232.4338 KOps/s | 229.6422 KOps/s | |
| test_membership_nested_leaf_last | 32.1910μs | 4.3250μs | 231.2151 KOps/s | 229.3939 KOps/s | |
| test_membership_stacked_nested_last | 35.6010μs | 4.2993μs | 232.5983 KOps/s | 227.4833 KOps/s | |
| test_membership_stacked_nested_leaf_last | 39.0910μs | 4.2909μs | 233.0516 KOps/s | 231.2151 KOps/s | |
| test_nested_getleaf | 93.3820μs | 21.3701μs | 46.7942 KOps/s | 45.8193 KOps/s | |
| test_nested_get | 53.6110μs | 20.3995μs | 49.0209 KOps/s | 49.1394 KOps/s | |
| test_stacked_getleaf | 67.2520μs | 21.5409μs | 46.4234 KOps/s | 46.9049 KOps/s | |
| test_stacked_get | 53.5220μs | 20.4100μs | 48.9957 KOps/s | 48.9963 KOps/s | |
| test_nested_getitemleaf | 60.8310μs | 22.1089μs | 45.2306 KOps/s | 45.1822 KOps/s | |
| test_nested_getitem | 80.0420μs | 20.9134μs | 47.8163 KOps/s | 47.5746 KOps/s | |
| test_stacked_getitemleaf | 50.0110μs | 22.4489μs | 44.5455 KOps/s | 45.4752 KOps/s | |
| test_stacked_getitem | 53.0610μs | 20.8936μs | 47.8615 KOps/s | 48.3638 KOps/s | |
| test_lock_nested | 5.1805ms | 0.4820ms | 2.0748 KOps/s | 2.0741 KOps/s | |
| test_lock_stack_nested | 0.5736ms | 0.4828ms | 2.0711 KOps/s | 2.0353 KOps/s | |
| test_unlock_nested | 0.5577ms | 0.3888ms | 2.5720 KOps/s | 2.5300 KOps/s | |
| test_unlock_stack_nested | 0.4954ms | 0.3921ms | 2.5506 KOps/s | 2.4941 KOps/s | |
| test_flatten_speed | 0.1675ms | 0.1228ms | 8.1412 KOps/s | 8.1797 KOps/s | |
| test_unflatten_speed | 0.7726ms | 0.5690ms | 1.7574 KOps/s | 1.7185 KOps/s | |
| test_common_ops | 99.1333ms | 1.0220ms | 978.5088 Ops/s | 210.4040 Ops/s | |
| test_creation | 98.6620μs | 3.1293μs | 319.5587 KOps/s | 329.8549 KOps/s | |
| test_creation_empty | 31.3710μs | 7.0029μs | 142.7970 KOps/s | 143.0541 KOps/s | |
| test_creation_nested_1 | 61.5710μs | 11.5328μs | 86.7089 KOps/s | 87.3349 KOps/s | |
| test_creation_nested_2 | 45.0910μs | 13.4004μs | 74.6247 KOps/s | 74.4675 KOps/s | |
| test_creation_many_keys[10] | 55.2810μs | 21.1674μs | 47.2425 KOps/s | 46.8451 KOps/s | |
| test_creation_many_keys[50] | 0.1214ms | 90.4476μs | 11.0561 KOps/s | 10.9659 KOps/s | |
| test_creation_many_keys[100] | 0.2288ms | 0.1771ms | 5.6468 KOps/s | 5.5740 KOps/s | |
| test_creation_nested_many_keys[10] | 81.8820μs | 45.2251μs | 22.1116 KOps/s | 22.1538 KOps/s | |
| test_creation_nested_many_keys[50] | 0.2206ms | 0.1850ms | 5.4063 KOps/s | 5.3946 KOps/s | |
| test_clone | 61.3820μs | 13.3298μs | 75.0200 KOps/s | 72.9230 KOps/s | |
| test_getitem[int] | 1.5277ms | 15.2586μs | 65.5368 KOps/s | 55.0869 KOps/s | |
| test_getitem[slice_int] | 0.1477ms | 24.7472μs | 40.4086 KOps/s | 38.2991 KOps/s | |
| test_getitem[range] | 0.1708ms | 62.9920μs | 15.8750 KOps/s | 15.3443 KOps/s | |
| test_getitem[tuple] | 0.1465ms | 24.4879μs | 40.8365 KOps/s | 39.8603 KOps/s | |
| test_getitem[list] | 0.2224ms | 58.4482μs | 17.1092 KOps/s | 16.6384 KOps/s | |
| test_setitem_dim[int] | 45.9910μs | 26.5668μs | 37.6410 KOps/s | 36.8731 KOps/s | |
| test_setitem_dim[slice_int] | 65.7120μs | 42.6461μs | 23.4488 KOps/s | 22.6021 KOps/s | |
| test_setitem_dim[range] | 0.1228ms | 94.6326μs | 10.5672 KOps/s | 10.3884 KOps/s | |
| test_setitem_dim[tuple] | 72.1320μs | 39.0563μs | 25.6041 KOps/s | 24.4383 KOps/s | |
| test_setitem | 68.9310μs | 17.6916μs | 56.5240 KOps/s | 53.3774 KOps/s | |
| test_set | 79.5920μs | 17.1060μs | 58.4590 KOps/s | 56.2257 KOps/s | |
| test_set_shared | 0.4868ms | 0.2079ms | 4.8105 KOps/s | 4.8603 KOps/s | |
| test_update | 0.1928ms | 22.7380μs | 43.9793 KOps/s | 43.6593 KOps/s | |
| test_update_nested | 90.5320μs | 35.4628μs | 28.1986 KOps/s | 28.3194 KOps/s | |
| test_update__nested | 0.5256ms | 35.7314μs | 27.9866 KOps/s | 28.5343 KOps/s | |
| test_set_nested | 73.2120μs | 20.0208μs | 49.9481 KOps/s | 50.4177 KOps/s | |
| test_set_nested_new | 74.5820μs | 25.8310μs | 38.7131 KOps/s | 39.4410 KOps/s | |
| test_select | 93.5620μs | 42.7696μs | 23.3811 KOps/s | 23.7866 KOps/s | |
| test_select_nested | 0.1062ms | 73.9955μs | 13.5143 KOps/s | 13.4864 KOps/s | |
| test_exclude_nested | 0.1295ms | 92.6484μs | 10.7935 KOps/s | 10.8646 KOps/s | |
| test_empty[True] | 0.5370ms | 0.3977ms | 2.5144 KOps/s | 2.5104 KOps/s | |
| test_empty[False] | 7.6575μs | 1.3210μs | 756.9956 KOps/s | 760.3614 KOps/s | |
| test_to | 0.1127ms | 80.0484μs | 12.4924 KOps/s | 13.1545 KOps/s | |
| test_to_nonblocking | 1.2548ms | 71.9649μs | 13.8957 KOps/s | 14.3200 KOps/s | |
| test_unbind_speed | 0.4151ms | 0.3344ms | 2.9905 KOps/s | 2.9444 KOps/s | |
| test_unbind_speed_stack0 | 0.4375ms | 0.3322ms | 3.0101 KOps/s | 2.9582 KOps/s | |
| test_unbind_speed_stack1 | 0.1058s | 0.9193ms | 1.0878 KOps/s | 1.1706 KOps/s | |
| test_split | 1.2669ms | 1.1411ms | 876.3573 Ops/s | 787.8774 Ops/s | |
| test_chunk | 0.1058s | 1.2158ms | 822.5098 Ops/s | 910.3761 Ops/s | |
| test_to_cpu_blocking | 20.7819ms | 20.1921ms | 49.5244 Ops/s | 34.1653 Ops/s | |
| test_to_cpu_global_sync | 11.9402ms | 11.8173ms | 84.6215 Ops/s | 73.8688 Ops/s | |
| test_to_cpu_event_sync | 13.2534ms | 12.8156ms | 78.0298 Ops/s | 75.7696 Ops/s | |
| test_to_cpu_default | 0.1184s | 14.2155ms | 70.3459 Ops/s | 75.7187 Ops/s | |
| test_consolidate[False-None] | 4.5808ms | 4.1253ms | 242.4055 Ops/s | 236.6137 Ops/s | |
| test_consolidate[default-None] | 2.1322ms | 2.0471ms | 488.4878 Ops/s | 458.7407 Ops/s | |
| test_consolidate[reduce-overhead-None] | 2.0647ms | 1.9604ms | 510.1039 Ops/s | 485.2324 Ops/s | |
| test_consolidate_njt[False-None] | 8.7344ms | 8.4798ms | 117.9270 Ops/s | 114.2608 Ops/s | |
| test_to[False-False-None] | 2.2510ms | 2.1720ms | 460.3977 Ops/s | 440.8689 Ops/s | |
| test_to[True-False-None] | 2.1697ms | 1.9006ms | 526.1630 Ops/s | 507.2579 Ops/s | |
| test_to[within-False-None] | 6.2095ms | 6.1073ms | 163.7386 Ops/s | 157.6770 Ops/s | |
| test_to[True-default-None] | 9.7474ms | 9.2564ms | 108.0332 Ops/s | 105.8602 Ops/s | |
| test_to_njt[False-False-None] | 8.7376ms | 8.6033ms | 116.2339 Ops/s | 113.7033 Ops/s | |
| test_to_njt[True-False-None] | 7.1359ms | 7.0363ms | 142.1197 Ops/s | 140.6600 Ops/s | |
| test_to_njt[within-False-None] | 15.7970ms | 15.5868ms | 64.1569 Ops/s | 62.3782 Ops/s | |
| test_creation[device0] | 0.4516ms | 0.1152ms | 8.6790 KOps/s | 8.6505 KOps/s | |
| test_creation_from_tensor | 0.4183ms | 0.1131ms | 8.8409 KOps/s | 8.8733 KOps/s | |
| test_add_one[memmap_tensor0] | 0.3338ms | 6.5506μs | 152.6584 KOps/s | 143.9172 KOps/s | |
| test_contiguous[memmap_tensor0] | 23.9600μs | 0.6451μs | 1.5501 MOps/s | 2.2611 MOps/s | |
| test_stack[memmap_tensor0] | 23.9310μs | 4.7373μs | 211.0900 KOps/s | 210.7710 KOps/s | |
| test_memmaptd_index | 1.1570ms | 0.2673ms | 3.7406 KOps/s | 3.5936 KOps/s | |
| test_memmaptd_index_astensor | 0.5516ms | 0.3730ms | 2.6807 KOps/s | 2.6378 KOps/s | |
| test_memmaptd_index_op | 0.7970ms | 0.6206ms | 1.6114 KOps/s | 1.5467 KOps/s | |
| test_serialize_model | 0.1389s | 0.1354s | 7.3876 Ops/s | 7.3865 Ops/s | |
| test_serialize_model_pickle | 1.3484s | 1.1917s | 0.8391 Ops/s | 0.8262 Ops/s | |
| test_serialize_weights | 0.1378s | 0.1355s | 7.3826 Ops/s | 3.5108 Ops/s | |
| test_serialize_weights_returnearly | 0.4705s | 89.1660ms | 11.2150 Ops/s | 15.8722 Ops/s | |
| test_serialize_weights_pickle | 1.3647s | 1.1987s | 0.8342 Ops/s | 0.8230 Ops/s | |
| test_reshape_pytree | 0.2041ms | 32.7757μs | 30.5104 KOps/s | 30.6680 KOps/s | |
| test_reshape_td | 97.2720μs | 47.9337μs | 20.8621 KOps/s | 21.8244 KOps/s | |
| test_view_pytree | 0.2196ms | 32.1603μs | 31.0942 KOps/s | 30.9512 KOps/s | |
| test_view_td | 0.1027ms | 54.7594μs | 18.2617 KOps/s | 18.2985 KOps/s | |
| test_unbind_pytree | 0.2649ms | 36.0398μs | 27.7471 KOps/s | 27.1496 KOps/s | |
| test_unbind_td | 0.1410ms | 50.1921μs | 19.9235 KOps/s | 19.6410 KOps/s | |
| test_split_pytree | 0.2455ms | 42.3140μs | 23.6328 KOps/s | 23.6161 KOps/s | |
| test_split_td | 0.2179ms | 65.3832μs | 15.2945 KOps/s | 15.4735 KOps/s | |
| test_add_pytree | 0.2249ms | 43.3262μs | 23.0807 KOps/s | 23.8030 KOps/s | |
| test_add_td | 0.1026ms | 59.7244μs | 16.7436 KOps/s | 17.6489 KOps/s | |
| test_compile_add_one_nested[tensordict-compile] | 0.2767ms | 0.1694ms | 5.9039 KOps/s | 5.7527 KOps/s | |
| test_compile_add_one_nested[tensordict-eager] | 0.2883ms | 0.2012ms | 4.9695 KOps/s | 4.9503 KOps/s | |
| test_compile_add_one_nested[pytree-compile] | 0.2222ms | 0.1289ms | 7.7568 KOps/s | 7.6698 KOps/s | |
| test_compile_add_one_nested[pytree-eager] | 0.4313ms | 0.1803ms | 5.5475 KOps/s | 5.4238 KOps/s | |
| test_compile_copy_nested[tensordict-compile] | 75.0220μs | 17.4903μs | 57.1747 KOps/s | 60.8367 KOps/s | |
| test_compile_copy_nested[tensordict-eager] | 0.4056ms | 52.9854μs | 18.8731 KOps/s | 17.9797 KOps/s | |
| test_compile_copy_nested[pytree-compile] | 0.1292ms | 15.8395μs | 63.1332 KOps/s | 63.1692 KOps/s | |
| test_compile_copy_nested[pytree-eager] | 0.3631ms | 67.5536μs | 14.8031 KOps/s | 14.8943 KOps/s | |
| test_compile_add_one_flat[tensordict-compile] | 0.2914ms | 0.2003ms | 4.9932 KOps/s | 4.7923 KOps/s | |
| test_compile_add_one_flat[tensordict-eager] | 0.3221ms | 0.2802ms | 3.5695 KOps/s | 3.5116 KOps/s | |
| test_compile_add_one_flat[tensorclass-compile] | 0.2121ms | 0.1357ms | 7.3672 KOps/s | 7.1499 KOps/s | |
| test_compile_add_one_flat[tensorclass-eager] | 0.1171ms | 74.0076μs | 13.5121 KOps/s | 12.9625 KOps/s | |
| test_compile_add_one_flat[pytree-compile] | 0.2429ms | 0.1785ms | 5.6026 KOps/s | 5.3958 KOps/s | |
| test_compile_add_one_flat[pytree-eager] | 0.8172ms | 0.5282ms | 1.8934 KOps/s | 1.8207 KOps/s | |
| test_compile_add_self_flat[tensordict-eager] | 0.4133ms | 0.3302ms | 3.0285 KOps/s | 2.9740 KOps/s | |
| test_compile_add_self_flat[tensordict-compile] | 0.2516ms | 0.1991ms | 5.0214 KOps/s | 4.7613 KOps/s | |
| test_compile_add_self_flat[tensorclass-eager] | 0.1481ms | 90.5533μs | 11.0432 KOps/s | 10.8535 KOps/s | |
| test_compile_add_self_flat[tensorclass-compile] | 0.1830ms | 0.1372ms | 7.2886 KOps/s | 6.9979 KOps/s | |
| test_compile_add_self_flat[pytree-eager] | 0.6551ms | 0.4433ms | 2.2560 KOps/s | 2.2193 KOps/s | |
| test_compile_add_self_flat[pytree-compile] | 0.2253ms | 0.1800ms | 5.5557 KOps/s | 5.3588 KOps/s | |
| test_compile_copy_flat[tensordict-compile] | 0.1333ms | 19.7673μs | 50.5887 KOps/s | 48.4724 KOps/s | |
| test_compile_copy_flat[tensordict-eager] | 74.2920μs | 41.3403μs | 24.1895 KOps/s | 21.6935 KOps/s | |
| test_compile_copy_flat[pytree-compile] | 0.2057ms | 16.7858μs | 59.5741 KOps/s | 57.3875 KOps/s | |
| test_compile_copy_flat[pytree-eager] | 0.3584ms | 52.5781μs | 19.0193 KOps/s | 18.9990 KOps/s | |
| test_compile_assign_and_add[tensordict-compile] | 2.0858ms | 0.1902ms | 5.2573 KOps/s | 4.8321 KOps/s | |
| test_compile_assign_and_add[tensordict-eager] | 3.5089ms | 3.3452ms | 298.9362 Ops/s | 289.9476 Ops/s | |
| test_compile_assign_and_add[pytree-compile] | 2.0816ms | 0.1765ms | 5.6662 KOps/s | 5.4180 KOps/s | |
| test_compile_assign_and_add[pytree-eager] | 2.9473ms | 2.8150ms | 355.2428 Ops/s | 344.7518 Ops/s | |
| test_compile_indexing[tensor-tensordict-compile] | 0.2422ms | 0.1268ms | 7.8864 KOps/s | 7.4772 KOps/s | |
| test_compile_indexing[tensor-tensordict-eager] | 0.2928ms | 73.6295μs | 13.5815 KOps/s | 13.0479 KOps/s | |
| test_compile_indexing[tensor-tensorclass-compile] | 0.2156ms | 0.1132ms | 8.8322 KOps/s | 8.4831 KOps/s | |
| test_compile_indexing[tensor-tensorclass-eager] | 0.2466ms | 43.9392μs | 22.7587 KOps/s | 21.0540 KOps/s | |
| test_compile_indexing[tensor-pytree-compile] | 0.1520ms | 0.1140ms | 8.7704 KOps/s | 8.0711 KOps/s | |
| test_compile_indexing[tensor-pytree-eager] | 0.2406ms | 44.0280μs | 22.7128 KOps/s | 20.5053 KOps/s | |
| test_compile_indexing[slice-tensordict-compile] | 0.2018ms | 70.1159μs | 14.2621 KOps/s | 13.4208 KOps/s | |
| test_compile_indexing[slice-tensordict-eager] | 0.2068ms | 27.3663μs | 36.5413 KOps/s | 34.9114 KOps/s | |
| test_compile_indexing[slice-tensorclass-compile] | 0.1594ms | 57.4788μs | 17.3977 KOps/s | 16.6900 KOps/s | |
| test_compile_indexing[slice-tensorclass-eager] | 0.2438ms | 22.1167μs | 45.2147 KOps/s | 44.5604 KOps/s | |
| test_compile_indexing[slice-pytree-compile] | 91.0320μs | 58.6900μs | 17.0387 KOps/s | 15.8997 KOps/s | |
| test_compile_indexing[slice-pytree-eager] | 0.2716ms | 21.7058μs | 46.0705 KOps/s | 44.2311 KOps/s | |
| test_compile_indexing[int-tensordict-compile] | 0.1098ms | 69.8928μs | 14.3076 KOps/s | 13.1161 KOps/s | |
| test_compile_indexing[int-tensordict-eager] | 0.2015ms | 27.6534μs | 36.1619 KOps/s | 35.1518 KOps/s | |
| test_compile_indexing[int-tensorclass-compile] | 0.1247ms | 58.0927μs | 17.2139 KOps/s | 16.3831 KOps/s | |
| test_compile_indexing[int-tensorclass-eager] | 0.2639ms | 21.8067μs | 45.8575 KOps/s | 44.5438 KOps/s | |
| test_compile_indexing[int-pytree-compile] | 0.2382ms | 58.9446μs | 16.9651 KOps/s | 16.4438 KOps/s | |
| test_compile_indexing[int-pytree-eager] | 0.2509ms | 21.7797μs | 45.9143 KOps/s | 44.8330 KOps/s | |
| test_compile_replace[single-eager] | 90.1720μs | 47.5865μs | 21.0144 KOps/s | 20.0267 KOps/s | |
| test_compile_replace[single-compile] | 0.1646ms | 0.1217ms | 8.2170 KOps/s | 7.4377 KOps/s | |
| test_compile_replace[multi-eager] | 0.6081ms | 0.5610ms | 1.7825 KOps/s | 1.6618 KOps/s | |
| test_compile_replace[multi-compile] | 0.2705ms | 0.1285ms | 7.7802 KOps/s | 7.5096 KOps/s | |
| test_compile_tc_getattr_20[eager] | 0.2198ms | 0.1730ms | 5.7811 KOps/s | 5.8031 KOps/s | |
| test_compile_tc_getattr_20[compile] | 0.3208ms | 0.1370ms | 7.2983 KOps/s | 6.9506 KOps/s | |
| test_compile_clone_shallow[20-eager] | 51.6610μs | 19.2019μs | 52.0781 KOps/s | 47.2106 KOps/s | |
| test_compile_clone_shallow[20-compile] | 57.2820μs | 17.5378μs | 57.0197 KOps/s | 53.6859 KOps/s | |
| test_compile_clone_shallow[40-eager] | 61.8810μs | 33.8828μs | 29.5135 KOps/s | 27.0746 KOps/s | |
| test_compile_clone_shallow[40-compile] | 78.8820μs | 18.8329μs | 53.0986 KOps/s | 50.6080 KOps/s | |
| test_compile_clone_shallow[80-eager] | 99.7130μs | 62.9103μs | 15.8957 KOps/s | 14.2778 KOps/s | |
| test_compile_clone_shallow[80-compile] | 0.1113ms | 20.8382μs | 47.9888 KOps/s | 44.9974 KOps/s | |
| test_compile_update_inplace[eager] | 99.4320μs | 60.4039μs | 16.5552 KOps/s | 16.3709 KOps/s | |
| test_compile_update_inplace[compile] | 0.2022ms | 0.1525ms | 6.5569 KOps/s | 6.0719 KOps/s | |
| test_mod_add[eager] | 0.2684ms | 0.2246ms | 4.4524 KOps/s | 19.0970 KOps/s | |
| test_mod_add[compile] | 0.4915ms | 0.1182ms | 8.4603 KOps/s | 7.8440 KOps/s | |
| test_mod_add[compile-overhead] | 0.3115ms | 0.1673ms | 5.9786 KOps/s | 5.8094 KOps/s | |
| test_mod_wrap[eager] | 0.5523ms | 0.4743ms | 2.1083 KOps/s | 3.2209 KOps/s | |
| test_mod_wrap[compile] | 0.4285ms | 0.3681ms | 2.7165 KOps/s | 2.5295 KOps/s | |
| test_mod_wrap[compile-overhead] | 9.2980ms | 5.0450ms | 198.2144 Ops/s | 201.0698 Ops/s | |
| test_mod_wrap_and_backward[eager] | 2.1206ms | 1.7229ms | 580.4177 Ops/s | 607.9304 Ops/s | |
| test_mod_wrap_and_backward[compile] | 2.5974ms | 1.5675ms | 637.9427 Ops/s | 617.2110 Ops/s | |
| test_mod_wrap_and_backward[compile-overhead] | 1.3926ms | 1.0118ms | 988.3257 Ops/s | 941.9607 Ops/s | |
| test_seq_add[eager] | 0.5858ms | 0.5060ms | 1.9762 KOps/s | 6.3422 KOps/s | |
| test_seq_add[compile] | 0.2168ms | 0.1343ms | 7.4484 KOps/s | 7.3734 KOps/s | |
| test_seq_add[compile-overhead] | 0.2230ms | 0.1740ms | 5.7470 KOps/s | 5.5378 KOps/s | |
| test_seq_wrap[eager] | 1.5071ms | 1.4154ms | 706.5330 Ops/s | 1.8636 KOps/s | |
| test_seq_wrap[compile] | 0.4549ms | 0.4021ms | 2.4872 KOps/s | 2.4916 KOps/s | |
| test_seq_wrap[compile-overhead] | 0.3593ms | 0.2881ms | 3.4708 KOps/s | 3.3420 KOps/s | |
| test_func_call_runtime[False-eager] | 0.9510ms | 0.8535ms | 1.1717 KOps/s | 1.1585 KOps/s | |
| test_func_call_runtime[False-compile] | 1.0326ms | 0.9390ms | 1.0649 KOps/s | 1.0480 KOps/s | |
| test_func_call_runtime[False-compile-overhead] | 0.5865ms | 0.4917ms | 2.0338 KOps/s | 1.9915 KOps/s | |
| test_func_call_runtime[True-eager] | 1.2317ms | 1.0936ms | 914.4377 Ops/s | 899.3226 Ops/s | |
| test_func_call_runtime[True-compile] | 1.0167ms | 0.9382ms | 1.0659 KOps/s | 1.0347 KOps/s | |
| test_func_call_runtime[True-compile-overhead] | 0.5996ms | 0.5053ms | 1.9790 KOps/s | 1.9312 KOps/s | |
| test_func_call_cm_runtime[False-eager] | 0.9671ms | 0.8892ms | 1.1246 KOps/s | 1.0968 KOps/s | |
| test_func_call_cm_runtime[False-compile] | 1.1124ms | 0.9032ms | 1.1072 KOps/s | 1.0718 KOps/s | |
| test_func_call_cm_runtime[False-compile-overhead] | 0.5417ms | 0.4693ms | 2.1310 KOps/s | 2.0810 KOps/s | |
| test_func_call_cm_runtime[True-eager] | 1.3247ms | 1.2255ms | 815.9926 Ops/s | 797.0986 Ops/s | |
| test_func_call_cm_runtime[True-compile] | 1.0427ms | 0.9447ms | 1.0586 KOps/s | 1.0212 KOps/s | |
| test_func_call_cm_runtime[True-compile-overhead] | 0.5602ms | 0.5148ms | 1.9426 KOps/s | 1.9004 KOps/s | |
| test_vmap_func_call_cm_runtime[eager] | 2.9016ms | 2.3906ms | 418.3036 Ops/s | 411.7903 Ops/s | |
| test_vmap_func_call_cm_runtime[compile] | 1.0775ms | 0.9901ms | 1.0100 KOps/s | 984.2923 Ops/s | |
| test_vmap_func_call_cm_runtime[compile-overhead] | 0.6395ms | 0.5188ms | 1.9277 KOps/s | 1.8707 KOps/s | |
| test_distributed | 0.4692ms | 0.1563ms | 6.3988 KOps/s | 6.3305 KOps/s | |
| test_tdmodule | 0.6998ms | 0.1921ms | 5.2043 KOps/s | 33.8087 KOps/s | |
| test_tdmodule_dispatch | 0.4011ms | 0.3640ms | 2.7474 KOps/s | 21.5191 KOps/s | |
| test_tdseq | 47.7810μs | 27.0956μs | 36.9064 KOps/s | 35.3018 KOps/s | |
| test_tdseq_dispatch | 0.2494ms | 0.2144ms | 4.6634 KOps/s | 19.8232 KOps/s | |
| test_instantiation_functorch | 2.1635ms | 2.0656ms | 484.1288 Ops/s | 475.3664 Ops/s | |
| test_exec_functorch | 0.2326ms | 0.1804ms | 5.5431 KOps/s | 5.4744 KOps/s | |
| test_exec_functional_call | 0.2178ms | 0.1685ms | 5.9340 KOps/s | 6.0941 KOps/s | |
| test_exec_td_decorator | 0.4657ms | 0.2396ms | 4.1733 KOps/s | 4.0653 KOps/s | |
| test_vmap_mlp_speed_decorator[True-True] | 1.1971ms | 1.0099ms | 990.1935 Ops/s | 1.1523 KOps/s | |
| test_vmap_mlp_speed_decorator[True-False] | 1.2552ms | 1.0081ms | 991.9708 Ops/s | 1.1533 KOps/s | |
| test_vmap_mlp_speed_decorator[False-True] | 0.9202ms | 0.7207ms | 1.3876 KOps/s | 1.3514 KOps/s | |
| test_vmap_mlp_speed_decorator[False-False] | 0.9274ms | 0.7168ms | 1.3950 KOps/s | 1.3394 KOps/s | |
| test_vmap_transformer_speed_decorator[True-True] | 21.6048ms | 20.9968ms | 47.6264 Ops/s | 46.5857 Ops/s | |
| test_vmap_transformer_speed_decorator[True-False] | 21.8023ms | 20.9982ms | 47.6231 Ops/s | 47.3013 Ops/s | |
| test_vmap_transformer_speed_decorator[False-True] | 21.5560ms | 20.7038ms | 48.3004 Ops/s | 47.8642 Ops/s | |
| test_vmap_transformer_speed_decorator[False-False] | 21.5790ms | 20.7103ms | 48.2851 Ops/s | 47.8980 Ops/s | |
| test_to_module_speed[True] | 2.0692ms | 1.4804ms | 675.4729 Ops/s | 676.9963 Ops/s | |
| test_to_module_speed[False] | 1.5636ms | 1.4495ms | 689.8928 Ops/s | 691.8965 Ops/s | |
| test_tc_init | 66.2420μs | 44.1233μs | 22.6637 KOps/s | 21.9498 KOps/s | |
| test_tc_init_tensor_only | 43.1810μs | 9.8211μs | 101.8215 KOps/s | 101.8171 KOps/s | |
| test_tc_init_nested | 0.1382ms | 87.4680μs | 11.4328 KOps/s | 11.0730 KOps/s | |
| test_tc_init_many_fields | 47.0910μs | 16.7389μs | 59.7409 KOps/s | 60.3839 KOps/s | |
| test_tc_first_layer_tensor | 27.9400μs | 1.8420μs | 542.8899 KOps/s | 553.3850 KOps/s | |
| test_tc_first_layer_tensor_only | 2.2545μs | 0.3992μs | 2.5051 MOps/s | 2.5043 MOps/s | |
| test_tc_first_layer_tensor_set | 25.1710μs | 3.9023μs | 256.2597 KOps/s | 254.5454 KOps/s | |
| test_tc_first_layer_tensor_only_set | 30.5310μs | 3.2478μs | 307.9018 KOps/s | 302.1141 KOps/s | |
| test_tc_first_layer_nontensor | 33.2810μs | 6.4431μs | 155.2048 KOps/s | 161.1048 KOps/s | |
| test_tc_second_layer_tensor | 24.8310μs | 4.4261μs | 225.9302 KOps/s | 222.0899 KOps/s | |
| test_tc_second_layer_nontensor | 38.7310μs | 8.9172μs | 112.1426 KOps/s | 113.9098 KOps/s | |
| test_unbind | 0.2714s | 16.5364ms | 60.4726 Ops/s | 68.8456 Ops/s | |
| test_full_like | 4.6651ms | 4.3883ms | 227.8764 Ops/s | 60.0357 Ops/s | |
| test_zeros_like | 16.8138ms | 16.6900ms | 59.9162 Ops/s | 228.5028 Ops/s | |
| test_ones_like | 17.9106ms | 16.7378ms | 59.7449 Ops/s | 227.8668 Ops/s | |
| test_clone | 18.4002ms | 17.7571ms | 56.3154 Ops/s | 153.6706 Ops/s | |
| test_squeeze | 0.1157ms | 13.8996μs | 71.9448 KOps/s | 70.8623 KOps/s | |
| test_unsqueeze | 0.1641ms | 0.1154ms | 8.6619 KOps/s | 8.7616 KOps/s | |
| test_split | 0.3967ms | 0.1877ms | 5.3269 KOps/s | 5.3876 KOps/s | |
| test_permute | 0.3023ms | 0.2140ms | 4.6719 KOps/s | 4.8434 KOps/s | |
| test_stack | 51.8963ms | 51.5581ms | 19.3956 Ops/s | 19.3609 Ops/s | |
| test_cat | 52.3520ms | 51.5477ms | 19.3995 Ops/s | 19.3972 Ops/s | |
| test_sequential_tensordict | 0.6627ms | 0.5663ms | 1.7657 KOps/s | 4.5135 KOps/s | |
| test_sequential_graph_module | 0.1695ms | 0.1180ms | 8.4749 KOps/s | 8.2327 KOps/s | |
| test_nested_tensordict | 4.4564ms | 0.8143ms | 1.2280 KOps/s | 3.5010 KOps/s | |
| test_nested_graph_module | 0.1922ms | 0.1256ms | 7.9629 KOps/s | 7.7894 KOps/s |
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.
Summary
from_pandas/to_pandasfor converting between pandas DataFrames and TensorDict (numeric columns → tensors, string columns → NonTensorData)from_csv/to_csv,from_parquet/to_parquet,from_json/to_jsonfor direct file format supportseparatorparameter enables nested TensorDicts from dotted column names (e.g., column"obs.x"→td["obs", "x"]) — useful for RL datadtypeparameter allows casting all numeric columns to a single dtype (e.g.,torch.float32)from_anynow auto-detects pandas DataFramespandas,parquet,tabularTest plan
pytest test/test_tabular.py -v— 36 tests covering all formats, roundtrips, edge cases, separator nesting, dtype override, empty DataFrames, categorical columns,from_anyintegration, module-level wrapperspytest test/test_tensordict.py -k "test_from_any or test_from_dict or test_from_struct"— verify no regressions in existingfrom_*functionsimport tensordictworks without pandas/pyarrow installed (no hard dependency)🤖 Generated with Claude Code