chapel
chapel copied to clipboard
a Productive Parallel Programming Language
This adds support for mapping `owned` to the `_owned` record implementation in module code. Resolves https://github.com/Cray/chapel-private/issues/6157. The change includes similar patterns for `_owned` and `_shared` but does not quite work...
```chpl var Arr = [1,2,3]; var sum = 0; proc foo(x) do return x; @gpu.blockSize(foo(128)) forall a in Arr with (+ reduce sum) { sum += a; } writeln(sum); ```...
I am finding that `--report-gpu` does not work with promotions or loop expressions. For example, take the following code ```chapel on here.gpus[0] { var x, y: [1..10] int; @assertOnGpu() var...
### Summary of Problem The following code produces the error "gpu-nvidia.c:292: Error calling CUDA function: an illegal memory access was encountered". ```chapel const D = {0..
Using a multidimensional array in a loop expression prevents the compiler from being able to create kernels. This should work and result in a kernel launch. For example, the following...
`setup_cmake_nightly.bash` gives a non-working CMake on Atlas, where this script is used in nightly testing. But Atlas already loads a working CMake from the new Spack install setup, which is...
### Summary of Problem **Description:** The current shape definition for domains https://github.com/chapel-lang/chapel/blob/8259035407d5ab40fd0956912e33e5e4d030b25a/modules/internal/ChapelDomain.chpl#L1480-L1489 is not ideal, and I suspect that it has been causing me problems when I refer to a...
Currently calling `sort` on a distributed array will result a warning that twoArrayRadix is not supported on distributed arrays ```chapel use BlockDist, Sort; var a = blockDist.createArray(1..100, int); sort(a); //...
Work in progress tasks on https://github.com/Cray/chapel-private/issues/6163 - [x] Add `new` resolution for `_domain` (`DomainType`) - [x] Rewrite `new dmap` as `new _distribution` - [x] Resolve calls to `domain` keyword as...