채플(프로그래밍 언어)
Chapel (programming language)![]() | |
패러다임 | 객체 지향 분할된 글로벌 주소 공간 병렬 프로그래밍 |
---|---|
설계자 | 데이비드 캘러한, 한스 지마, 브래드 체임벌린, 존 플레비악 |
개발자 | 크레이 주식회사 |
처음 등장한 | 전( |
안정된 릴리스 | 1.25.1 / 2021년 12월 , 전( |
타이핑 분야 | 정적인 추론된 |
플랫폼 | 멀티플랫폼 |
OS | Mac OS, Linux, POSIX, Windows (Cygwin 탑재) |
면허증. | Apache 라이센스 2.0 |
파일 이름 확장자 | .chpl |
웹 사이트 | chapel-lang |
영향을 받다 | |
Ada, C#,[1] C, Fortran, C++, Java, HPF, ZPL, Cray MTA/XMT를 C 및 [2]Fortran으로 확장. |
Cascade High Productivity Language인 Chapel은 [3]Cray가 개발한 병렬 프로그래밍 언어입니다.DARPA의 High Productivity Computing Systems(HPCS) 프로그램에 참가하고 있는 Cray Cascade 프로젝트의 일환으로 개발되고 있습니다.이 프로그램은 2010년까지 슈퍼컴퓨터의 생산성을 높이는 것을 목표로 하고 있습니다.Apache 라이센스 [4]버전 2에 따라 오픈 소스 프로젝트로 개발 중입니다.
목표들
Chapel은 현재 프로그래밍 언어보다 높은 수준의 표현을 제공하고 알고리즘 표현과 데이터 구조 구현 세부 사항 간의 분리를 개선함으로써 병렬 컴퓨터 전반과 특히 캐스케이드 시스템의 프로그래밍 가능성을 향상시키는 것을 목표로 합니다.
언어 디자이너들은 Fortran, C 또는 C++ 사용자가 OpenMP 및 MPI 등의 기술을 사용하여 프로시저 코드를 작성하는 것과 Java, Python 또는 Matlab을 선호하는 신규 졸업 컴퓨터 프로그래머와의 격차를 해소하기 위해 채플을 목표로 하고 있습니다.e(C++ 또는 C).채플은 첫 번째 언어 사용자를 소외시키지 않으면서 후자의 언어 스위트가 제공하는 [2]생산성 향상을 제공해야 합니다.
특징들
Chapel은 데이터 병렬화, 태스크 병렬화 및 중첩 병렬화에 대한 추상화를 지원하여 높은 수준의 다중 스레드 병렬 프로그래밍 모델을 지원합니다.데이터 배포 및 서브컴퓨팅의 데이터 중심 배치를 위한 추상화를 통해 프로그램 내 데이터 및 계산의 인접성을 최적화할 수 있습니다.오브젝트 지향 개념과 범용 프로그래밍 기능을 통해 코드 재사용과 범용성을 실현합니다.예를 들어 채플은 [5]로케일의 선언을 허용합니다.
Chapel은 이전 많은 언어에서 개념을 차용하고 있지만, 병렬 개념은 고성능 Fortran(HPF), ZPL 및 Cray MTA가 Fortran과 C로 확장한 아이디어를 기반으로 합니다.
「 」를 참조해 주세요.
메모들
- ^ "Chapel spec (Acknowledgments)" (PDF). Cray Inc. 2015-10-01. Retrieved 2016-01-14.
- ^ a b Chamberlain, Bradford L. "A Brief Overview of Chapel" (PDF). Cray Inc. Retrieved 22 April 2015.
- ^ Lightfoot, David E. (2006). Modular programming languages: 7th Joint Modular Languages Conference. p. 20. ISBN 978-3-540-40927-4.
- ^ "Chapel license". Chapel.Cray.com. Retrieved November 15, 2015.
- ^ Bongen Gu; Wikuan Yu; Yoonsik Kwak (June 28–30, 2011). "Communication and Computation Overlap through Task Synchronization in Multi-locale Chapel Environment". In James J. Park, Laurence T. Yang and Changhoon Lee (ed.). Future Information Technology, Part I: 6th International Conference. Loutraki, Greece: Springer-Verlag. pp. 285–292. doi:10.1007/978-3-642-22333-4_37. ISBN 978-3-642-22332-7.
레퍼런스
- Chamberlain, Bradford L. (2011). "Chapel (Cray Inc. HPCS Language)". In Padua, David (ed.). Encyclopedia of Parallel Computing, Volume 4. Springer. ISBN 9780387097657.
추가 정보
- Brueckner, Rich (August 6, 2014). "Why Chapel for Parallel Programming?". InsideHPC. Retrieved 2015-03-23.
- Dun, Nan; Taura, K. (2012). "An Empirical Performance Study of Chapel Programming Language". Parallel and Distributed Processing Symposium Workshops & PHD Forum (IPDPSW), 2012 IEEE 26th International. IEEE: 497–506. doi:10.1109/IPDPSW.2012.64. ISBN 978-1-4673-0974-5.
- Padua, David, ed. (2011). Encyclopedia of Parallel Computing. Vol. 4. Springer Science & Business Media. pp. 249–256. ISBN 9780387097657.
- Panagiotopoul, K.; Loidl, H. W. (2016년)"채플을 위한 투명 복원 태스크 병렬화" 병렬 및 분산 처리 심포지엄 워크숍(IPDPSW), 2016년 IEEE 국제 심포지엄, 시카고, doi: 10.1109/IPDPSW.2016.102 ISBN 978-1-5090-3682-0