인터랙티브 컴파일 인터페이스
Interactive Compilation InterfaceICI(Interactive Compilation Interface)는 고급 컴파일러 독립 및 하위 컴파일러 의존 API를 갖춘 플러그인 시스템으로, 현재 블랙박스 컴파일러를 협업 모듈식 인터랙티브 도구 세트로 변환합니다.MILE POST [1][2]프로젝트 중에 그리고리 퍼신에 의해 개발되었습니다.ICI 프레임워크는 컴파일러와 사용자가 정의할 수 있는 플러그인 사이의 "미들웨어" 인터페이스 역할을 합니다.프로덕션 품질의 컴파일러 인프라스트럭처를 개방하여 재사용함으로써 프로그램 분석 및 계측, 세분화된 프로그램 최적화, 새로운 개발 및 연구 아이디어의 단순한 프로토타이핑이 가능해지고 새로운 컴파일러 툴이 처음부터 구축되지 않습니다.예를 들어, MILEPOST GCC에서는 통계 분석 및 기계 학습에 기초한 컴파일러 및 아키텍처 설계 및 프로그램 최적화를 자동화하고 프로그램 실행 시간, 코드 크기 및 컴파일 시간을 개선하기 위해 예측 가능한 최적화를 수행합니다.
개발
ICI는 버전 4.5 이후[3] 메인라인 GCC에서 사용할 수 있게 되었습니다.
- 공동 개발 웹사이트
- Google Summer of Code' 2009 확장: 다면체 변환, 기능 수준 런타임 적응 및 집단 최적화를 포함한 세분화된 프로그램 최적화를 가능하게 합니다.
- 개발 메일링 리스트
다운로드
- ICI 2.0 - 2009년 5월에 GCC용으로 출시되었습니다.
- ICI 1.0 - 2008년에 GCC용으로 출시되었습니다.
- ICI 베타 - 2006–2008년 GCC용으로 개발.
- ICI 베타 - 2004-2006년에 Open64/PathScale 컴파일러용으로 개발되었습니다.
레퍼런스
- ^ 그리고리 퍼신일괄 조정 이니셔티브: 컴퓨팅 시스템의 개발과 최적화를 자동화 및 가속화합니다.2009년 6월 캐나다 몬트리올 GCC 정상회의 진행 상황 (링크)
- ^ 그리고리 퍼생, 유리 카슈니코프, 압둘 와히드 메몽, 즈비그니예프 참스키, 올리비에 테맘, 미르체아 나몰루, 엘라드 욤토브, 빌하 멘델송, 아얄작스, 에릭 쿠르투아, 프랑수아 보댕, 빌라드, 바냉Milepost gcc: 머신러닝이 가능한 셀프튜닝 컴파일러 International Journal of Parallel Programming, Volume 39, 제3호, 페이지 296-327, 2011년 6월 (link)
- ^ "GCC plugins". Retrieved 2017-05-30.