Closed Bug 1592869 Opened 5 years ago Closed 5 years ago

Use NEON for ctr_xor

Categories

(NSS :: Libraries, enhancement, P1)

ARM64
Linux
enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: m_kato, Assigned: m_kato)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

This bench is on Amazon's arm64 instance (Cortex-A72). Using NEON for ctr_xor, aes_ctr improves 30%-40%.

Before

 #     mode          in symmkey  opreps  cxreps     context          op   time(sec)     thrgput
 aes_ctr_d         2Gb     256     35M       0       0.000   10000.000      10.000       217Mb

 #     mode          in symmkey  opreps  cxreps     context          op   time(sec)     thrgput
 aes_ctr_e         2Gb     256     35M       0       0.000   10000.000      10.000       218Mb

After

 #     mode          in symmkey  opreps  cxreps     context          op   time(sec)     thrgput
 aes_ctr_d         2Gb     256     48M       0       0.000   10000.000      10.000       294Mb

 #     mode          in symmkey  opreps  cxreps     context          op   time(sec)     thrgput
 aes_ctr_e         2Gb     256     48M       0       0.000   10000.000      10.000       295Mb

Android/arm32 build uses NEON as default compiler option, and we don't support non-NEON device on Android, so it can use NEON as default even if Android/arm32.

Blocks: 1555407, 1570313

Using NEON for ctr_xor, aes_ctr can improve 30%-40%i decode/encode time on Cortex-A72.

Status: NEW → ASSIGNED
Priority: -- → P1
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → 3.48
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: