iotaledger / entangled

enTangle'd is an amalgamation of all things Tangle
Apache License 2.0
113 stars 66 forks source link

Pcurl improvements #1412

Closed semenov-vladyslav closed 4 years ago

semenov-vladyslav commented 4 years ago

Ptrit/pcurl implementation using SIMD (see README).

When building with bazel ptrit and pcurl configuration flags must be passed via --define:

TODO:

semenov-vladyslav commented 4 years ago

Also, ssize_t causes problems on Windows, as it's not a standard type.

semenov-vladyslav commented 4 years ago

Changed pearl diver search logic a bit: search range is split into fixed and variable ranges. The fixed range is initialized with different n * PTRIT_SIZE integer values, where n is the number of threads. The variable range is initialized with "all -1s", so when ptrit_hincr overflows that means that the variable range is completely exhausted and the search has failed.

thibault-martinez commented 4 years ago

I allowed myself to tick two items of your list because I created the following related issues: