Dear all,

I've just pushed two libraries which I've been working on since summer
now and which have already proven themselves in production too
(regardless of their baby age):

===============================================
http://hg.postspectacular.com/simplecl
===============================================

simplecl is striving to be both a thin wrapper around Jogamp's OpenCL
bindings, but also provides a more highlevel API to declaratively
define complex processing pipelines and efficiently pass data back &
forth between Clojure & OpenCL. The simplecl.core ns provides several
solutions to work with OpenCL buffers in a way which should still be
"idiomatic" (here we go again) to the standard Clojure programmer...

Currently there's only a single demo/example available, but it's quite
well commented and is a 2D Verlet physics cloth simulation consisting
of 40k particles & 80k springs. On my MacBook Pro i7 a single
simulation step (41 iterations) only takes 280-350ms.

Video captures of:

1) a few physics sim variations:
http://media.postspectacular.com/2012/simplecl/20121208-gridx-hd720.mp4

2) a 3d strange attractor pipeline (more infos on website)
http://media.postspectacular.com/2012/simplecl/20121205-attractor-grad-hd720.mp4

Over the holidays I will add some more examples and start publishing
more from my growing collection of composable CL kernels...

===============================================
http://hg.postspectacular.com/structgen
===============================================

A Clojure library for seamless working with native C structs &
structured byte buffers.

Structgen has the following features so far:

* parsing of typedefs from C source files
* dependency graph for nested structs
* C source code generation for registered types (incl. automatic dependencies)
* representation of C structs as standard Clojure data structures
(maps & vectors)
* customizable memory alignment logic for struct fields (defaults to
OpenCL alignment, inserts filler bytes where necessary)
* extensible type registry, pre-configured with common C & OpenCL primitives

Currently not supported: No self-recursive structs, no pointer struct fields

Structgen is making use of Zach's Gloss library to encode/decode
structs into/from byte buffers.

Since these are my first serious releases in Clojure land I'd very
much love some feedback & am fully open for advice for any
improvements!

Best, K.
--
Karsten Schmidt

http://postspectacular.com | http://toxiclibs.org | http://toxi.co.uk

-- 
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

Reply via email to