컴파일러 작성 전에 컴퓨터 아키텍처를 이해하고 컴파일러가 효율적인 기계 코드를 생성하기 위해 무엇을 생성해야 하는지 알아야 한다고 생각함. 학교나 대학에서 컴퓨터 아키텍처와 시스템 프로그래밍을 점점 덜 중요시하는 경향이 있지만, 이 지식은 업계 최고의 일자리를 얻는 데 중요함.
한 사용자는 MANGA(메타, 애플, 엔비디아, 구글, 아마존) 회사의 컴파일러 엔지니어링 팀 인터뷰를 통과하는 데 도움이 된 특정 과정을 언급함. 워털루 대학의 저수준 컴퓨팅 시스템 커리큘럼이 이미 뛰어났고, 오픈 소스 컴파일러 프로젝트에 기여하고 있었지만, 이 과정은 인터뷰 중 가장 어려운 질문에 답하는 데 도움이 됨.
고급 컴파일러 최적화에 대한 심도 있는 학술 자료가 부족하다고 느낌. 많은 과정들이 입문 수준이며, 실제로 흥미로운 기술을 배우려면 인기 있는 오픈 소스 컴파일러의 소스 코드를 깊이 파고들어야 함.
컴파일러 분야는 약 30년 동안 크게 발전하지 않았음. 2004-2006년에 페루자 대학에서 강의를 했는데, 당시 사용한 자료가 이미 15-20-25년 된 것이었음. 최근에 변화가 있는 것으로 보임.
고급 주제를 자신의 속도로 학습할 수 있는 과정이 있어서 기쁨. 컴파일러 엔지니어로서의 경력을 원했지만, 거주 지역에서는 교육과 직업 기회가 많지 않음. 미국의 직업 시장은 경쟁이 치열하며, 어떻게 진입해야 할지 모르겠음. 학사 과정 중 수강한 과정이 유일한 경험임.
"통합된 가비지 컬렉션 이론"도 포함되어 있어서 학생들이 참조 카운팅(RC)과 추적 가비지 컬렉션(GC)에 대한 올바른 이해를 할 수 있음.
20년 전에 참석한 일반 컴파일러 구축 과정에서 다룬 내용과 기본적으로 동일함. 몇몇 새로운 논문이 링크되어 있어서 살펴볼 가치가 있음. 18년 동안 컴파일러 소스 코드를 보지 않아 프로파일링과 경로 기반 최적화에 대해 뒤처진 느낌임. 또한 ML을 보면 더 고급 SIMD 기술이 있을 것으로 추측함.
CS 6120은 코넬 대학의 에이드리언 샘슨이 진행하는 프로그래밍 언어 구현에 관한 박사 과정임. 이 과정이 매우 고급인지 궁금함.
몇 년 전 여름에 이 과정을 온라인으로 수강하고 많은 것을 배움. Bril IR에서 작은 이슈에 대한 PR을 제출하고 교수와 함께 수정하는 것이 매우 흥미로웠음을 공유함.
Hacker News 의견