Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Athas
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
55 ms
·
541.
▲
by
Athas
10y ago
I don't think so. Rust has excellent support for concurrency, but does not have any interesting parallel constructs. Which means that while it can probably be fine for coarse-grained multicore parallelism, it does not provide the fin
542.
▲
by
Athas
10y ago
OpenCL is fine, but not well supported (because NVIDIA). Vulkan is also fine, so again, the only question is support. I don't know whether Vulkan can supplant OpenCL for computation, or whether it's even supposed to. None of the
543.
▲
by
Athas
10y ago
One problem is that functional programming style is often focused on recursion - not just in its functions, but also its data structures. Trees, linked lists and graphs are GPU poison, while arrays map very well to the hardware. However,
544.
▲
by
Athas
10y ago
> I could write a lot about why that is (and how some of the CS and IT crowd doesn't "get" scientific computing..) Please do! I'm a PhD student in CS, and I don't think I "get" scientific computing (I&
545.
▲
by
Athas
10y ago
It is nice for languages where it is a first-class concept (e.g. Twelf, which is a logic/theorem language), but it gets complicated very quickly if you want to do AST transformations. I cannot recommend HOAS outside of very narrow area
546.
▲
by
Athas
10y ago
13 years ago, I downloaded Debian stable. The 'nv' driver for XFree86 didn't work on my machine, so my first Unix experience was learning how to use vi to edit the configuration file. Never did get it to work, but Knoppix d
547.
▲
by
Athas
10y ago
This is interesting. Is there some way for academics to get discounted access for experiments (not for running heavy simulations, but for testing whether our stuff works)?
548.
▲
by
Athas
10y ago
I have used the original edition of this keyboard for some years now, and it is amazing. By far the best keyboard I have ever used. While I prefer the Cherry Blues on my older Das Keyboard, the layout of the Kinesis Advantage is incredibl
549.
▲
by
Athas
10y ago
It is significantly better than undefined behaviour, as it results in a noisy failure rather than silently incorrect results. Compile-time failures are best, sure, but I'll always take an exception over what is essentially data corrup
550.
▲
by
Athas
10y ago
The claim is "fast as C", so I was surprised that the performance comparison was with Ruby, not with C. On my machine, the Ruby Fibonacci program executes in 47.5s, while a corresponding C program executes in 0.88s - that's
551.
▲
by
Athas
10y ago
I don't understand. What does hardware design have to do with refactoring, usually a software term? The addition of the SSD is motivated by basic physics, which creates the need for computational units and storage units to be close t
552.
▲
by
Athas
10y ago
If you're OK with serial C getting beat by a functional language, I have some simple benchmarks here: http://futhark-lang.org/performance.html It also shows some parallel C being almost beat by a functional language, a
553.
▲
Evolution of an Erlang Programming Style
(prog21.dadgum.com)
2 points
by
Athas
10y ago
|
0 comments
554.
▲
by
Athas
10y ago
I don't think the idea is that Co-Dfns extends the Dyalog APL language. Rather, it exploits the data-parallelism that is already inherent in most APL code.
555.
▲
by
Athas
10y ago
Dyalog is a (mostly) Danish company.
556.
▲
by
Athas
10y ago
It's annoying that the "un-registered" version[0] (the one where you don't have to fill out a form) only runs on Windows. I wonder why. I'm not really sure what kind of danger Dyalog is trying to protect themselve
557.
▲
by
Athas
10y ago
You need an editor with some basic APL awareness. There is an APL-mode for Emacs where pressing dot ('.') switches to the APL layout for the next character. It feels very natural to use. I've seen others use a modifier key
558.
▲
by
Athas
10y ago
Probably not coincidental. There's only so many ways to construct a data-parallel language.
559.
▲
by
Athas
10y ago
It's not dead, it's just... deliberate. Development is supposedly occurring inside a (non-public) source repository, according to a developer I spoke to recently.
560.
▲
by
Athas
10y ago
It might have been *Lisp (StarLisp) for the Connection Machine. Incidentally, the Connection Machine also seems to have been one of the main platforms for NESL (which might explain why NESL went nowhere...).
561.
▲
by
Athas
10y ago
As a reply to my own comment: the source distribution is fairly modern, with a decent `configure` script and all. Compiles out-of-the-box on my Debian machine, so it's not just a code dump from the early 90s. This might be fun to pla
562.
▲
by
Athas
10y ago
Is it still actively maintained? The CVS repository looks fairly dead.
563.
▲
by
Athas
10y ago
Sisal is one of the true pioneers of high-level parallel programming. It was roughly contemporary with (slightly preceded) NESL[0], another data-parallel language. Sisal was probably simpler and more pragmatic. I'm not sure why none
564.
▲
by
Athas
10y ago
> GnuAPL is coming along nicely, and of course libre. From what I have been able to determine, most APL performance comes from hand-tuned implementations of the primitives, and of specially recognised idioms[0], for which the interpreter
565.
▲
by
Athas
10y ago
That's because the speedup graph cuts away at a 100x speedup, but some of these (somewhat silly) benchmarks are compute-bound and hence gets these crazy 1000x speedups on the GPU.
566.
▲
APL compiler targeting a typed array intermediate language
(github.com)
123 points
by
Athas
10y ago
|
29 comments
567.
▲
Futhark as target language for an APL compiler
(futhark-lang.org)
1 points
by
Athas
10y ago
|
0 comments
568.
▲
by
Athas
10y ago
Modern AMD and NVIDIA GPUs are fairly similar hardware-wise, and it is not hard to write OpenCL code that executes efficiently on both. I agree that it is pretty hopeless to write performance-portable OpenCL across entirely different archi
569.
▲
ARM unveils its next-generation Bifrost GPU architecture
(anandtech.com)
7 points
by
Athas
10y ago
|
0 comments
570.
▲
by
Athas
10y ago
OpenCL is however a fairly nice target for compilers, which opens up different ways of using it. Witness also PyOpenCL versus PyCUDA - both are essentially equally convenient to use, while raw OpenCL C is a nightmare compared to CUDA C.
More ›