GPUifyLoops.jl icon indicating copy to clipboard operation
GPUifyLoops.jl copied to clipboard

add GPU-aware SoA implementation

Open vchuravy opened this issue 7 years ago • 4 comments

based of https://github.com/JuliaArrays/StructsOfArrays.jl

vchuravy avatar Feb 01 '19 19:02 vchuravy

I typically avoid checking in the Manifest (and that is part of the reason why StructArrays is not a package in itself). I have a cut down Manifest in-place for the test-env that are used by CI, which mostly avoids the churn of having to update them regularly.

vchuravy avatar Feb 04 '19 03:02 vchuravy

No problem. For some reason I thought it was needed, I'll remove that commit.

jkozdon avatar Feb 04 '19 03:02 jkozdon

Besides the GPU support, what are the advantages/disadvantages of the StructsOfArrays approach compared with the StructArrays.jl package?

Edit: Now see that you actually just opened an issue over on StructsArrays

jkozdon avatar Feb 04 '19 03:02 jkozdon

Besides GPU support the big difference is that this implementation supports automatic recursive unpacking and currently handle's singleton types. (eg. structs with no fields).

StructArrays uses a function to determine to which level you are unpacking and also provides getfield overloading to access the underlying arrays with the fieldnames of a struct.

vchuravy avatar Feb 04 '19 03:02 vchuravy