jellyfish icon indicating copy to clipboard operation
jellyfish copied to clipboard

Build `blst` in portable mode when building for older processors

Open jbearer opened this issue 2 years ago • 6 comments

https://github.com/supranational/blst/blob/master/bindings/rust/README.md

jbearer avatar Sep 06 '23 19:09 jbearer

cc @mrain

chancharles92 avatar Sep 06 '23 19:09 chancharles92

I'm not sure how this would work exactly because we don't know the processor when we're building, just the architecture, I think. It's possible that we need separate Docker images of all services that depend on this in order to support older processors. cc @Ancient123

jbearer avatar Sep 06 '23 19:09 jbearer

That doc says we should just need to trigger the portable flag while compiling.

Ancient123 avatar Sep 06 '23 19:09 Ancient123

What I'm worried about is if unconditionally setting that flag disables some optimization that would work on newer processors

jbearer avatar Sep 06 '23 19:09 jbearer

To me, the issue feels like an intel ADX thing. We may compile 2 images for older CPUs and new ones.

mrain avatar Sep 06 '23 19:09 mrain

That would match up with the processor having issues. It was haswell which is the generation right before ADX got added.

Ancient123 avatar Sep 06 '23 19:09 Ancient123