diff --git a/juno_samples/cava/src/cava.jn b/juno_samples/cava/src/cava.jn
index 0c74646c230548db4db4283cf1bca22314b651e9..dbe799f9f23e63ed40157c9d57f5c4c8d9b4eb23 100644
--- a/juno_samples/cava/src/cava.jn
+++ b/juno_samples/cava/src/cava.jn
@@ -152,7 +152,7 @@ fn gamut<row : usize, col : usize, num_ctrl_pts : usize>(
         let v  = v1 * v1 + v2 * v2 + v3 * v3;
         l2_dist[cp] = sqrt!::<f32>(v);
       }
-      
+     
       @channel_loop for chan = 0 to CHAN {
         let chan_val : f32 = 0.0;
         for cp = 0 to num_ctrl_pts {
diff --git a/juno_samples/cava/src/gpu.sch b/juno_samples/cava/src/gpu.sch
index 460e4338d6a1390315ec7ea5445c431bb15a2814..619adcd3810b2b8e9f47ac999dfa2542e1b8f965 100644
--- a/juno_samples/cava/src/gpu.sch
+++ b/juno_samples/cava/src/gpu.sch
@@ -117,6 +117,9 @@ fixpoint {
 simpl!(fuse4);
 array-slf(fuse4);
 simpl!(fuse4);
+fork-tile[2, 0, false, true](fuse4@channel_loop);
+fork-split(fuse4@channel_loop);
+clean-monoid-reduces(fuse4);
 
 no-memset(fuse5@res1);
 no-memset(fuse5@res2);