modular / modular/modular

[Feature Request] Make sure that compare exchange is there.

Open
#6,316 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement mojo
Dominant language
Mojo
Stars
29.8k
Forks
3.2k
PR merge metrics
No merged PRs in 30d

Description

Review Mojo's priorities
What is your request?

This is important, because currently there is no way without spinwaiting on the same stride and really hard to CAS on warp level. Otherwise FAA methods etc must be used and wait is totally unnecesasry, which renders many things having low performance on the compute side.

What is your motivation for this change?

Faster computations, able to write warp level CAS.

Any other details?

Some platforms that Mojo compiles doesn't have CAS, since you are already documenting these. You can document that, e.g. Metal.

Contributor guide

Open the contributing guide

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

Start with Mojo's roadmap and the current documentation for FAA methods and platform support, including Metal. Determine the intended compare-exchange behavior across supported targets and what should happen where CAS is unavailable; done requires a settled implementation or documented limitation and corresponding validation.

Written by the indexing model from the issue text.

Assessment

Domain
compilers, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.