diff --git a/include/neural-graphics-primitives/marching_cubes.h b/include/neural-graphics-primitives/marching_cubes.h
index 2a0ebfeb902d48f3b62db0225e84ef3479c02eb2..6f36b7dbf64f6778bef4f4aaac66b6f884271fda 100644
--- a/include/neural-graphics-primitives/marching_cubes.h
+++ b/include/neural-graphics-primitives/marching_cubes.h
@@ -14,6 +14,8 @@
 
 #pragma once
 
+#include <neural-graphics-primitives/bounding_box.cuh>
+
 #include <tiny-cuda-nn/common.h>
 
 NGP_NAMESPACE_BEGIN
diff --git a/src/marching_cubes.cu b/src/marching_cubes.cu
index c4363ee19d339c8366456c37e7354374a1adbf57..bf68b1e6d29cdfed5d9731ef570970bd836260b0 100644
--- a/src/marching_cubes.cu
+++ b/src/marching_cubes.cu
@@ -12,9 +12,9 @@
  *  @author Alex Evans, NVIDIA
  */
 
-#include <neural-graphics-primitives/common.h>
-#include <neural-graphics-primitives/common_device.cuh>
 #include <neural-graphics-primitives/bounding_box.cuh>
+#include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/random_val.cuh> // helpers to generate random values, directions
 #include <neural-graphics-primitives/thread_pool.h>
 
diff --git a/src/nerf_loader.cu b/src/nerf_loader.cu
index a6d4bcb958ad16181312b487c3d31b346da1be69..eb44b01ad63803e56e264d4038cad1ecbaa5ae4a 100644
--- a/src/nerf_loader.cu
+++ b/src/nerf_loader.cu
@@ -13,8 +13,8 @@
  *  @brief  Loads a NeRF data set from NeRF's original format
  */
 
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/nerf_loader.h>
 #include <neural-graphics-primitives/thread_pool.h>
 #include <neural-graphics-primitives/tinyexr_wrapper.h>
diff --git a/src/render_buffer.cu b/src/render_buffer.cu
index ae619fca92f3dd4bc4045d5e1c91e20d06a49e02..c107ed1de4d7d3f4825b254bd2d3379c56f1cb20 100644
--- a/src/render_buffer.cu
+++ b/src/render_buffer.cu
@@ -12,9 +12,9 @@
  *  @author Thomas Müller & Alex Evans, NVIDIA
  */
 
+#include <neural-graphics-primitives/common_device.cuh>
 #include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/render_buffer.h>
-#include <neural-graphics-primitives/common_device.cuh>
 #include <neural-graphics-primitives/tinyexr_wrapper.h>
 
 #include <tiny-cuda-nn/gpu_memory.h>
diff --git a/src/testbed.cu b/src/testbed.cu
index 271a166fe02ca2c0157361290f988f1bfa07b140..7b0e2ee7a899832a53f1c72ecc5f8d9fe4ecef89 100644
--- a/src/testbed.cu
+++ b/src/testbed.cu
@@ -12,8 +12,8 @@
  *  @author Thomas Müller & Alex Evans, NVIDIA
  */
 
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/json_binding.h>
 #include <neural-graphics-primitives/marching_cubes.h>
 #include <neural-graphics-primitives/nerf_loader.h>
@@ -28,8 +28,8 @@
 
 #include <tiny-cuda-nn/encodings/grid.h>
 #include <tiny-cuda-nn/loss.h>
-#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/network_with_input_encoding.h>
+#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/optimizer.h>
 #include <tiny-cuda-nn/trainer.h>
 
diff --git a/src/testbed_image.cu b/src/testbed_image.cu
index e749b9879bb075c258d582ad5f0792dee3e3fef3..561cda509e558ead42aa6ea0f0415147c8584209 100644
--- a/src/testbed_image.cu
+++ b/src/testbed_image.cu
@@ -12,15 +12,15 @@
  *  @author Thomas Müller & Alex Evans, NVIDIA
  */
 
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
-#include <neural-graphics-primitives/render_buffer.h>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/random_val.cuh>
+#include <neural-graphics-primitives/render_buffer.h>
 #include <neural-graphics-primitives/testbed.h>
 
 #include <tiny-cuda-nn/gpu_matrix.h>
-#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/network_with_input_encoding.h>
+#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/trainer.h>
 
 #include <fstream>
diff --git a/src/testbed_nerf.cu b/src/testbed_nerf.cu
index 222bfd8c6fdf53bcdbc9a482fe34c7fca5b1f54e..d63bfcca104e4b01cc41c1afd131f45ac1ce98f5 100644
--- a/src/testbed_nerf.cu
+++ b/src/testbed_nerf.cu
@@ -13,20 +13,21 @@
  */
 
 #include <neural-graphics-primitives/adam_optimizer.h>
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/envmap.cuh>
+#include <neural-graphics-primitives/marching_cubes.h>
 #include <neural-graphics-primitives/nerf_loader.h>
 #include <neural-graphics-primitives/nerf_network.h>
-#include <neural-graphics-primitives/marching_cubes.h>
 #include <neural-graphics-primitives/render_buffer.h>
 #include <neural-graphics-primitives/testbed.h>
 #include <neural-graphics-primitives/trainable_buffer.cuh>
+#include <neural-graphics-primitives/triangle_octree.cuh>
 
 #include <tiny-cuda-nn/encodings/grid.h>
 #include <tiny-cuda-nn/loss.h>
-#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/network_with_input_encoding.h>
+#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/optimizer.h>
 #include <tiny-cuda-nn/trainer.h>
 
diff --git a/src/testbed_sdf.cu b/src/testbed_sdf.cu
index 1b68f9a8da32171eb9bf4d279805784911403845..fc20e8f730e3330a7745c25d23c9fda261fbffd0 100644
--- a/src/testbed_sdf.cu
+++ b/src/testbed_sdf.cu
@@ -12,8 +12,8 @@
  *  @author Thomas Müller & Alex Evans, NVIDIA
  */
 
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/discrete_distribution.h>
 #include <neural-graphics-primitives/envmap.cuh>
 #include <neural-graphics-primitives/random_val.cuh> // helpers to generate random values, directions
diff --git a/src/testbed_volume.cu b/src/testbed_volume.cu
index a7d32053c7b2e3bebbfce0a718c41e96551349d7..cea6c9e50ef5cf23b8ed8d6c958bb6e9c5764ea5 100644
--- a/src/testbed_volume.cu
+++ b/src/testbed_volume.cu
@@ -12,8 +12,8 @@
  *  @author Thomas Müller & Alex Evans, NVIDIA
  */
 
-#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/common_device.cuh>
+#include <neural-graphics-primitives/common.h>
 #include <neural-graphics-primitives/random_val.cuh> // helpers to generate random values, directions
 #include <neural-graphics-primitives/render_buffer.h>
 #include <neural-graphics-primitives/testbed.h>
@@ -21,8 +21,8 @@
 
 #include <tiny-cuda-nn/common_device.h>
 #include <tiny-cuda-nn/gpu_matrix.h>
-#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/network_with_input_encoding.h>
+#include <tiny-cuda-nn/network.h>
 #include <tiny-cuda-nn/trainer.h>
 
 #include <nanovdb/NanoVDB.h>