anchor.diff:                        :grid-dim grid-dim
                         :block-dim block-dim)))
   
  +(declaim (inline body-body-interaction-cpu))
   (defun body-body-interaction-cpu (x1 y1 z1 x2 y2 z2)
     (declare (optimize (speed 3) (safety 0)))
     (declare (type single-float x1 y1 z1 x2 y2 z2))
  
positive.code:   ;; for fast write
    `(%set-vec3-array ,ary ,i ,x ,y ,z))
  
  (defun %set-vec3-array (ary i x y z)
    (declare (optimize (speed 3) (safety 0)))
    (declare (type vec3-array ary)
  
negative.code: ;;; main
  ;;;
  
  #|
  (require :sb-sprof)
  (defun main/profile ()
    (sb-sprof:with-profiling (:max-samples 1000
                              :report      :graph
                              :loop        nil)
      (setf *gpu* nil)
      (main)))
  |#
  
  (defun main ()
    (setf glut:*run-main-loop-after-display* nil)
    (let ((window (make-instance 'nbody-window)))
  