[CubeCL][P1.3] Implement views, slicing, indexing, gather, reshape, and transpose
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 32/100
Direzione di ricerca
Inizia verificando i prerequisiti #50 e #41, quindi fai un inventario delle implementazioni esistenti in src/cubecl/view/, src/cubecl/index/, src/cubecl/transform/, src/array.rs e src/ops.rs. Aggiungi o estendi i test in tests/conformance/ ed esegui i comandi richiesti cargo fmt e cargo test. Il lavoro è completato quando tutte le operazioni applicabili, la semantica composta, i fallimenti, l'aliasing, la materializzazione e le evidenze di conformità tra CPU e acceleratori soddisfano i criteri di accettazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Objective
Implement the existing view/index/transform surface on CubeCL while preserving shape, stride, bounds, aliasing and materialization semantics.
Acceptance criteria
- Operation inventory covers every applicable OpenCL/public view and indexing operation.
- Contiguous and non-contiguous inputs, negative/empty ranges where supported, repeated gather indices, bounds failures, reshape compatibility and transpose permutations are tested.
- Aliasing/materialization behavior is documented and matches the public API.
- Composed view chains produce the same results and typed failures as host execution.
- Transfers/materializations are observable so later fusion planning can identify boundaries.
- No OpenCL code is removed.
Parent: #35
Tembo execution contract
automation:
eligible: true
executor_profile: tembo
readiness: blocked
primary_repository: TinyChain-Inc/ha-ndarray
base_branch: main
writable_scope:
- src/cubecl/view/**
- src/cubecl/index/**
- src/cubecl/transform/**
- src/array.rs
- src/ops.rs
- tests/conformance/**
prerequisites:
- "#50 designated accelerator validation lane"
- "#41"
concurrency_group: cubecl-views-indexing
required_commands:
- "cargo fmt --all -- --check"
- "cargo test --no-default-features --features cubecl"
- "cargo test --all-features"
evidence:
cpu_conformance: required
accelerator_conformance: required-on-designated-runner
actual_browser: not-required
benchmark_report: not-required
exact_hardware_and_driver_identity: required
external_actions: none
draft_pr_only: true
completion_authority: human
budget:
size: large
max_revisions: 3
max_wall_minutes: 180
- Lingua principale
- Rust
- Stelle
- 3
- Fork
- 2
- Merge medio
- 1h 19m
- PR unite (30g)
- 1
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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 TinyChain-Inc/ha-ndarray
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
TinyChain-Inc/ha-ndarray#50 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
TinyChain-Inc/ha-ndarray#49 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
TinyChain-Inc/ha-ndarray#48 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
TinyChain-Inc/ha-ndarray#47 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
TinyChain-Inc/ha-ndarray#46 ·
Tutte le issue di TinyChain-Inc/ha-ndarray
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 3 giorni
-
state:triage-needed
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Automattic/harper#4503 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
I maintainer di solito rispondono entro 2 giorni