gARM: ARM64에 특화된 고성능 Go 컴파일러
(github.com/go-dockly)Go 언어의 단순성과 저수준 제어 및 고성능을 결합한 ARM64 어셈블리 컴파일러.
ARM 아키텍처에 특화된 최적화, 하드웨어 수준 튜닝, 보안 제어, 디버깅 도구 등을 제공.
- Go 컴파일러와 ARM 어셈블러들은 많지만 ARM의 고유한 기능을 활용하는 도구는 부족.
- ARM의 유연한 산술 명령어의 두 번째 피연산자
- 조건부 실행 기능
- 벡터화를 위한 NEON SIMD 연산
- 하드웨어 나누기 및 곱셈-누적 명령어
- ARM 아키텍처의 증가하는 지배력(Apple M 시리즈, AWS Graviton, 모바일 장치, 임베디드 시스템)으로 인해 ARM64에 특화된 최적화 도구의 중요성이 커지고 있습니다.
gARM
- 기본적으로 Generational GC를 사용하여 컴파일.
- GC 알고리즘 선택 또는 GC 미사용 옵션을 제공.
- ARM 서버에서 고성능 컴퓨팅을 지원합니다 (ARM64에서 Go 성능 5배 향상 목표).
- 성능이 중요한 크로스 플랫폼 모바일/임베디드 시스템에 적합합니다.
- ARM 인스턴스에서 실행되는 클라우드 애플리케이션에 적합합니다.
- (AST) -> (SSA) -> (IR) -> (Optimizer) -> (Assembly)