;; Heavy Interpreted Pipeline Test ;; ;; Same effects as test_heavy_fused.sexp but using separate primitive calls (stream "heavy_interpreted_test" :fps 30 :width 1920 :height 1080 :seed 42 ;; Load primitives (require-primitives "streaming_gpu") (require-primitives "geometry_gpu") (require-primitives "color_ops") (require-primitives "image") (require-primitives "math") ;; Frame pipeline - INTERPRETED (separate calls) (frame (let [;; Create base image r (+ 0.5 (* 0.5 (math:sin (* t 1)))) g (+ 0.5 (* 0.5 (math:sin (* t 1.3)))) b (+ 0.5 (* 0.5 (math:sin (* t 1.7)))) color [(* r 255) (* g 255) (* b 255)] base (image:make-image 1920 1080 color) ;; Dynamic parameters angle (* t 30) zoom (+ 1.0 (* 0.1 (math:sin (* t 0.5)))) phase (* t 2) ;; Apply 5 effects one by one (INTERPRETED - many kernel launches) step1 (geometry_gpu:rotate base angle) step2 (streaming_gpu:gpu-zoom step1 zoom) step3 (color_ops:hue-shift step2 30) step4 (geometry_gpu:ripple step3 15 :frequency 10 :decay 2 :time phase) step5 (color_ops:brightness step4 1.0)] step5)))