microsoft / APSI

APSI is a C++ library for Asymmetric (unlabeled or labeled) Private Set Intersection.
MIT License
186 stars 42 forks source link

APSI goes Python #30

Closed LGro closed 1 year ago

LGro commented 2 years ago

Hi folks, just wanted to let you know that PyAPSI is available now for Linux via PyPi.org, enabled by your great work here. In case you'd like to give it a spin, please do so and let me know how it goes. And in case you want to start a section in the APSI README pointing to implementations / wrappers in other languages, I'd be stoked to see PyAPSI listed there. If you have ideas regarding a transparent versioning scheme I'd be happy to read about them. Also, thanks again to @kimlaine for helping me over the initial bumps with the stream channel setup.

LGro commented 2 years ago

It seems like one key challenge of distributing pre-built packages still is that the build pipeline for APSI and its dependencies load support for specific CPU features depending on the build environment's CPU. This results in incompatibility with older CPUs when a package is built on a recent CPU (e.g. on a standard GitHub Actions runner). I already inquired about options to manually enable AVX2 support in #25 but there seem to be additional features / optimizations like it that I haven't pin pointed yet.