Soul Player C64: 1MHz 사양의 코모도어 64에서 구동되는 실시간 트랜스포머

1MHz 성능의 Commodore 64에서 구동되는 약 25,000개의 파라미터를 가진 실시간 트랜스포머 모델 'Soul Player C64'가 공개되었습니다. ChatGPT와 동일한 디코더 전용 아키텍처를 6502 어셈블리어로 구현하여 토큰당 약 60초의 속도로 추론을 수행하며, 전체 프로그램과 모델은 플로피 디스크 한 장에 저장 가능합니다.

AI 요약

'Soul Player C64'는 1980년대 하이엔드 컴퓨터인 Commodore 64(C64)의 1MHz 프로세서 환경에서 현대적인 AI 기술인 트랜스포머를 구동하려는 혁신적인 프로젝트입니다. 이 모델은 ChatGPT, Claude 등 최신 대규모 언어 모델(LLM)과 동일한 '디코더 전용(decoder-only)' 구조를 따르며, 약 25,000개의 int8 파라미터를 기반으로 작동합니다. 개발자는 6502/6510 어셈블리어를 직접 사용하여 멀티헤드 자기주의(multi-head causal self-attention), Softmax, RMSNorm 등을 밑바닥부터 구현했습니다. 특히 정수 연산 환경에서 Softmax 점수 정규화를 위해 어텐션 점수를 17비트가 아닌 14비트로 시프트하는 기술적 돌파구를 마련하여 128개 엔트리의 지수 룩업 테이블이 유의미한 가중치를 생성할 수 있도록 했습니다. 사용자는 소문자로 메시지를 입력하고, 각 토큰이 생성될 때마다 SID 칩의 효과음을 들으며 1MHz 기기의 한계를 뛰어넘는 AI 추론 과정을 실시간으로 관찰할 수 있습니다.

핵심 인사이트

  • 극저사양 구동 성공: 1MHz CPU와 극히 제한된 자원을 가진 Commodore 64에서 약 25,000개의 파라미터를 가진 실시간 트랜스포머 모델 구현에 성공했습니다.
  • 현대적 아키텍처 채택: 2개 레이어, 4개의 어텐션 헤드(8차원), 32차원 임베딩, 64개의 FFN(Feed-Forward Network) 은닉 유닛 등 최신 LLM의 구조적 특징을 그대로 유지했습니다.
  • 정수 연산 최적화: 8비트 정수(int8) 양자화와 더불어, 소프트맥스 정규화 시 14비트 시프트 방식을 적용하여 정수 기반 어텐션이 균일화되는 문제를 해결했습니다.

주요 디테일

  • 추론 성능: 토큰 하나를 생성하는 데 약 60초가 소요되며, 전체 답변이 완성되기까지는 수 분의 시간이 필요합니다.
  • 데이터 사양: 20개 토큰의 컨텍스트 윈도우를 지원하며, 128개 토큰 규모의 BPE(Byte Pair Encoding) 토크나이저를 사용합니다.
  • 훈련 및 빌드: PyTorch와 NumPy를 사용하여 사용자 정의 말뭉치로 모델을 훈련할 수 있으며, GPU 환경에서 약 수 분 내에 학습이 완료됩니다.
  • 입출력 제한: 소문자 영문, 공백, 특정 구두점(. , ! ? ' : ; -)만 인식 가능하며, 대문자는 알 수 없는 토큰으로 처리됩니다.
  • 배포 형태: 전체 시스템은 .d64 디스크 이미지 형태로 제공되어 VICE 에뮬레이터나 실제 1541 플로피 드라이브에서 로드하여 실행할 수 있습니다.

향후 전망

  • 알고리즘 최적화의 증명: 고성능 GPU 없이도 알고리즘의 극한 최적화를 통해 40년 전 레트로 하드웨어에서 최첨단 AI 구조를 구현할 수 있음을 보여주어 교육적 가치가 높습니다.
  • 임베디드 AI 발전: 극도로 낮은 전력과 성능을 가진 임베디드 시스템이나 IoT 기기에서 효율적인 AI 추론 아키텍처를 설계하는 데 영감을 줄 것으로 기대됩니다.
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...