Claude AI가 만든 C 컴파일러 vs GCC: 성능 벤치마크 비교

Original: Claude's C Compiler vs. GCC View original →

AI Feb 9, 2026 By Insights AI (HN) 2 min read 4 views Source
This article is not available in your selected language. Showing the original version.

Claude가 만든 C 컴파일러, 실제로 어떨까?

Anthropic이 최근 Claude Opus 4.6으로 완전히 작성한 C 컴파일러(CCC)를 공개하며 "Linux 커널을 컴파일할 수 있다"고 주장했습니다. 100% AI가 작성한 코드로 Rust로 구현되었으며, x86-64, i686, AArch64, RISC-V 64를 지원합니다. 과연 실제 성능은 어떨까요?

벤치마크 환경

공정한 비교를 위해 동일한 하드웨어(6 vCPU, 16GB RAM Debian VM)에서 GCC 14.2.0과 CCC를 테스트했습니다. SQLite 3.46과 Linux 커널 6.9을 컴파일 대상으로 선택했습니다.

주요 결과 요약

Linux 커널 컴파일

  • 성공 여부: GCC는 성공, CCC는 링커 단계에서 실패 (40,784개 오류)
  • 컴파일 시간: GCC 73.2분 vs CCC 42.5분 (C 파일만)
  • 메모리 사용: GCC 831MB vs CCC 1,952MB (2.3배)

CCC는 커널의 모든 C 소스 파일(2,844개)을 컴파일 오류 없이 처리했지만, __jump_table__ksymtab 재배치 항목이 잘못되어 링킹에 실패했습니다.

SQLite 벤치마크

  • 컴파일 시간: GCC -O0 64.6초 vs CCC 87초 (1.3배 느림)
  • 바이너리 크기: GCC 1.55MB vs CCC 4.27MB (2.7배)
  • 실행 속도: GCC -O0 10.3초 vs CCC 2시간 6분 (737배 느림)
  • 메모리 사용: 컴파일러가 272MB vs 1,616MB (5.9배)

왜 이렇게 느릴까?

1. 레지스터 스필링(Register Spilling)

CCC의 가장 큰 성능 문제는 과도한 레지스터 스필링입니다. CPU 레지스터를 효율적으로 사용하지 못하고 모든 변수를 스택에 저장해 메모리 접근이 급증합니다. SQLite의 핵심 함수 sqlite3VdbeExec의 경우:

  • GCC: 383줄의 어셈블리 코드, 레지스터 직접 사용
  • CCC: 1,189줄 (3.1배 더 많음), 모든 연산이 스택 → rax → 스택 패턴

2. 최적화 플래그 무시

CCC는 -O0, -O2, -O3 모두 동일한 바이너리를 생성합니다. 최적화 옵션이 실제로 아무 역할도 하지 않습니다.

3. 코드 크기 팽창

CCC가 생성한 바이너리는 GCC보다 2.78배 크며, 이로 인해 명령어 캐시 미스가 증가하고 성능이 더욱 저하됩니다.

서브쿼리가 158,000배 느린 이유

NOT IN (subquery) 패턴은 SQLite가 중첩 루프를 실행하게 만듭니다. 외부 테이블 100,000행 × 내부 테이블 10,000행 = 약 10억 번의 반복입니다. CCC의 4배 반복당 오버헤드와 2.78배 큰 바이너리로 인한 캐시 압력이 복합적으로 작용해 158,000배 느려졌습니다.

CCC의 성과와 한계

성공한 부분

  • 정확성: 커널의 모든 C 파일을 컴파일하고 SQLite의 모든 쿼리에서 올바른 결과 출력
  • 안정성: 모든 테스트에서 크래시나 segfault 없음
  • 호환성: GCC 명령줄 플래그를 수용하는 드롭인 대체

한계

  • 실행 성능: 복잡한 연산에서 737~158,000배 느림
  • 링커 호환성: 커널의 특수 섹션에 대한 잘못된 재배치 생성
  • 최적화: 최적화 플래그가 실제로 작동하지 않음
  • 디버깅: DWARF 데이터 누락, 손상된 프레임 포인터

결론

Claude의 C 컴파일러는 AI가 복잡한 소프트웨어를 구축할 수 있다는 것을 입증한 놀라운 성과입니다. 하지만 실제 사용에는 아직 멀었습니다. 효율적으로 실행되는 코드를 원한다면 GCC나 Clang 같은 프로덕션 컴파일러가 여전히 유일한 선택지입니다.

이 벤치마크는 AI가 "작동하는" 소프트웨어를 만들 수 있지만, "효율적인" 소프트웨어를 만드는 것은 여전히 수십 년의 인간 전문 지식이 필요하다는 것을 보여줍니다.

Share:

Related Articles

AI 6d ago 2 min read

Anthropic published a March 6, 2026 case study showing how Claude Opus 4.6 authored a working test exploit for Firefox vulnerability CVE-2026-2796. The company presents the result as an early warning about advancing model cyber capabilities, not as proof of reliable real-world offensive automation.

Comments (0)

No comments yet. Be the first to comment!

Leave a Comment

© 2026 Insights. All rights reserved.