Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
nicwilson
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
21 ms
·
181.
▲
by
nicwilson
9y ago
You can't do that with C++'s "3-legged" algorithms. the begin - end - begin triplet is missing the second end.
182.
▲
by
nicwilson
9y ago
Its the tag based dispatching for the `par` in std::sort(par,a.begin(),a.end()); to call a parallel implementation of sort on `a`.
183.
▲
by
nicwilson
9y ago
Cool, I'm looking forward to seeing more news about the mill.
184.
▲
by
nicwilson
9y ago
No. What Walter is talking about in D is if you have Foo[] foo = ...; foreach(f; foo) { f.bar.baz.quux; } and the computation is parallelisable then you can write import std.parallelism; foreach(f; parallel(foo)) { f.bar.baz.quux; }
185.
▲
by
nicwilson
9y ago
One of the main goals for DCompute is to lower the barrier of entry, so that people how have embarrassingly parallel problems can take advantage of their hardware without being an expert.
186.
▲
by
nicwilson
9y ago
Thanks. Halide has recently caught my eye and I'd like to see how far I replicate how they do things. It'll have to wait a bit though.
187.
▲
by
nicwilson
9y ago
Yes.
188.
▲
by
nicwilson
9y ago
>nothing from Vulkan side will change AFAIU Vulkan will continue in the direction it is going. I imagine that the OpenCL API will replace the directly comparable parts of the APIs (e.g. contexts queues images/buffers) so that OpenCL
189.
▲
by
nicwilson
9y ago
OpenCL (the API) will merge into Vulkan, but OpenCL C/C++/DCompute/compute shaders (the kernel languages) will remain separate as they compile to SPIRV, which is compiled into the native binary format.
190.
▲
by
nicwilson
9y ago
The Dcompute kernel language (which for the most part is plain D, the compiler is completely reused) has the usual set of restrictions that any kernel languages have: no exceptions, recursion, runtime (which is what betterC is about), func
191.
▲
by
nicwilson
9y ago
Yeah, I'm looking forward to getting DCompute into orbit.
192.
▲
by
nicwilson
9y ago
> written in such a way that objects are assumed to be non-moving Not generally, but you can take the address of anything and shove it into a union or pass it off to C code that stores it somewhere. Because you can, it would be very dang
193.
▲
by
nicwilson
9y ago
If you ever want to horrify yourself, google LabView, a truly horrible piece of software.
194.
▲
by
nicwilson
9y ago
I am working on [dcompute]( https://github.com/libmir/dcompute ) which I hope will bring an equivalent experience when running on OpenCL and CUDA, and being written in D will provide all the advantages it does to writing
195.
▲
by
nicwilson
9y ago
Nvidia will have to support the SPIR-V Vulkan environment that is different to the OpenCL SPIR-V environment. But Vulkan is a graphics API not a compute API. Yes in theory you can write compute shaders but from my experience if you have a
196.
▲
by
nicwilson
9y ago
I am the author of DCompute, a compiler/library/runtime framework for abstracting OpenCL/CUDA for D. You can write kernels already, although the API automation is still a work in progress. I'm hoping that this should le
197.
▲
by
nicwilson
10y ago
I hope so :) Also DConf is just around the corner (tickets close tomorrow?) so expect more.
198.
▲
by
nicwilson
10y ago
Sadly Khronos' LLVM only supports OpenCL i.e. compute SPIRV code generation, is rather old (3.6.1) and is nowhere near in shape enough to be upstreamed, and MS's in only slightly newer at 3.7, the the repo also contains a custom c
199.
▲
by
nicwilson
10y ago
While neural action potentials are binary (either absent or identical to every other AP) they encode temporally an analog signal (internal charge, ion concentration) with amplitude in proportion to frequency.
200.
▲
by
nicwilson
10y ago
Many things, although introspection works glove in hand with generics. Below os a non-exhaustive list. You can 'Write once - automate everywhere' all the boilerplate. See https://github.com/kaleidicassociates/
201.
▲
by
nicwilson
10y ago
While not 1st class, in D you can do a completely transparent library solution, because you can introspect the fields of the struct you want to be SoA and insert arrays of those fields in to the SoA'd type. Á la https://gith