# MemoryAccess package for abstract optimized memory operations

**URL:** <https://discourse.julialang.org/t/memoryaccess-package-for-abstract-optimized-memory-operations/134062>\
**Category:** Package Announcements\
**Created:** [November 23, 2025, 9:12pm UTC](https://discourse.julialang.org/t/memoryaccess-package-for-abstract-optimized-memory-operations/134062 "2025-11-23T21:12:24Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![epilliat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/epilliat/32/219946_2.png) [@epilliat](https://discourse.julialang.org/u/epilliat)\
**Post date:** [November 23, 2025, 9:12pm UTC](https://discourse.julialang.org/t/memoryaccess-package-for-abstract-optimized-memory-operations/134062/1 "2025-11-23T21:12:24Z")

</div>

I’ve developed MemoryAccess.jl, a package providing comprehensive abstractions for GPU memory access patterns:

- **Vectorized memory loads and stores** using LLVMPtr
- **Warp-level shuffle operations** for arbitrary data structures, leveraging CUDA backend semantics
- **Memory fences** with configurable scopes and memory ordering, built on UnsafeAtomics semantics

[Registration PR](https://github.com/JuliaRegistries/General/pull/142780)

The initial release targets the CUDA backend, though the abstraction layer is designed to accommodate other GPU backends (ROCm, Metal, oneAPI) in future versions.

I believe MemoryAccess would complement the existing JuliaGPU ecosystem well. Would the maintainers be open to transferring the repository to the JuliaGPU organization?
