Autovectorization on x86
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- performance
Línea de trabajo
Start with the two implementations in the linked Godbolt example, nd_mul_u64_view and nd_mul_u64_slice, and compare the generated code for view-based and slice-based iteration. Investigate why the view version is not autovectorized; done means the view implementation produces vectorized code comparable to the slice implementation.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I have a, b, c of type Array1<u64>. a is mutable reference, whereas b & c are just reference. I want to set each element in a as product of elements in b & c at corresponding indices. Implementation is relatively straightforward and can be vectorized by compiler. However, I noticed that compiler only vectorizes when I iter using a, b, and c as slices but not as.view().
This is link to both implementations. Notice that nd_mul_u64_view is not vectorized and nd_mul_u64_slice is.
- Lenguaje dominante
- Rust
- Estrellas
- 452
- Forks
- 95
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de rust-ndarray/ndarray-linalg
-
Thin SVD Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
rust-ndarray/ndarray-linalg#414 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
rust-ndarray/ndarray-linalg#413 · 1 comentario ·
-
Cyclically Tridiagonal Matrices? Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
rust-ndarray/ndarray-linalg#404 ·
-
SIGSEGV on qr decomposition Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-ndarray/ndarray-linalg#402 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-ndarray/ndarray-linalg#401 · 2 reacciones ·
Todos los issues de rust-ndarray/ndarray-linalg
Issues similares
-
bug github_actions
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
registrystack/registry-stack#1393 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
longbridge/gpui-kit#3223 ·
-
bug engine
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
rocky-data/rocky#2181 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
oasisprotocol/oasis-sdk#2523 ·
-
[indexer] [QA] Add a focused test for the new NonRetryableError / assertSocketAlive() behavior. Abiertobot:ai-assisted component:indexer QA-roadmap status:untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
midnightntwrk/midnight-indexer#1557 ·