Great.

  > (define (some-huge-comp) (get-internal-real-time))
  some-huge-comp
  > (define (test)
    (list
     #.(some-huge-comp)
     (some-huge-comp)))
  test
  > (test)
  (628.159582 631.110096)
  > (test)
  (628.159582 632.668255)
  > (test)
  (628.159582 634.408648)

Seems the first call on (some-huge-comp) is 'fixed' at read-time.  So
far so good.

However, if i use this when defining the instrument on the calls down in
the run-loop, ie:

        (outa i 
              (+ (* +0.6 (tap delay_48_54 #.(smpls->samples 266)))
                 (* +0.6 (tap delay_48_54 #.(smpls->samples 2974)))
                 ...
                 
supposing these calls will be fixed at read-time (ie. when evaluating
the (define*...)), calling the instrument is still only around half the
speed of the version with 'pre-calculated' data (which btw. is really
fast).  Is this because of extra overhead vs. memory lookup?

-anders

_______________________________________________
Cmdist mailing list
Cmdist@ccrma.stanford.edu
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to