컨웨이의 생명 게임에서 구축된 2단계 파이프라인 무한 레지스터 머신

2025-08-10

이 기사는 일련의 기사 중 네 번째로, 컨웨이의 생명 게임에서 구축된 2단계 파이프라인 무한 레지스터 머신(URM)의 구축에 대해 자세히 설명합니다. 튜링 완전한 4명령어 CPU인 URM은 15의 소인수분해를 수행하는 모습이 보여집니다. 저자는 ALU, 레지스터 파일, ROM 및 명령어 실행을 포함한 URM의 설계를 설명하고, 생명 게임에서의 효율적인 회로 설계, 즉 트랜지스터 수가 아닌 회로 길이를 우선시하는 것의 중요성을 강조합니다. 속도 향상을 위해 2단계 파이프라인이 구현되었습니다. 마지막으로, 저자는 더욱 효율적인 설계를 위한 미래의 개선 계획을 발표합니다.

더 보기

84,688개의 정규 표현식으로 만든 체스 엔진

2025-01-07

Nicholas Carlini는 휴가 기간 동안 84,688개의 정규 표현식을 사용하여 2단계 미니맥스 알고리즘의 체스 엔진을 만드는 엄청난 프로젝트를 수행했습니다. 그는 분기가 없는 조건부 실행, SIMD 명령어 집합을 갖춘 정규 표현식 기반 가상 머신을 설계했습니다. 기호 실행 컴파일러는 Python 코드를 정규 표현식 시퀀스로 변환하여 병렬 계산을 가능하게 합니다. 이 엔진은 SIMD를 활용하여 여러 조각의 이동을 동시에 계산하고, 정교한 정규 표현식 최적화를 통해 속도를 향상시킵니다. 깊이는 제한적이지만, 정규 표현식의 놀라운 계산 능력을 보여줍니다.

더 보기

AI 생성 웹사이트: 기술과 지식의 실험

2024-12-31

보안 연구원 Nicholas Carlini는 12일간의 실험을 진행했습니다. 매일 다른 언어 모델을 사용하여 자신의 웹사이트 홈페이지와 자기소개를 다시 작성했습니다. 그 결과 모델은 시각적으로 훌륭한 웹페이지를 생성하는 데 능숙했지만, 사실의 정확성에는 크게 부족했습니다. 예를 들어, o1-mini 모델이 생성한 웹페이지에는 43개의 진술이 있었는데, 그중 32개는 완전히 잘못되었고, 9개는 큰 오류가 있었으며, 정확한 것은 단 2개뿐이었습니다. 이는 LLM에서 "기술"(웹페이지 생성)과 "지식"(사실의 정확성)의 큰 차이를 보여주며, AI 생성 콘텐츠에 대한 의존에는 주의가 필요함을 시사합니다.

더 보기

3000바이트 C언어로 만든 ChatGPT 클론

2024-12-12

개발자 Nicholas Carlini는 GPT-2 모델을 기반으로 한 ChatGPT 클론을 단 3000바이트의 C언어 코드로 만들었습니다. 이것은 외부 라이브러리가 필요 없는 구현으로, GPT-2의 가중치 행렬과 BPE 파일을 로드하고 토큰화, 행렬 연산, 트랜스포머 추론, 역토큰화를 수행합니다. 출력 품질은 높지 않지만, 효율성이 뛰어나 최신 하드웨어에서 초당 여러 응답을 생성합니다. 이것은 복잡한 AI 모델을 구현하는 데 있어 컴팩트한 코드의 가능성을 보여줍니다.

더 보기
AI C언어