Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add all the optimized NTRU #86

Merged
merged 2 commits into from May 20, 2019
Merged

Add all the optimized NTRU #86

merged 2 commits into from May 20, 2019

Conversation

mkannwischer
Copy link
Contributor

Closes #48
I updated the m4 implementation of ntruhrss701.
I also added m4 implementation for the other NTRU parameter sets using optimized polynomial multiplication from https://github.com/mupq/polymul-z2mx-m4

The cycle counts for different approaches are below. Toom4 with a threshold of 16 gives the best performance for all schemes.

HPS509

Karatsuba

N t cycles
509 32 127179
509 16 119143
509 8 129116

Toom3

N t cycles
509 43 141586
509 22 120596
509 11 117546
509 6 174951

Toom4

N t cycles
509 32 110819
509 16 104477
509 8 112100

HPS 677

Karatsuba

N t cycles
677 43 248573
677 22 211035
677 11 204815
677 6 307912
677 3 530449

Toom3

N t cycles
677 29 209386
677 15 183694
677 8 224222

Toom4

N t cycles
677 43 208976
677 22 179414
677 11 174936
677 6 254515

HPS 821

Karatsuba

N t cycles
821 26 319727
821 13 271657
821 7 357646

Toom3

N t cycles
821 35 270843
821 18 274863
821 9 273797

Toom4

N t cycles
821 26 267783
821 13 229798
821 7 296095

@joostrijneveld joostrijneveld merged commit bca2a07 into master May 20, 2019
@mkannwischer mkannwischer deleted the ntrum4 branch May 21, 2019 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update NTRU code [Round 2]
2 participants