diff --git a/examples/test_bh.c b/examples/test_bh.c
index 63b592c18cebf23d080258cd43530d72d6947904..53c574c44cab4f6cfe5f53f77377f89abde42d56 100644
--- a/examples/test_bh.c
+++ b/examples/test_bh.c
@@ -42,13 +42,11 @@
 #define const_G 1    // 6.6738e-8
 #define dist_min 0.5 /* Used for legacy walk only */
 #define dist_cutoff_ratio 1.5
-#define iact_pair_direct iact_pair_direct_sorted
 
 #define ICHECK -1
 #define NO_SANITY_CHECKS
 #define NO_COM_AS_TASK
-#define COUNTERS
-#define MANY_MULTIPOLES
+#define NO_COUNTERS
 
 /** Data structure for the particles. */
 struct part {
@@ -62,12 +60,6 @@ struct part {
   int id;
 };  // __attribute__((aligned(64)));
 
-/** Data structure for the sorted particle positions. */
-struct index {
-  int ind;
-  float d;
-};
-
 struct multipole {
   double com[3];
   float mass;
@@ -106,7 +98,6 @@ enum task_type {
   task_type_self = 0,
   task_type_pair,
   task_type_self_pc,
-  task_type_pair_direct,
   task_type_com,
   task_type_count
 };
@@ -620,18 +611,6 @@ static inline void iact_self_pc(struct cell *c, struct cell *leaf) {
   }
 }
 
-/**
- * @brief Starts the recursive tree walk of a given leaf
- */
-void init_multipole_walk(struct cell *root, struct cell *leaf) {
-
-  /* Pre-fetch the leaf's particles */
-  __builtin_prefetch(leaf->parts, 1, 3);
-
-  /* Start the recursion */
-  iact_self_pc(root, leaf);
-}
-
 /**
  * @brief Compute the interactions between all particles in a cell
  *        and all particles in the other cell (N^2 algorithm)
@@ -1215,11 +1194,8 @@ void test_bh(int N, int nr_threads, int runs, char *fileName) {
       case task_type_pair:
         iact_pair(d[0], d[1]);
         break;
-      case task_type_pair_direct:
-        iact_pair_direct(d[0], d[1]);
-        break;
       case task_type_self_pc:
-        init_multipole_walk(d[0], d[1]);
+        iact_self_pc(d[0], d[1]);
         break;
       case task_type_com:
         comp_com(d[0]);