N-body excluded from examples - and gives stacktrace when run... ?

24 views
Skip to first unread message

Julian Gamble

unread,
Feb 3, 2012, 7:05:57 AM2/3/12
to penumb...@googlegroups.com
Just out of curiosity - it seems the n-body problem has been excluded from the examples. Is there a reason for this? 

Also after cloning the repository, I'm able to run through the examples collectively and individually, but when running the n-body example I get the following stack trace:

java.lang.IllegalArgumentException: Don't know how to create ISeq from: java.nio.DirectFloatBufferU
at clojure.lang.RT.seqFrom(RT.java:471)
at clojure.lang.RT.seq(RT.java:452)
at clojure.core$seq.invoke(core.clj:122)
at penumbra.glsl.operators$run_reduce$fn__5348.invoke(operators.clj:357)
at penumbra.opengl.frame_buffer$with_frame_buffer.invoke(frame_buffer.clj:169)
at penumbra.glsl.operators$run_reduce.invoke(operators.clj:348)
at penumbra.glsl.operators$create_reduce_template$fn__5356$fn__5359.invoke(operators.clj:378)
at penumbra.opengl.shader$with_program.invoke(shader.clj:59)
at penumbra.glsl.operators$create_reduce_template$fn__5356.doInvoke(operators.clj:377)
at clojure.lang.RestFn.invoke(RestFn.java:409)
at example.gpgpu.n_body$energy.invoke(n_body.clj:62)
at example.gpgpu.n_body$run_sim.invoke(n_body.clj:73)
at example.gpgpu.n_body$start.invoke(n_body.clj:92)
at example.gpgpu.n_body$_main.invoke(n_body.clj:96)
at clojure.lang.AFn.applyToHelper(AFn.java:159)
at clojure.lang.AFn.applyTo(AFn.java:151)
at example.gpgpu.n_body.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Any thoughts? (Zach I know you're not maintaining this anymore - I just thought there might be a common workaround I've missed). 

ztellman

unread,
Feb 17, 2012, 8:32:34 PM2/17/12
to Penumbra
The n-body example uses some code paths that are somewhat less
maintained than the rest of the code. It looks like the code is
expected a sequence of buffers rather than just one, which probably
lends itself to a straightforward fix, but I don't really have the
time to track it down right now.

Zach

On Feb 3, 4:05 am, Julian Gamble <juliangam...@gmail.com> wrote:
> Just out of curiosity - it seems the n-body problem has been excluded from
> the examples. Is there a reason for this?
>
> Also after cloning the repository, I'm able to run through the examples
> collectively and individually, but when running the n-body example I get
> the following stack trace:
>
> java.lang.IllegalArgumentException: Don't know how to create ISeq from:
> java.nio.DirectFloatBufferU
> at clojure.lang.RT.seqFrom(RT.java:471)
> at clojure.lang.RT.seq(RT.java:452)
> at clojure.core$seq.invoke(core.clj:122)
> at penumbra.glsl.operators$run_reduce$fn__5348.invoke(operators.clj:357)
> at
> penumbra.opengl.frame_buffer$with_frame_buffer.invoke(frame_buffer.clj:169)
> at penumbra.glsl.operators$run_reduce.invoke(operators.clj:348)
> at
> penumbra.glsl.operators$create_reduce_template$fn__5356$fn__5359.invoke(ope rators.clj:378)
> at penumbra.opengl.shader$with_program.invoke(shader.clj:59)
> at
> penumbra.glsl.operators$create_reduce_template$fn__5356.doInvoke(operators. clj:377)
Reply all
Reply to author
Forward
0 new messages