john-h-k / john-h-k/MathSharp

[PROPOSAL] Make all operations use 128 bit wide vectors and create a new API for 256 bit wide vectors.

Open
#55 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
703
Forks
48
PR merge metrics
No merged PRs in 30d

Description

Currently doubles use 256 wide vectors for vectorized math which can cause downclocking on most modern CPUs, there's also no way to use 256 bit wide vectors for float math.
I think adding a new static class named something like `HeavyVector` which would mirror the `Vector` class but that uses AVX instructions with fallbacks to SSE and software would allow users to decide for themselves if downclocking is worth it for their use case.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.