Skip to content

[Refactor] Add structured inference server config objects#3893

Merged
vmoens merged 10 commits into
gh/vmoens/288/basefrom
gh/vmoens/288/head
Jul 6, 2026
Merged

[Refactor] Add structured inference server config objects#3893
vmoens merged 10 commits into
gh/vmoens/288/basefrom
gh/vmoens/288/head

Conversation

[ghstack-poisoned]
@pytorch-bot

pytorch-bot Bot commented Jun 21, 2026

Copy link
Copy Markdown

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/rl/3893

Note: Links to docs will display an error until the docs builds have been completed.

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@github-actions

github-actions Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results: PR 049b9e45 vs main 865fcb51

Benchmark run: https://github.com/pytorch/rl/actions/runs/28797047731

Higher ops/sec is better. Tables are sorted by largest absolute change.

CPU

Compared 216 benchmarks. Regressions over 5%: 7. Improvements over 5%: 20.

Benchmark main ops PR ops Change
benchmarks/test_objectives_benchmarks.py::test_values[td0_return_estimate-False-False] 8,026 5,383 -32.94%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-10000] 2,760 3,634 +31.64%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-10000] 1,735 2,242 +29.26%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-10000] 2,967 3,689 +24.33%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyMemmapStorage-RandomSampler-10000] 2,802 3,443 +22.89%
benchmarks/test_objectives_benchmarks.py::test_dqn_speed[True-backward] 831.29 995.46 +19.75%
benchmarks/test_envs_benchmark.py::test_cat_frames_functional[4-same] 29.69 24.80 -16.48%
benchmarks/test_objectives_benchmarks.py::test_ddpg_speed[True-backward] 360.69 417.67 +15.80%
benchmarks/test_objectives_benchmarks.py::test_redq_speed[True-None] 201.00 227.83 +13.35%
benchmarks/test_envs_benchmark.py::test_cat_frames_functional[16-same] 20.81 23.59 +13.35%
benchmarks/test_collectors_benchmark.py::test_single_with_rb 7.4659 6.5226 -12.64%
benchmarks/test_objectives_benchmarks.py::test_gae_speed[vec_generalized_advantage_estimate-True-32-512] 33.09 29.20 -11.75%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyMemmapStorage-sampler6-10000] 729.67 812.15 +11.30%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyMemmapStorage-SamplerWithoutReplacement-400] 550.72 493.13 -10.46%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyTensorStorage-sampler7-10000] 775.35 851.95 +9.88%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyMemmapStorage-RandomSampler-10000] 2,655 2,890 +8.86%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[100-img_shape1-atari] 636.32 689.01 +8.28%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-480-640-64] 7.0751 6.5317 -7.68%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-10000] 2,074 2,230 +7.51%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[True-backward] 124.84 133.95 +7.30%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyMemmapStorage-SamplerWithoutReplacement-10000] 2,962 3,161 +6.73%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-ListStorage-RandomSampler-400] 36.34 38.71 +6.52%
benchmarks/test_collectors_benchmark.py::test_sync_preempt 15.79 16.80 +6.37%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[reduce-overhead-None] 78.85 83.86 +6.35%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[reduce-overhead-None] 112.86 119.09 +5.53%
benchmarks/test_envs_benchmark.py::test_simple 1.8194 1.7278 -5.04%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[reduce-overhead-None] 261.68 274.80 +5.01%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-10000] 2,120 2,018 -4.81%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[pickle] 12,413 11,828 -4.71%
benchmarks/test_objectives_benchmarks.py::test_reinforce_speed[reduce-overhead-None] 326.17 340.93 +4.53%
benchmarks/test_objectives_benchmarks.py::test_ppo_speed[True-None] 253.36 264.12 +4.25%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_lazystack[100-img_shape1-atari] 688.93 717.50 +4.15%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyTensorStorage-SamplerWithoutReplacement-10000] 2,960 3,082 +4.10%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-False-True-False] 38,136 39,629 +3.91%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-True-False] 27,464 28,512 +3.81%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-True-True] 18,679 17,974 -3.77%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_lazystack[50-img_shape0-small] 4,305 4,464 +3.69%
benchmarks/test_objectives_benchmarks.py::test_values[td_lambda_return_estimate-True-False] 25.30 26.19 +3.50%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_lazystack[200-img_shape3-large_batch] 326.21 337.52 +3.47%
benchmarks/test_non_tensor_env_benchmark.py::test_non_tensor_env_rollout_speed[1000-parallel-no-buffers-False] 0.2268 0.2346 +3.44%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-256-256-1] 500.42 517.10 +3.33%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-True-True-True] 23,259 24,030 +3.32%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[200-img_shape3-large_batch] 306.54 316.52 +3.26%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[True-backward] 59.41 61.22 +3.06%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-False-True] 34,941 33,885 -3.02%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-10000] 2,383 2,313 -2.92%
benchmarks/test_objectives_benchmarks.py::test_values[td1_return_estimate-False-False] 37.78 38.88 +2.91%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-400] 944.60 917.47 -2.87%
benchmarks/test_objectives_benchmarks.py::test_redq_speed[False-backward] 53.77 55.29 +2.83%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-False-False] 44,116 45,320 +2.73%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-224-224-64] 12.16 12.48 +2.63%
benchmarks/test_rnn_reset_backends_benchmark.py::test_rnn_rollout_with_intermediate_resets[b256-t128-i32-h512-cudnn-True-0-gru] 1.4820 1.4436 -2.59%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-False-True] 28,147 28,856 +2.52%
benchmarks/test_non_tensor_env_benchmark.py::test_non_tensor_env_rollout_speed[1000-parallel-buffers-True] 0.5229 0.5358 +2.48%
benchmarks/test_objectives_benchmarks.py::test_values[generalized_advantage_estimate-True-True] 100.01 102.48 +2.46%
benchmarks/test_non_tensor_env_benchmark.py::test_non_tensor_env_rollout_speed[1000-parallel-buffers-False] 0.6024 0.5876 -2.44%
benchmarks/test_envs_benchmark.py::test_serial 0.5797 0.5937 +2.41%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[False-None] 90.67 88.50 -2.40%
benchmarks/test_objectives_benchmarks.py::test_sac_speed[True-None] 453.84 464.69 +2.39%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[numpy] 375,462 366,550 -2.37%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_contiguous[50-img_shape0-small] 7,165 6,998 -2.33%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-10000-10000-100-False] 54.11 52.85 -2.32%
benchmarks/test_envs_benchmark.py::test_cat_frames_functional[4-constant] 4,297 4,198 -2.31%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[True-None] 275.74 269.48 -2.27%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-True-False] 35,052 34,259 -2.26%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sample_mixed_devices[1000000-memmap_cpu_storage_cpu... 83.47 81.61 -2.23%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-ListStorage-RandomSampler-4000] 165.10 168.75 +2.21%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-True-True] 18,322 18,722 +2.19%
benchmarks/test_rnn_reset_backends_benchmark.py::test_rnn_rollout_with_intermediate_resets[b256-t128-i32-h512-scan-True-0-gru] 4.2301 4.3224 +2.18%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_contiguous[200-img_shape3-large_batch] 754.12 770.47 +2.17%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-10000-10000-100-True] 25.53 24.97 -2.17%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[50-img_shape0-small] 3,485 3,559 +2.13%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-False-True-True] 21,819 22,281 +2.12%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-224-224-1] 269.84 275.52 +2.10%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_stack_then_write[100-img_shape2-large_img] 174.48 170.81 -2.10%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[True-None] 117.25 119.71 +2.10%
benchmarks/test_objectives_benchmarks.py::test_ppo_speed[False-None] 161.42 164.81 +2.10%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_contiguous[100-img_shape1-atari] 4,817 4,917 +2.06%
benchmarks/test_objectives_benchmarks.py::test_td3_speed[True-backward] 280.82 286.52 +2.03%
benchmarks/test_objectives_benchmarks.py::test_redq_speed[reduce-overhead-None] 222.29 226.74 +2.00%
benchmarks/test_objectives_benchmarks.py::test_gae_speed[vec_generalized_advantage_estimate-True-1-512] 659.60 672.54 +1.96%
benchmarks/test_objectives_benchmarks.py::test_dqn_speed[True-None] 1,713 1,746 +1.94%
benchmarks/test_objectives_benchmarks.py::test_sac_speed[reduce-overhead-None] 457.65 466.24 +1.88%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[True-None] 281.40 286.40 +1.78%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-True-True] 20,874 20,505 -1.77%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[torch.save] 7,175 7,049 -1.75%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-256-256-1] 195.76 192.35 -1.74%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[reduce-overhead-None] 285.44 290.32 +1.71%
benchmarks/test_objectives_benchmarks.py::test_gae_speed[vec_generalized_advantage_estimate-False-1-512] 2,317 2,356 +1.70%
benchmarks/test_objectives_benchmarks.py::test_ppo_speed[reduce-overhead-None] 263.17 267.61 +1.69%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[untyped_storage] 8.5177 8.6607 +1.68%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyTensorStorage-SamplerWithoutReplacement-400] 1,115 1,097 -1.66%
benchmarks/test_objectives_benchmarks.py::test_ddpg_speed[False-None] 347.61 353.38 +1.66%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-ListStorage-SamplerWithoutReplacement-4000] 166.12 168.86 +1.65%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[False-backward] 63.85 62.79 -1.65%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[False-backward] 28.51 28.05 -1.63%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_stack_then_write[200-img_shape3-large_batch] 140.37 142.65 +1.62%
benchmarks/test_rnn_reset_backends_benchmark.py::test_rnn_rollout_with_intermediate_resets[b256-t128-i32-h512-cudnn-False-0-lstm] 0.8771 0.8629 -1.62%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-True-False] 31,628 32,137 +1.61%
benchmarks/test_storage_write_benchmark.py::TestCollectorIntegrationBenchmark::test_collector_without_rb[100-img_shape0-atari] 29.78 30.25 +1.58%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-True-True-False] 34,404 34,935 +1.54%
benchmarks/test_storage_write_benchmark.py::TestCollectorIntegrationBenchmark::test_collector_with_rb[100-img_shape0-atari] 20.30 20.61 +1.51%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-False-False] 57,624 56,758 -1.50%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-True-True] 19,591 19,881 +1.48%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sampler_sample_scale[1000000-cpu] 98.36 96.91 -1.47%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-400] 445.12 451.47 +1.43%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-400] 1,061 1,076 +1.42%
benchmarks/test_objectives_benchmarks.py::test_values[vec_td1_return_estimate-False-False] 54.62 55.39 +1.41%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-ListStorage-SamplerWithoutReplacement-400] 193.40 196.07 +1.38%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-ListStorage-RandomSampler-4000] 160.19 162.39 +1.38%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[True-None] 83.92 85.04 +1.34%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-100000-10000-100-False] 53.80 53.08 -1.34%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-256-256-64] 10.61 10.75 +1.34%
benchmarks/test_envs_benchmark.py::test_parallel 0.9824 0.9693 -1.33%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-False-False] 49,442 50,058 +1.25%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[100-img_shape2-large_img] 400.24 395.42 -1.20%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[False-None] 38.56 39.01 +1.15%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-ListStorage-SamplerWithoutReplacement-4000] 167.16 169.06 +1.14%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[False-None] 179.17 181.10 +1.08%
benchmarks/test_objectives_benchmarks.py::test_values[vec_td_lambda_return_estimate-True-False] 55.54 54.95 -1.06%
... ... ... Showing 120 of 216 comparisons, sorted by absolute change.

