[Feature request] `compatible_multiplicative_operand` interface
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- julia
- Ambito
- backend-api-design
Direzione di ricerca
Inizia leggendo la discussione in PR #84 e l’API attuale di ArrayInterface; la issue non indica file né test. Confronta il comportamento proposto di compatible_multiplicative_operand tra i tipi di array dense, sparse, GPU e wrapper, definendo il completamento tramite un’interfaccia concordata e la copertura delle combinazioni di operandi supportate.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
In the discussion under this PR: https://github.com/SciML/ExponentialUtilities.jl/pull/84 . We meet a using case of multipling a linear operator of certain type to a dense matrix. We think it would be fantastic if there is an API called compatible_multiplicative_operand(target, source) in ArrayInterface. That is,
compatible_multiplicative_operand(::CuArray, dense::Matrix) = CuArray(dense)compatible_multiplicative_operand(::Matrix, cuarray::CuArray) = Matrix(cuarray)compatible_multiplicative_operand(::SparseMatrixCSC, dense::Matrix) = densecompatible_multiplicative_operand(::Matrix, sparse::SparseMatrixCSC) = sparse
Similarly, we can define them for Transpose, Adjoint, SubArray, and ReshapedArray, DistributedArray et al.
The key point is, we want two arrays can have compatible array types for multiplication, which is quite different from Base.convert.
- Lingua principale
- Julia
- Stelle
- 140
- Fork
- 44
- Merge medio
- 4g 14h
- PR unite (30g)
- 5
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaArrays/ArrayInterface.jl
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
JuliaArrays/ArrayInterface.jl#499 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
JuliaArrays/ArrayInterface.jl#463 · 5 commenti · 4 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
JuliaArrays/ArrayInterface.jl#460 · 8 commenti · 2 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
JuliaArrays/ArrayInterface.jl#397 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 15/100
JuliaArrays/ArrayInterface.jl#396 ·
Tutte le issue di JuliaArrays/ArrayInterface.jl
Issue simili
-
Docstring for MatlabTable Apertaenhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
interpolate! from a Float32 LatitudeLongitudeGrid fails on Metal: Float64 division in find_λ_range Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
CliMA/Oceananigans.jl#6056 ·
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
JuliaPluto/PlutoPlotly.jl#72 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
epiforecasts/BVDOutbreakSize#811 ·