This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <cstdint> | |
| #include <cstddef> | |
| #include <cmath> | |
| #include <cstdio> | |
| /** | |
| * Handles bitset lesser or greater than where | |
| * 0 is the least significant bit, | |
| * 0101 -> 0 and 2 are in the set. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| >>> bin(0b10100 & ~0b1111) | |
| '0b10000' | |
| >>> bin(0b11000 & 0b1111) | |
| '0b1000' | |
| >>> bin(0b11000 & ~0b1111) | |
| '0b10000' | |
| >>> bin(0b01000 & ~0b1111) | |
| '0b0' | |
| >>> bin(0b11000 & ~0b1111) | |
| '0b10000' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| >>> bin(8) | |
| '0b1000' | |
| >>> bin(12) | |
| '0b1100' | |
| >>> bin(16) | |
| '0b10000' | |
| >>> bin(16 + 0b100) | |
| '0b10100' | |
| >>> bin(16 + 0b100 + 0b100) | |
| '0b11000' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| fn sub_distance<const S: usize>(v1:&[u64;S], v2:&[u64;S]) -> u64 { | |
| let mut total = 0; | |
| for i in 0..S { | |
| total += v1[i] - v2[i]; | |
| } | |
| return total; | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <vector> | |
| #include <cstdint> | |
| #include <cstring> | |
| #include <cstdlib> | |
| #include <ctime> | |
| #include <cmath> | |
| #include <algorithm> | |
| #include <iostream> | |
| #include <numeric> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <cstdint> | |
| #include <iostream> | |
| #include <random> | |
| #include <chrono> | |
| class RegisterBitset1024 { | |
| public: | |
| static constexpr size_t NUM_BITS = 1024; | |
| static constexpr size_t NUM_REGS = NUM_BITS / 64; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // bucket_stats.cpp | |
| #include <array> | |
| #include <vector> | |
| #include <unordered_map> | |
| #include <random> | |
| #include <iostream> | |
| #include <algorithm> | |
| #include <chrono> | |
| #include <cstdint> | |
| #include <numeric> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <vector> | |
| #include <unordered_map> | |
| #include <random> | |
| #include <iostream> | |
| #include <limits> | |
| #include <cstdint> | |
| #include <chrono> | |
| constexpr size_t DIM = 128; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <cstdint> | |
| #include <iostream> | |
| #include <vector> | |
| #include <random> | |
| #include <chrono> | |
| constexpr size_t NUM_BYTES = 1024; | |
| constexpr int N = 10'000'000; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <array> | |
| #include <chrono> | |
| #include <iostream> | |
| #include <cstdint> | |
| // -------------------------------------- | |
| // Byte-based 256-bit bitset | |
| // -------------------------------------- | |
| struct ConstexprBitset256 { | |
| std::array<uint8_t, 32> blocks{}; |
NewerOlder