Skip to content

Add GridArray constructor from data#133

Open
lcw wants to merge 17 commits into
masterfrom
gridarray-from-data
Open

Add GridArray constructor from data#133
lcw wants to merge 17 commits into
masterfrom
gridarray-from-data

Conversation

@lcw
Copy link
Copy Markdown
Collaborator

@lcw lcw commented Oct 29, 2025

No description provided.

@lcw lcw force-pushed the gridarray-from-data branch 3 times, most recently from 95b86e4 to 7f3b55e Compare October 29, 2025 22:50
@lcw lcw force-pushed the gridarray-from-data branch from 3af6f69 to abd811f Compare November 6, 2025 21:18
lcw added 3 commits November 7, 2025 13:04
This replaces the persistent MPI communication with MPI.Isend,
MPI.Irecv!, and MPI.Wait.  This is done because Enzyme currently does
not support persistent MPI.
The binding rules changed at the REPL in julia v1.12 breaking this
document test.  See the error message below.

```
julia> struct T{A,B}
                  a::A
                  b::B
              end

julia> Raven.constructorof(T{Int,Int})
ERROR: UndefVarError: `T` not defined in `Main`
Suggestion: define the const at top-level before running function that uses it (stricter Julia v1.12+ rule).
Note: the binding state changed since the error occurred (was: 11, now: 0).
Stacktrace:
 [1] #s75#6
   @ ~/research/code/julia/Raven/src/flatten.jl:138 [inlined]
 [2] var"#s75#6"(T::Any, ::Any, ::Any)
   @ Raven ./none:0
 [3] (::Core.GeneratedFunctionStub)(::UInt64, ::Method, ::Any, ::Vararg{Any})
   @ Base ./expr.jl:1694
 [4] top-level scope
   @ REPL[3]:1
```

Thus, we just change the example to work.
This change is made to enable Enzyme support.
@lcw lcw force-pushed the gridarray-from-data branch from ab61b1e to 8179242 Compare November 7, 2025 21:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants