최근 수정 시각 : 2026-09-18 18:57:53

Arm SVE



<bgcolor=#96834a> 명령어 집합
CISC x86 (AMD64● · IA-32● · IA-16) · M68K · MC68xx · MOS 65xx · Z80 · 8080 · 8051
System/360 · z/Architecture · PDP-11 · VAX
RISC Arm (A64 · A32 · T32) · RISC-V● · MIPS● · DEC Alpha● · Power ISA IBM Power · PowerPC · CELL-BE
LoongArch · OpenRISC · PA-RISC · SPARC
SuperH · Xtensa · AVR AVR32
VLIW
EPIC
E2K · IA-64 · Crusoe

<rowcolor=#fff> Arm 아키텍처
명령어 집합 A64 · A32 · T32 Thumb · Thumb-2 · Thumb-EE · Jazelle
SIMD · 부동소수점 확장
부동소수점 VFP · FP16 · BF16
SIMD/벡터 Neon · MVE Helium · SVE SVE2
행렬 SME SME2
기타 확장
보안 TrustZone · PAC · BTI · MTE · TME · CCA
암호화 AES · PMULL · SHA1 · SHA2 · SHA3 · SM3 · SM4
메모리 LSE LSE2 · LSE128 · LRCPC LRCPC2 · LRCPC3
가상화 VHE · NV2


1. 개요2. 특징3. 역사4. 기타5. 여담6. 관련 문서

1. 개요

Scalable Vector Extension

Arm 아키텍처의 벡터 확장 명령어 집합. 2016년 8월 발표되었으며, 2021년 SVE2가 발표되며 Armv9-A의 핵심 기능으로 소개되었다.

벡터 레지스터의 길이를 명령어 집합에 고정하지 않고 구현마다 128비트에서 2048비트 사이에서 정하도록 한 가변 길이 설계가 특징으로, 프로세서의 벡터 유닛 크기와 무관하게 같은 기계어를 그대로 실행할 수 있는 것이 특징이다.

그러나 Apple Silicon에서는 사실상 지원하지 않으며, SVE 지원 소프트웨어 또한 가변 길이로 최적화하는 대신 특정 CPU의 길이에 맞추는 경우가 많아 미묘한 상황이다.

2. 특징

기존 NEON이 128비트 고정 폭 SIMD인 것과 달리, SVE는 벡터 레지스터의 길이(VL)를 구현이 정한다.

3. 역사

후지쯔는 1990년대부터 자체 SPARC 프로세서로 슈퍼컴퓨터를 만들어 왔으나, 2011년 TOP500 1위에 오른 京(케이)의 후속작을 설계할 시점에는 SPARC 생태계가 크게 줄어들었기 때문에 대안으로 자체 코어 설계가 가능한 Arm을 선택하였다.

그러나 당시 Arm의 벡터 명령어 집합은 128비트 크기인 Neon이 유일했기 때문에 슈퍼컴퓨터의 처리량을 위해서는 256비트 또는 그 이상을 지원하는 새로운 벡터 확장이 필요했다.

이에 따라 후지쯔는 Arm과 협력하여 벡터 확장을 개발하였고, 2016년 8월 Arm이 SVE라는 이름으로 이를 공개하였다.

2018년 후지쯔는 512비트 SVE를 구현한 A64FX 프로세서를 발표하였고, 2020년 이를 탑재한 후가쿠가 TOP500 1위를 달성하였다.

2019년 기존에 Neon이 담당하던 정수와 미디어 처리 명령을 SVE에 추가한 SVE2가 발표되었다.

2021년 Armv9-A가 발표되며 SVE2가 핵심 기능으로 소개되었으며, 같은 해 출시된 레퍼런스 코어인 Cortex-X2, A710, A510에 128비트로 구현되었다.

4. 기타

Arm은 SVE의 가변 길이 사양을 홍보하였으나, 실질적으로 대부분의 Arm 코어는 128비트 VL로 구현된 상태이다. 소프트웨어 구현 또한 사정은 비슷해서 여러 VL에서 작동하는 VLA로 구현하는 대신 128비트 VL 전용으로 코드가 작성된 경우가 많다.

5. 여담

  • SVE 이전에도 Arm에는 벡터 명령이 있었다. Armv5~v7의 VFP(Vector Floating Point)는 이름 그대로 부동소수점 레지스터 여러 개를 묶어 한 명령으로 처리하는 짧은 벡터 모드를 갖고 있었으나 거의 쓰이지 않았고, Armv7에서 폐기되어 Neon으로 대체되었다.

6. 관련 문서