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

Set GOARM64=v8.4,lse,crypto #1407

Open
analytically opened this issue Feb 1, 2025 · 0 comments
Open

Set GOARM64=v8.4,lse,crypto #1407

analytically opened this issue Feb 1, 2025 · 0 comments
Labels
Priority: Normal Minor issue impacting one or more users Type: Feature Request A big idea that would be split into smaller pieces

Comments

@analytically
Copy link

Add support for GOARM64 environment variable in cloudflared builds to optimize performance on modern ARM servers, particularly AWS Graviton processors. This would allow users to target specific ARM CPU features and extensions like LSE (Large System Extensions) and hardware crypto acceleration.

  • Enables optimal performance on ARM servers by utilizing hardware-specific features
    Reduces CPU usage through hardware-accelerated crypto operations
  • Improves multi-threaded performance with LSE atomic instructions
  • Allows fine-grained control over ARM architecture compatibility requirements

I propose setting GOARM64=v8.4,lse,crypto

This provides:

  • ARMv8.4-A features for improved virtualization and memory management
  • LSE for better atomic operations and concurrency
  • Hardware crypto acceleration for TLS operations

This setting would provide optimal performance while maintaining compatibility with:

  • AWS Graviton 2/3
  • Modern ARM servers like Ampere Altra
  • Other ARMv8.4+ processors
@analytically analytically added Priority: Normal Minor issue impacting one or more users Type: Feature Request A big idea that would be split into smaller pieces labels Feb 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: Normal Minor issue impacting one or more users Type: Feature Request A big idea that would be split into smaller pieces
Projects
None yet
Development

No branches or pull requests

1 participant