View mode: basic / threaded / horizontal-split · Log in · Help
December 29, 2011
cl4d OpenCL wrapper moved to Github
I finally moved cl4d to https://github.com/Trass3r/cl4d

It's in a very usable state. Contains 2 samples including an 
OpenCL/OpenGL interop one similar to 
http://www.youtube.com/watch?v=K1FOIhA6ecQ

btw, as of my latest commit you need a HEAD dmd to build it. This 
fixes a severe memory leak.
December 29, 2011
Re: cl4d OpenCL wrapper moved to Github
hey that's cool. thank you for your effort. what about moving this to
deimos?

- mta`chrono
December 29, 2011
Re: cl4d OpenCL wrapper moved to Github
nice work. why moved to github ?

btw. with dmd2057 and the -property flag it does not build anymore.

Stephan

On 29.12.2011 02:18, Trass3r wrote:
> I finally moved cl4d to https://github.com/Trass3r/cl4d
>
> It's in a very usable state. Contains 2 samples including an
> OpenCL/OpenGL interop one similar to
> http://www.youtube.com/watch?v=K1FOIhA6ecQ
>
> btw, as of my latest commit you need a HEAD dmd to build it. This fixes
> a severe memory leak.
December 29, 2011
Re: cl4d OpenCL wrapper moved to Github
On Thursday, 29 December 2011 at 09:48:54 UTC, mta`chrono wrote:
> hey that's cool. thank you for your effort. what about moving 
> this to deimos?

Remember this is a wrapper, not only a binding.
What would be the merit of outsourcing the binding?
December 29, 2011
Re: cl4d OpenCL wrapper moved to Github
On Thursday, 29 December 2011 at 10:32:49 UTC, Extrawurst wrote:
> nice work. why moved to github ?

I'm sick of having to switch from git to hg commands every time I 
work on cl4d.
So I converted it to git, cleaned up the history and just put it 
on Github cause it has nicer features.

> btw. with dmd2057 and the -property flag it does not build 
> anymore.

I see, haven't used that switch yet.
December 30, 2011
Re: cl4d OpenCL wrapper moved to Github
On 29.12.2011 13:31, Trass3r wrote:
> On Thursday, 29 December 2011 at 10:32:49 UTC, Extrawurst wrote:
>> nice work. why moved to github ?
>
> I'm sick of having to switch from git to hg commands every time I work
> on cl4d.
> So I converted it to git, cleaned up the history and just put it on
> Github cause it has nicer features.
>
>> btw. with dmd2057 and the -property flag it does not build anymore.
>
> I see, haven't used that switch yet.

ok i can just use the c header ports, the wrapper just makes dmd choke 
"Stack Overflow" with this simple cmd line:

dmd opencl\c\cl.d opencl\c\cl_ext.d opencl\c\cl_gl.d 
opencl\c\cl_gl_ext.d opencl\c\cl_platform.d opencl\c\opencl.d 
opencl\all.d opencl\buffer.d opencl\commandqueue.d opencl\context.d 
opencl\device.d opencl\error.d opencl\event.d opencl\host.d 
opencl\image.d opencl\kernel.d opencl\memory.d opencl\platform.d 
opencl\program.d opencl\sampler.d opencl\wrapper.d
January 08, 2012
Re: cl4d OpenCL wrapper moved to Github
On Fri 30-Dec 10:00, Stephan wrote:
> On 29.12.2011 13:31, Trass3r wrote:
>> On Thursday, 29 December 2011 at 10:32:49 UTC, Extrawurst wrote:
>>> nice work. why moved to github ?
>>
>> I'm sick of having to switch from git to hg commands every time I work
>> on cl4d.
>> So I converted it to git, cleaned up the history and just put it on
>> Github cause it has nicer features.
>>
>>> btw. with dmd2057 and the -property flag it does not build anymore.
>>
>> I see, haven't used that switch yet.
>
> ok i can just use the c header ports, the wrapper just makes dmd choke
> "Stack Overflow" with this simple cmd line:
>
> dmd opencl\c\cl.d opencl\c\cl_ext.d opencl\c\cl_gl.d
> opencl\c\cl_gl_ext.d opencl\c\cl_platform.d opencl\c\opencl.d
> opencl\all.d opencl\buffer.d opencl\commandqueue.d opencl\context.d
> opencl\device.d opencl\error.d opencl\event.d opencl\host.d
> opencl\image.d opencl\kernel.d opencl\memory.d opencl\platform.d
> opencl\program.d opencl\sampler.d opencl\wrapper.d

Heh, I was just going to post about that too, guess I'll post it here:

(using dmd 2.057, eclipse+DDT, win7 x64)

Hi,

I'm trying to use cl4d, but when I compile I get a stack overflow..
This happens on the CLGLInterop.d example in the cl4d source.
After some stripping down, it seems just an empty module with an empty 
main() and an import opencl.all is enough to trigger the overflow:

--
module CLGLInterop;

import opencl.all;

void main(){}
--


Here's the verbose compile output:

--------  Build Commands:  --------
-od"bin"
-of"bin\test.exe"

-I"src"

"src\CLGLInterop.d"

-v
-d
-I"C:\_prog\D\custom2\derelict\import\"
-I"C:\_prog\D\custom2\cl4d\import\"

binary    C:\_prog\D\dmd2\windows\bin\dmd.exe
version   v2.057
config    C:\_prog\D\dmd2\windows\bin\sc.ini
parse     CLGLInterop
importall CLGLInterop
import    object 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\object.di)
import    opencl.all	(C:\_prog\D\custom2\cl4d\import\opencl\all.d)
import    opencl.c.opencl	(C:\_prog\D\custom2\cl4d\import\opencl\c\opencl.d)
import    opencl.c.cl	(C:\_prog\D\custom2\cl4d\import\opencl\c\cl.d)
import    opencl.c.cl_platform 
(C:\_prog\D\custom2\cl4d\import\opencl\c\cl_platform.d)
import    std.conv	(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\conv.d)
import    core.stdc.math 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\math.di)
import    core.stdc.config 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\config.di)
import    core.stdc.string 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\string.di)
import    core.stdc.stddef 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\stddef.di)
import    std.algorithm 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\algorithm.d)
import    std.c.string 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\c\string.d)
import    std.array 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\array.d)
import    core.memory 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\memory.di)
import    core.bitop 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\bitop.di)
import    std.ascii 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\ascii.d)
import    std.exception 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\exception.d)
import    std.range 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\range.d)
import    std.functional 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\functional.d)
import    std.metastrings 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\metastrings.d)
import    std.traits 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\traits.d)
import    std.typetuple 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\typetuple.d)
import    std.typecons 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\typecons.d)
import    core.stdc.stdlib 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\stdlib.di)
import    std.format 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\format.d)
import    core.stdc.stdio 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\stdio.di)
import    core.stdc.stdarg 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\stdarg.di)
import    core.vararg 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\vararg.di)
import    std.bitmanip 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\bitmanip.d)
import    std.math	(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\math.d)
import    std.string 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\string.d)
import    core.exception 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\exception.di)
import    std.regex 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\regex.d)
import    std.internal.uni 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\internal\uni.d)
import    std.uni	(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\uni.d)
import    std.internal.uni_tab 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\internal\uni_tab.d)
import    std.utf	(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\utf.d)
import    std.system 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\system.d)
import    core.stdc.errno 
(C:\_prog\D\dmd2\windows\bin\..\..\src\druntime\import\core\stdc\errno.di)
import    std.container 
(C:\_prog\D\dmd2\windows\bin\..\..\src\phobos\std\container.d)
import    opencl.c.cl_gl	(C:\_prog\D\custom2\cl4d\import\opencl\c\cl_gl.d)
import    opencl.c.cl_gl_ext 
(C:\_prog\D\custom2\cl4d\import\opencl\c\cl_gl_ext.d)
import    opencl.c.cl_ext	(C:\_prog\D\custom2\cl4d\import\opencl\c\cl_ext.d)
import    opencl.commandqueue 
(C:\_prog\D\custom2\cl4d\import\opencl\commandqueue.d)
import    opencl.buffer	(C:\_prog\D\custom2\cl4d\import\opencl\buffer.d)
import    opencl.context	(C:\_prog\D\custom2\cl4d\import\opencl\context.d)
import    opencl.device	(C:\_prog\D\custom2\cl4d\import\opencl\device.d)
import    opencl.error	(C:\_prog\D\custom2\cl4d\import\opencl\error.d)
import    opencl.platform	(C:\_prog\D\custom2\cl4d\import\opencl\platform.d)
import    opencl.wrapper	(C:\_prog\D\custom2\cl4d\import\opencl\wrapper.d)
import    opencl.kernel	(C:\_prog\D\custom2\cl4d\import\opencl\kernel.d)
import    opencl.memory	(C:\_prog\D\custom2\cl4d\import\opencl\memory.d)
import    opencl.program	(C:\_prog\D\custom2\cl4d\import\opencl\program.d)
import    opencl.sampler	(C:\_prog\D\custom2\cl4d\import\opencl\sampler.d)
import    opencl.event	(C:\_prog\D\custom2\cl4d\import\opencl\event.d)
import    opencl.image	(C:\_prog\D\custom2\cl4d\import\opencl\image.d)
import    opencl.host	(C:\_prog\D\custom2\cl4d\import\opencl\host.d)
semantic  CLGLInterop
Stack overflow


I'm at a loss.. Any ideas?
January 08, 2012
Re: cl4d OpenCL wrapper moved to Github
> I'm trying to use cl4d, but when I compile I get a stack overflow..

Sigh.
As I stated in the announcement you need a HEAD dmd.
Or use a cl4d revision prior to the mentioned bugfix.
January 08, 2012
Re: cl4d OpenCL wrapper moved to Github
On Sun 08-Jan 22:53, Trass3r wrote:
>> I'm trying to use cl4d, but when I compile I get a stack overflow..
>
> Sigh.
> As I stated in the announcement you need a HEAD dmd.
> Or use a cl4d revision prior to the mentioned bugfix.

Oh I think I now get what you mean by HEAD dmd: the latest version on 
github. I've never compiled dmd myself so that didn't even occur to me..

About the 'mentioned bugfix', I assume you're referring to "bug 6473 has 
been fixed => so let's fix that memory leak"?
January 08, 2012
Re: cl4d OpenCL wrapper moved to Github
> About the 'mentioned bugfix', I assume you're referring to "bug 
> 6473 has been fixed => so let's fix that memory leak"?

Yep, just git checkout the revision before that one.
« First   ‹ Prev
1 2 3
Top | Discussion index | About this forum | D home