Provide simd-generic-like overloads for other common C++ std functions, traits, etc.
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 25/100
- Type d'issue
- Fonctionnalité
- Clarté
- À clarifier
- Activité
- Active
- Stack technique
- cpp
- Domaine
- performance
Piste de recherche
The issue names no files or tests. Start by reviewing the existing simd-generic overloads and the listed standard-library functions and traits, then determine which subset has a defined scope; done would require an agreed set of extensions suitable for a standards committee paper.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
There are many common types and functions which could be used in a simd-generic way, and which could be added as overloads. The list below is not exhaustive, but serves as an indication of what should be looked at. These should probably all be bundled into a single standards committee paper which proposes extending the current overload set to include other common cases.
Note that it isn't always clear if a overload/trait actually makes sense, even if these is already some precedent for it. For example, numeric_limits<vec> has been proposed, but does this mean that every one of the is_signed_v family of functions should also work? True "simd-generic" behaviour would mean making sure that every possible overload/trait of a vec<T> should map to its corresponding element-wise overload/trait. That would be a huge list so is that going too far. Maybe we should just accept that simd-generic is too big to be pursued everywhere.
Possible overloads:
- The load/store/gather/scatter family
is_signed_vand family: Likenumeric_limits<vec>it could return true if the underlying type is signed.make_unsigned,make_signed,make_unsigned_tcmp_less,cmp_greaterand family.in_rangecompare_three_way
- Langage dominant
- C++
- Étoiles
- 5
- Forks
- 2
- Merge moyen
- 1 j 11 h
- PR mergées (30 j)
- 20
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de intel/xvec
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 50/100
Les mainteneurs répondent en général sous 1 jour
-
C++29 extension
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de intel/xvec
Issues similaires
-
binding:web core docs p3
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
RunanywhereAI/runanywhere-sdks#1123 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
NVIDIA-RTX/NRI#277 ·
Les mainteneurs répondent en général sous 1 jour