Provide simd-generic-like overloads for other common C++ std functions, traits, etc.
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Feature
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- cpp
- Bereich
- performance
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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
- Vorherrschende Sprache
- C++
- Sterne
- 5
- Forks
- 2
- Ø Merge
- 1 T. 11 Std.
- Gemergte PRs (30 T.)
- 20
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus intel/xvec
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 50/100
Maintainer antworten meist innerhalb von 1 Tag
-
C++29 extension
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 52/100
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
Maintainer antworten meist innerhalb von 1 Tag
Ähnliche Issues
-
agent:WSL bug code-review linux LOW
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 1 Tag
-
[raylib] update to 6.2Offencategory:port-update
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 2 Tagen
-
improvement ui
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
ihhub/fheroes2#11062 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement question
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
DarkStarSystems/pcons#224 ·
Maintainer antworten meist innerhalb von 1 Tag