CWN(CHANGE WITH NEWS) - MIT 과학자들, 고성능 코드 작성을 위한 프로그래밍 언어 ‘엑소(Exo)’ 개발

  • 구름많음인천19.1℃
  • 구름많음순천16.1℃
  • 흐림군산19.4℃
  • 구름많음영월16.5℃
  • 구름많음홍성19.3℃
  • 구름많음진도군17.3℃
  • 흐림양평19.2℃
  • 구름많음서울20.4℃
  • 구름조금속초21.2℃
  • 구름많음여수22.7℃
  • 맑음울산19.7℃
  • 구름조금함양군16.8℃
  • 흐림동두천17.8℃
  • 구름조금밀양18.6℃
  • 구름조금보령19.3℃
  • 구름조금목포21.6℃
  • 구름많음고창군18.1℃
  • 구름조금경주시17.3℃
  • 구름많음동해18.8℃
  • 흐림서청주19.0℃
  • 맑음북부산19.3℃
  • 구름많음대관령13.5℃
  • 구름많음대전21.1℃
  • 맑음부산22.4℃
  • 구름많음거창15.4℃
  • 구름많음태백13.8℃
  • 구름많음인제17.1℃
  • 구름조금구미18.7℃
  • 구름많음문경16.9℃
  • 구름조금북창원20.9℃
  • 구름많음북춘천18.0℃
  • 구름많음장흥20.3℃
  • 구름많음파주17.0℃
  • 구름많음고흥18.5℃
  • 구름많음제주23.1℃
  • 흐림천안19.3℃
  • 맑음대구20.6℃
  • 구름조금울릉도19.9℃
  • 흐림이천18.6℃
  • 구름많음고산22.7℃
  • 구름많음춘천18.4℃
  • 구름많음영광군18.6℃
  • 구름조금산청17.5℃
  • 구름많음백령도18.2℃
  • 구름많음순창군19.2℃
  • 구름많음임실18.4℃
  • 구름많음해남18.9℃
  • 구름조금안동19.1℃
  • 구름조금의성16.6℃
  • 구름많음남원17.8℃
  • 구름많음광주20.3℃
  • 흐림제천15.9℃
  • 맑음울진18.1℃
  • 흐림충주18.5℃
  • 구름많음청송군15.4℃
  • 흐림원주19.3℃
  • 흐림정읍19.7℃
  • 구름많음부여19.1℃
  • 구름조금의령군15.7℃
  • 구름많음전주20.4℃
  • 구름조금완도20.8℃
  • 구름많음성산21.8℃
  • 맑음양산시19.6℃
  • 흐림보성군21.7℃
  • 구름많음정선군15.7℃
  • 구름많음고창18.7℃
  • 구름조금강릉21.6℃
  • 구름많음북강릉20.5℃
  • 구름조금진주16.9℃
  • 구름많음추풍령15.8℃
  • 구름많음영천17.5℃
  • 구름조금포항21.7℃
  • 구름조금철원17.3℃
  • 구름많음보은16.9℃
  • 구름조금흑산도20.2℃
  • 흐림부안19.8℃
  • 구름많음합천17.7℃
  • 구름많음청주22.2℃
  • 구름조금서산18.0℃
  • 구름많음서귀포23.6℃
  • 구름많음강화15.5℃
  • 구름조금수원19.2℃
  • 구름많음통영20.9℃
  • 구름조금광양시21.4℃
  • 구름많음홍천18.8℃
  • 구름조금김해시20.4℃
  • 구름많음장수14.8℃
  • 구름많음세종19.6℃
  • 구름많음창원21.0℃
  • 구름많음강진군20.0℃
  • 구름조금상주18.3℃
  • 구름많음남해20.1℃
  • 구름많음봉화14.8℃
  • 구름많음금산18.4℃
  • 구름조금영덕17.6℃
  • 구름많음거제18.6℃
  • 구름많음영주16.6℃
  • 2025.10.01 (수)

MIT 과학자들, 고성능 코드 작성을 위한 프로그래밍 언어 ‘엑소(Exo)’ 개발

안하영 / 기사승인 : 2022-07-13 12:02:19
  • -
  • +
  • 인쇄