GPU

Compared 226 benchmarks. Regressions over 5%: 17. Improvements over 5%: 21.

Benchmark main ops PR ops Change
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-ListStorage-RandomSampler-400] 44.48 185.51 +317.05%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[reduce-overhead-None] 59.53 88.44 +48.56%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[reduce-overhead-None] 76.23 102.62 +34.62%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[reduce-overhead-None] 83.98 105.86 +26.06%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyTensorStorage-SamplerWithoutReplacement-400] 828.34 1,005 +21.27%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyMemmapStorage-RandomSampler-10000] 2,828 3,305 +16.86%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyTensorStorage-sampler7-10000] 849.19 708.15 -16.61%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyMemmapStorage-sampler6-10000] 797.25 692.52 -13.14%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyTensorStorage-SamplerWithoutReplacement-10000] 3,049 2,657 -12.85%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-10000] 2,002 2,245 +12.13%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-10000] 2,158 1,910 -11.47%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-10000] 2,082 1,860 -10.67%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-10000] 3,306 2,959 -10.51%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyMemmapStorage-SamplerWithoutReplacement-10000] 2,988 2,691 -9.94%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyMemmapStorage-RandomSampler-400] 520.27 471.58 -9.36%
benchmarks/test_objectives_benchmarks.py::test_values[vec_generalized_advantage_estimate-True-True] 487.79 444.14 -8.95%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-10000] 3,205 3,487 +8.78%
benchmarks/test_objectives_benchmarks.py::test_td3_speed[True-backward] 365.25 395.06 +8.16%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyMemmapStorage-RandomSampler-10000] 3,029 2,792 -7.82%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictPrioritizedReplayBuffer-LazyTensorStorage-None-400] 793.08 851.88 +7.41%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-LazyMemmapStorage-SamplerWithoutReplacement-10000] 2,787 2,583 -7.31%
benchmarks/test_objectives_benchmarks.py::test_ddpg_speed[True-backward] 449.35 480.53 +6.94%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-10000] 2,020 2,158 +6.84%
benchmarks/test_objectives_benchmarks.py::test_reinforce_speed[True-backward] 347.44 370.30 +6.58%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-False-True] 30,645 28,875 -5.77%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-LazyTensorStorage-SamplerWithoutReplacement-10000] 3,074 3,251 +5.76%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-True-True] 21,028 19,823 -5.73%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[safetensors] 22,195 23,466 +5.72%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-256-256-16] 40.89 43.22 +5.71%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-False-True] 29,171 27,517 -5.67%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-True-False-True] 38,681 36,591 -5.40%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-False-True] 35,570 33,664 -5.36%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-False-False-True] 30,527 28,902 -5.32%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[True-backward] 344.72 363.00 +5.30%
benchmarks/test_objectives_benchmarks.py::test_redq_deprec_speed[True-backward] 264.14 277.82 +5.18%
benchmarks/test_envs_benchmark.py::test_cat_frames_functional[4-constant] 4,660 4,896 +5.06%
benchmarks/test_objectives_benchmarks.py::test_sac_speed[True-backward] 319.48 335.62 +5.05%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_lazystack[50-img_shape0-small] 4,188 4,399 +5.04%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_stack_then_write[100-img_shape2-large_img] 172.66 164.08 -4.96%
benchmarks/test_objectives_benchmarks.py::test_gae_speed[generalized_advantage_estimate-False-1-512] 47.52 49.79 +4.77%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-True-False-False] 64,618 61,538 -4.77%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_stack_then_write[200-img_shape3-large_batch] 132.25 138.29 +4.57%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictPrioritizedReplayBuffer-LazyMemmapStorage-None-400] 430.98 412.18 -4.36%
benchmarks/test_envs_benchmark.py::test_cat_frames_functional[16-constant] 4,599 4,792 +4.19%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-False-False-False] 44,800 42,937 -4.16%
benchmarks/test_objectives_benchmarks.py::test_sac_speed[True-None] 627.25 601.32 -4.13%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-False-False] 49,505 47,487 -4.08%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-True-False] 29,541 28,340 -4.07%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sample_mixed_devices[1000000-cuda_storage_cpu_sampler] 88.04 84.57 -3.95%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-False-False] 57,706 55,466 -3.88%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-224-224-1] 279.23 268.46 -3.86%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sampler_sample_scale[1000000-cuda] 2,309 2,220 -3.84%
benchmarks/test_objectives_benchmarks.py::test_cql_speed[True-backward] 225.00 233.50 +3.78%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-224-224-16] 46.84 48.60 +3.75%
benchmarks/test_envs_benchmark.py::test_serial 0.4136 0.4290 +3.74%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-True-False-True] 42,935 41,345 -3.70%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_contiguous[200-img_shape3-large_batch] 729.92 703.47 -3.62%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sample_mixed_devices[1000000-cuda_storage_cuda_samp... 1,527 1,472 -3.59%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-480-640-1] 79.75 76.93 -3.54%
benchmarks/test_objectives_benchmarks.py::test_dqn_speed[True-backward] 893.98 863.36 -3.42%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_lazystack[100-img_shape2-large_img] 394.39 407.87 +3.42%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-False-True-True] 19,655 18,998 -3.34%
benchmarks/test_envs_benchmark.py::test_simple 1.2455 1.2041 -3.32%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-False-True-False] 31,911 30,865 -3.28%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-480-640-1] 470.56 455.63 -3.17%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-False-False-False] 50,430 48,839 -3.16%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-False-False] 55,184 53,451 -3.14%
benchmarks/test_objectives_benchmarks.py::test_reinforce_speed[True-None] 767.03 743.12 -3.12%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-224-224-1] 625.01 605.71 -3.09%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-False-True-True] 22,155 21,480 -3.05%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[True-backward] 240.24 247.54 +3.04%
benchmarks/test_rnn_reset_backends_benchmark.py::test_rnn_rollout_with_intermediate_resets[b256-t128-i32-h512-triton-False-0-gru] 20.69 20.06 -3.01%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-False-False-False] 63,637 61,730 -3.00%
benchmarks/test_rnn_reset_backends_benchmark.py::test_rnn_rollout_with_intermediate_resets[b256-t128-i32-h512-scan-False-0-gru] 23.01 22.33 -2.96%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[False-backward] 150.07 154.42 +2.90%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[50-img_shape0-small] 3,463 3,365 -2.82%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-480-640-16] 4.9388 4.8014 -2.78%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-True-False-False] 77,195 75,078 -2.74%
benchmarks/test_objectives_benchmarks.py::test_ppo_speed[False-backward] 131.14 134.73 +2.73%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-True-False] 34,579 33,644 -2.70%
benchmarks/test_storage_write_benchmark.py::TestCollectorIntegrationBenchmark::test_collector_with_rb_cuda[200-img_shape1-large_batch] 6.7563 6.5762 -2.67%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-True-True-False] 34,895 33,992 -2.59%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-480-640-16] 35.13 36.04 +2.59%
benchmarks/test_objectives_benchmarks.py::test_ddpg_speed[False-backward] 238.31 244.42 +2.56%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-False-True-True] 19,638 19,135 -2.56%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyMemmapStorage-SamplerWithoutReplacement-400] 510.06 523.01 +2.54%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-256-256-64] 10.43 10.69 +2.51%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-480-640-4] 19.74 19.25 -2.50%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-256-256-4] 156.39 160.28 +2.49%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-224-224-64] 12.07 12.37 +2.47%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-True-True-True] 23,633 23,069 -2.39%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_collector_lazystack_then_write[100-img_shape1-atari] 625.82 611.06 -2.36%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-False-True-True-True] 20,968 20,477 -2.34%
benchmarks/test_replaybuffer_benchmark.py::TestPrioritizedReplayBufferBenchmark::test_sample_mixed_devices[1000000-memmap_cpu_storage_cud... 987.72 965.02 -2.30%
benchmarks/test_non_tensor_env_benchmark.py::test_non_tensor_env_rollout_speed[1000-parallel-buffers-True] 0.5051 0.5167 +2.29%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-True-True-False] 42,195 43,127 +2.21%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-100000-10000-100-False] 51.88 50.75 -2.18%
benchmarks/test_objectives_benchmarks.py::test_a2c_speed[reduce-overhead-None] 861.06 842.35 -2.17%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-False-True-True-True] 18,780 18,378 -2.14%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-480-640-64] 1.2282 1.2019 -2.14%
benchmarks/test_collectors_benchmark.py::test_async 10.85 11.07 +2.04%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-224-224-4] 70.31 68.90 -2.01%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[False-True-True-False-True] 31,692 31,061 -1.99%
benchmarks/test_envs_benchmark.py::test_parallel 0.5345 0.5449 +1.95%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-10000-10000-100-False] 52.35 51.36 -1.89%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-LazyTensorStorage-RandomSampler-400] 962.48 980.33 +1.86%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictReplayBuffer-ListStorage-SamplerWithoutReplacement-400] 190.54 187.04 -1.83%
benchmarks/test_replaybuffer_benchmark.py::test_rb_extend_sample[ReplayBuffer-LazyTensorStorage-RandomSampler-10000-10000-100-True] 23.44 23.01 -1.83%
benchmarks/test_storage_write_benchmark.py::TestCollectorIntegrationBenchmark::test_collector_with_rb_cuda[100-img_shape0-atari] 13.42 13.18 -1.82%
benchmarks/test_compressed_storage_benchmark.py::TestCompressedStorageBenchmark::test_tensor_to_bytestream_speed[torch.save] 6,930 7,055 +1.80%
benchmarks/test_envs_benchmark.py::test_step_mdp_speed[True-True-False-True-False] 38,221 37,533 -1.80%
benchmarks/test_storage_write_benchmark.py::TestStorageWriteBenchmark::test_storage_write_contiguous[50-img_shape0-small] 5,875 5,980 +1.79%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-480-640-64] 6.9892 7.1126 +1.77%
benchmarks/test_replaybuffer_benchmark.py::test_rb_sample[TensorDictReplayBuffer-ListStorage-RandomSampler-4000] 159.90 162.68 +1.74%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[pil-224-224-64] 4.4536 4.3784 -1.69%
benchmarks/test_replaybuffer_benchmark.py::test_rb_iterate[TensorDictReplayBuffer-ListStorage-SamplerWithoutReplacement-4000] 166.58 169.31 +1.64%
benchmarks/test_replaybuffer_benchmark.py::test_rb_populate[TensorDictPrioritizedReplayBuffer-ListStorage-None-400] 184.17 181.37 -1.52%
benchmarks/test_objectives_benchmarks.py::test_iql_speed[False-backward] 68.74 69.78 +1.50%
benchmarks/test_vla_preprocessing_benchmark.py::test_openvla_preprocessing_throughput[torchvision-480-640-4] 142.07 144.16 +1.47%
benchmarks/test_objectives_benchmarks.py::test_td3_speed[False-None] 114.35 112.70 -1.44%
... ... ... Showing 120 of 226 comparisons, sorted by absolute change.

Comment thread docs/source/reference/modules_inference_server.rst
vmoens added 3 commits June 22, 2026 09:18
[ghstack-poisoned]
[ghstack-poisoned]
[ghstack-poisoned]
Comment thread torchrl/modules/inference_server/_server.py Outdated
Comment thread torchrl/modules/inference_server/_server.py Outdated
Comment thread torchrl/modules/inference_server/_server.py
Comment thread test/test_inference_server.py
[ghstack-poisoned]
[ghstack-poisoned]
Comment thread torchrl/modules/inference_server/_config.py
Comment thread torchrl/modules/inference_server/_config.py
Comment thread torchrl/modules/inference_server/_config.py
Comment thread torchrl/modules/inference_server/_config.py
[ghstack-poisoned]
[ghstack-poisoned]
vmoens added 2 commits July 6, 2026 13:37
[ghstack-poisoned]
[ghstack-poisoned]
vmoens added a commit that referenced this pull request Jul 6, 2026
@vmoens vmoens merged commit 049b9e4 into gh/vmoens/288/base Jul 6, 2026
103 of 105 checks passed
@vmoens vmoens deleted the gh/vmoens/288/head branch July 6, 2026 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Benchmarks rl/benchmark changes CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Collectors Documentation Improvements or additions to documentation Integrations/torch_geometric Integrations Modules Refactoring Refactoring of an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants