Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SIMD Parallelism #4

Open
5 of 8 tasks
nvzqz opened this issue Oct 30, 2017 · 0 comments
Open
5 of 8 tasks

SIMD Parallelism #4

nvzqz opened this issue Oct 30, 2017 · 0 comments

Comments

@nvzqz
Copy link
Member

nvzqz commented Oct 30, 2017

Explicit SIMD can be used to improve Hexe's performance either in throughput or latency depending where it's used.

Architectural Components

Designing Position and State to use the cross-platform types found in std::simd. This would allow for batch position processing. This would also be a very cache-friendly approach.

Individual Components

There are numerous individual areas where parallelism with explicit SIMD can improve performance:

Hexe Main

  • ???

Hexe Core

  • Piece::contained_in
  • PieceMap
    • is_empty
    • len
    • count_of
  • piece::map::{Iter, IterMut}::len
  • piece::map::{Iter, IterMut}::next

Related

@nvzqz nvzqz changed the title SIMD Checklist and Suggestions SIMD Parallelism Apr 10, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant