Provide simd-generic-like overloads for other common C++ std functions, traits, etc.
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Ativa
- Stack de tecnologia
- cpp
- Domínio
- performance
Direção de pesquisa
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.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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
- Linguagem predominante
- C++
- Estrelas
- 5
- Forks
- 2
- Merge médio
- 1d 11h
- PRs com merge (30d)
- 20
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de intel/xvec
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 50/100
Mantenedores costumam responder em até 1 dia
-
C++29 extension
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 52/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 52/100
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
Mantenedores costumam responder em até 1 dia
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
NVIDIA-RTX/NRI#277 ·
Mantenedores costumam responder em até 1 dia
-
os:Linux
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
-
acceptable_buffer_backends: unknown backend names are silently ignoredTalvez já em andamento @mini-1235 assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
ros2/rmw_fastrtps#945 ·
Mantenedores costumam responder em até 1 dia