JuliaGPU / JuliaGPU/AMDGPU.jl

Support non-bitstype arguments and allocations

Open
#26 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
344
Forks
79
Avg merge
2d 23h
Merged PRs (30d)
27

Description

It should be possible to support non-bitstype arguments and possibly on-device allocations with a bit of elbow grease, as long as we allocate all non-bitstype structures entirely on HSA finegrained memory blocks (even when they reference other device memory blocks). We'll probably need to provide:

  • A way to allocate non-bitstype objects on the host on only HSA memory blocks (Cassette?)
  • Convert any device-side allocations from Julia addrspaces and conventions to AMDGPU equivalents
  • malloc/free on the device
  • An optional verifier pass to ensure all non-bitstype arguments only point to valid (device-reachable) memory locations
  • All sorts of tests to ensure this actually works

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by reviewing the existing Julia address-space and HSA finegrained-memory allocation paths, then break the work into the listed allocation, verifier, and testing goals; done requires those goals and the proposed device-memory behavior to be implemented and covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
hpc
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.