Yes, Pink is written mostly in Clojure, with two Java classes there.
In terms of efficiency, Pink is slower than SC and Csound.  I found it
a little hard to benchmark, as the systems aren't quite apples to
apples (e.g., SuperCollider use a 32-bit signal processing chain,
while Csound and Pink use 64-bit; I'm not sure what compiler flags
were used for SC vs. Csound; etc.).

I tried to come up with reasonable benchmark and what I did was use a
simple SynthDef in SuperCollider, using a SinOsc with default 8192
table. That's a linear interpolating table oscillator.  I did the same
with Csound (oscili + gen10 sine), and Pink (oscili + gen-sine).  So
in that regards, all three systems were run using interpolating
oscillators and 8192 sized tables.  All three were run with 64-length
internal block size, and 512 external block size (buffer size sent to
the audio driver).

With Csound, I started get buffer underruns at around 2000
oscillators.  With Pink I got underruns at about 340 oscillators.
With SC, I ran into an server limit on node instances once I got to
1030 (I'm guessing there is a 1024 limit).  When I hit that limit, my
cpu was at about 25% (2011 Macbook Pro, Core i7).  Comparing Csound
and Pink, Pink looks to be about 6.5-7x slower.

While I'm still searching for ways to optimize Pink, I'm okay with the
current performance as it is today, weighing it against the
expressiveness of the system, ease of development, and other factors.


On Mon, Mar 9, 2015 at 3:39 PM, aoeuyi qjkxbmwvz <askwaz...@gmail.com> wrote:
> So the whole thing, including the engine is written in clojure/java? If so,
> how is the efficiency compared to supercollider or csound?
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "Clojure" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/clojure/VC-Vk8o09CM/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to