CPU 명령어 집합 비교

한눈에 보기

명령어 집합 아키텍처(ISA)는 소프트웨어와 CPU 사이의 규격이다. x86-64, Arm, RISC-V, Power ISA, SPARC는 각기 다른 생태계와 확장 규격을 가지며, ISA만으로 성능과 전력 효율을 결정할 수는 없다.

ISA와 마이크로아키텍처

ISA는 레지스터, 명령어 형식, 예외, 메모리 모델 등 소프트웨어가 의존하는 규칙을 정의한다. 마이크로아키텍처는 그 규칙을 파이프라인, 캐시, 실행 유닛과 분기 예측기로 구현한 설계다. 예를 들어 여러 세대의 Intel Core와 AMD Zen은 모두 x86-64를 실행하지만 내부 구조는 서로 다르다.

주요 ISA 비교

ISA강점고려사항주요 분야
x86-64방대한 PC·서버 소프트웨어 호환성레거시와 확장 규격이 많아 구현이 복잡Windows PC, 워크스테이션, 서버
Arm A-profile폭넓은 라이선스 생태계, 모바일부터 서버까지 확장OS·앱의 Arm64 네이티브 지원 여부가 환경마다 다름스마트폰, 태블릿, Mac, Windows on Arm, 서버
RISC-V개방형·모듈형 ISA, 맞춤형 확장 가능제품별 프로파일과 소프트웨어 성숙도 차이MCU, 임베디드, 연구, 일부 Linux 시스템
Power ISA엔터프라이즈 가상화와 대형 시스템 생태계범용 PC 소프트웨어 선택이 제한적IBM Power 서버, HPC
SPARC V9Solaris·Oracle 중심 엔터프라이즈 통합신규 범용 생태계가 제한적기존 UNIX·데이터베이스 시스템
LoongArch독자 ISA와 현지 생태계국제 소프트웨어·도구 호환 범위가 제한될 수 있음중국 내 PC·서버·임베디드

32비트와 64비트

64비트 ISA는 더 넓은 일반 레지스터와 주소 공간을 제공할 수 있다. 그러나 64비트라는 표기만으로 CPU가 더 빠르다는 뜻은 아니다. 운영체제, 애플리케이션, 드라이버가 해당 ISA와 ABI를 지원해야 하며, 오래된 32비트 프로그램 지원 정책은 운영체제마다 다르다.

SIMD와 행렬 확장

CPU는 여러 데이터를 한 명령으로 처리하기 위해 SIMD 확장을 사용한다.

  • x86: SSE, AVX, AVX2, AVX-512, AMX 등
  • Arm: NEON·Advanced SIMD, SVE, SVE2, SME 등
  • RISC-V: 벡터 확장과 프로파일에 따른 선택적 확장
  • Power: VSX, MMA 등

지원 여부는 제품별로 다르며, 명령어가 있어도 소프트웨어가 사용하지 않으면 효과가 없다. 일부 넓은 벡터 명령은 전력·클럭 동작에 영향을 줄 수 있다.

소프트웨어 호환성 확인 절차

  1. 운영체제의 ISA와 버전을 확인한다.
  2. 애플리케이션이 네이티브 바이너리를 제공하는지 확인한다.
  3. 커널 드라이버, 보안 모듈, 가상화 제품의 지원 여부를 확인한다.
  4. 컨테이너 이미지는 amd64, arm64, riscv64 같은 아키텍처 태그를 확인한다.
  5. 에뮬레이션은 호환성을 높이지만 성능과 기능 제한이 생길 수 있다.

확인 명령

Windows PowerShell:

[System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture
  • 목적: 운영체제가 실행되는 아키텍처를 확인한다.
  • 권한: 일반 사용자

Linux:

uname -m
  • 목적: 커널이 보고하는 머신 아키텍처를 확인한다.
  • 결과 예: x86_64, aarch64, riscv64

구조와 특징

쉽게 이해하기

CPU는 프로그램의 명령을 읽고 계산·제어 작업을 하는 프로세서다. 흔히 “컴퓨터의 두뇌”라고 부르지만 실제 PC는 CPU·RAM·GPU·저장장치·각종 컨트롤러가 함께 동작한다.

도식: 자체 제작. 실제 구조는 제품과 세대에 따라 달라질 수 있다.

구조와 특징

쉽게 이해하기

CPU는 프로그램의 명령을 읽고 계산·제어 작업을 하는 프로세서다. 흔히 “컴퓨터의 두뇌”라고 부르지만 실제 PC는 CPU·RAM·GPU·저장장치·각종 컨트롤러가 함께 동작한다.

관련 문서

참고 자료