Difference between revisions of "GPU621/Chapel"
Lhuangtang (talk | contribs) |
Lhuangtang (talk | contribs) (→Variables) |
||
Line 14: | Line 14: | ||
var myVariable1: int; | var myVariable1: int; | ||
writeln("myVariable1 = ", myVariable1); | writeln("myVariable1 = ", myVariable1); | ||
+ | |||
+ | const and param can be used to declare runtime constants and compile-time constants respectively. A const must be initialized in place, but can have its value generated at runtime. A param must be known at compile time. | ||
+ | |||
+ | const myConst: real = sqrt(myVariable2); | ||
+ | param myParam = 3.14; | ||
+ | writeln("myConst = ", myConst, ", myParam = ", myParam); | ||
= Reference = | = Reference = |
Revision as of 21:55, 29 November 2022
Introduction
The Chapel is an open-source programming language designed for productive parallel computing at scale. The Chapel compiler is written in C and C++14. The backend is LLVM, written in C++. The goal of Chapel is to improve the programmability of parallel computers in general.
Installation
- The release note: https://chapel-lang.org/releaseNotes.html
- Download Page: https://chapel-lang.org/download.html
Basic
Variables
Variables are declared with the var keyword. Variable declarations must have a type, initializer, or both.
var myVariable1: int; writeln("myVariable1 = ", myVariable1);
const and param can be used to declare runtime constants and compile-time constants respectively. A const must be initialized in place, but can have its value generated at runtime. A param must be known at compile time.
const myConst: real = sqrt(myVariable2); param myParam = 3.14; writeln("myConst = ", myConst, ", myParam = ", myParam);
Reference
- The Chapel Programming Language Offical Site: https://chapel-lang.org/
- The Chapel Introduction Vidro: https://www.youtube.com/watch?v=7Qk8T7_bevo
- The Chapel Documentation: https://chapel-lang.org/docs/#
- Full-Length Chapel Tutorial: https://chapel-lang.org/tutorials.html
- Specific Chapel Concepts or Features: https://chapel-lang.org/docs/primers/
- The Chapel Promotional Video: https://youtu.be/2yye1yJPcsg
- The Chapel Overview Talk Video: https://youtu.be/ko11tLuchvg
- The Chapel Overview Talk Slide: https://chapel-lang.org/presentations/ChapelForHPCKM-presented.pdf
- Comparative Performance and Optimization of Chapel: https://chapel-lang.org/CHIUW/2017/kayraklioglu-slides.pdf
- The Parallel Research Kernels: https://www.nas.nasa.gov/assets/pdf/ams/2016/AMS_20161013_VanDerWijngaart.pdf
- The Chapel Tutorial: https://www.youtube.com/watch?v=QiyLkfYHEvg
- The Chapel Tutorial: https://www.youtube.com/watch?v=kCI0riVEjlk