MIT(Massachusetts Institute of Technology) 과학자들이 새로운 프로그래밍 언어인 엑소(Exo)를 개발했다.[사진출처=MIT 홈페이지]
MIT(Massachusetts Institute of Technology) 과학자들이 새로운 프로그래밍 언어인 엑소(Exo)를 개발했다.[사진출처=MIT 홈페이지]

MIT(Massachusetts Institute of Technology) 과학자들이 새로운 프로그래밍 언어인 엑소(Exo)를 개발했다.

MIT뉴스는 7월 12일(현지 시각), “컴퓨터과학‧인공지능연구소(CSAIL) 과학자들이 하드웨어 가속기에서 고성능 코드를 작성하기 위해 엑소라는 새로운 프로그래밍 언어를 개발했다”고 밝혔다.

다른 프로그래밍 언어, 컴파일러와 달리 엑소편집(Exocompilation)이라는 개념을 기반으로 구축된 엑소는 전통적으로 많은 연구가 특정 하드웨어에 최적화 프로세스를 자동화한다는 데 착안해 개발됐다. 보통 하드웨어 가속기를 프로그래밍할 때는 완전히 새로운 소프트웨어 지원을 구축해야 한다. 가속기는 CPU보다 훨씬 빠르게 특정 작업을 실행할 수 있지만, 즉시 사용할 수는 없다. 소프트웨어는 전체 응용 프로그램 시스템과 호환되도록 가속기의 명령을 효율적으로 사용해야하기 때문이다.

엑소는 대상 하드웨어에 대해 매개 변수화된 컴파일러로, 동일한 컴파일러가 다양한 하드웨어 가속기에 적응할 수 있다. 특수 가속기 칩을 사용하면 훨씬 더 빠르게 수행하는 매우 복잡한 프로그램으로 변환할 수 있도록 돕는다. 예를 들면 엔지니어들은 엑소를 사용해 간단한 행렬 곱셈을 보다 복잡한 프로그램으로 변환할 수 있으며, 특수 가속기를 사용하면 훨씬 더 빠르게 실행할 수 있다.

엑소는 새로운 액셀러레이터와 컴파일하기 위해 지저분한 C++ 코드를 작성하는 대신 목표로 삼고 싶은 하드웨어의 ‘모양’을 기록하는 추상적이고 균일한 방법을 제공한다. 그런 다음 처음부터 완전히 새로운 것을 작성하는 대신 기존 엑소 컴파일러를 재사용해 새로운 설명에 적응할 수 있다.

이렇게 되면 하드웨어 혁신가의 아이디어에 새 컴파일러를 개발하는 데 비용 걱정을 할 필요가 없어진다. 덕분에 엔지니어들은 더 많은 아이디어를 시도하고 출시할 수 있다.

엑소편집의 또 다른 핵심은 성능 엔지니어가 컴파일러를 수정하지 않고도 최적화하려는 새 칩을 설명할 수 있다는 것이다. 전통적으로 하드웨어 인터페이스의 정의는 컴파일러 개발자에 의해 유지되지만, 이러한 새로운 가속기 칩의 대부분은 하드웨어 인터페이스가 독점적이다. 회사는 특정 칩을 지원하도록 수정된 전체 기존 컴파일러의 자체 복사본(포크)을 유지해야 한다. 이를 위해서는 성능 엔지니어 외에 컴파일러 개발자를 고용해야 한다. 하지만 엑소에서는 엑소컴파일러의 하드웨어별 백엔드 정의를 외부화한다. 이를 통해 오픈 소스 프로젝트인 엑소와 종종 독점적인 하드웨어 관련 코드를 더 잘 구분할 수 있다.

이번 연구에 참여한 MIT 조 나단 레이건-켈리(Jonathan Ragan-Kelley) 조교수는 “엑소의 미래는 보다 생산적인 스케줄링 메타언어를 탐구하고 GPU를 포함한 더 많은 가속기에 적용하기 위해 병렬 프로그래밍 모델을 지원하도록 의미론을 확장하는 것”이라고 밝혔다.

한편, 이번 연구는 미국 국방고등연구계획국(Defense Advanced Research Projects Agency)이 공동후원하는 반도체연구공사(Semiconductor Research Corporation) 프로그램 지원으로 진행됐다. 연구 결과는 2022 프로그래밍 언어 설계 및 구현에 관한 미국 컴퓨터학회 프로그래밍언어 분과(ACM SIGPLAN) 회의에서 발표됐다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue