quarkslab / NFLlib

NTT-based Fast Lattice library
MIT License
165 stars 52 forks source link

Add aligned_allocator for poly_p #9

Closed tlepoint closed 8 years ago

tlepoint commented 8 years ago

poly_p had no alignment (contrary to our tests) so I adapted a aligned memory allocator from http://jmabille.github.io/blog/2014/12/06/aligned-memory-allocator/ (just changed the construct and fixed the return type of deallocate) and now it works in Travis.

carlosaguilarmelchor commented 8 years ago

Good work @tlepoint !! @serge-sans-paille @aguinet is the PR ok with you too ?

serge-sans-paille commented 8 years ago

(quick answer) Ireally like the approach / concept. It's definitievly the way to go.

Concerning the implementation, what about including

http://www.boost.org/doc/libs/1_58_0/doc/html/align/tutorial.html

instead, it's header only, we could ship a copy and that's probably safer than the version you used (boost inside). I did not checked the dependencies though.

carlosaguilarmelchor commented 8 years ago

@serge-sans-paille indeed, but there is quite a lot of work to do to integrate all the gmp stuff too.

Can you propose a clean alternative soon ?

If not we can integrate @tlepoint 's proposal, which has the advantage of being ready. And you can open a second PR to replace it when you have the time to do it.

serge-sans-paille commented 8 years ago

On Tue, Apr 12, 2016 at 01:04:17PM -0700, Carlos Aguilar Melchor wrote:

@serge-sans-paille indeed, but there is quite a lot of work to do to integrate all the gmp stuff too.

Can you propose a clean alternative soon ?

If not we can integrate @tlepoint 's proposal, which has the advantage of being ready. And you can open a second PR to replace it when you have the time to do it.

I agree, let's move on to keep the motivation high! Let me just valide it on my laptop and I'll merge it.