forked from chapel-lang/chapel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
96 lines (73 loc) · 3.26 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
====================
Chapel Example Codes
====================
This directory contains a few simple "Hello, world!" example codes to
get started with Chapel program structure:
hello.chpl : a one-line Chapel "Hello, world!" program
hello2-module.chpl : a more structured "Hello, world!" program
hello3-datapar.chpl : a data parallel version of "Hello, World!"
hello4-datapar-dist.chpl : a distributed data parallel version
hello5-taskpar.chpl : a task parallel version of "Hello, World!"
hello6-taskpar-dist.chpl : a distributed task parallel version
It also contains subdirectories that contain more interesting
examples:
benchmarks/ : contains standard benchmarks written in Chapel
patterns/ : examples demonstrating common tasks
primers/ : introduce Chapel concepts narratively for new users
spec/ : example codes from the Chapel Specification (see below)
users-guide/ : example codes from the Chapel Users Guide
gpu/ : examples demonstrating Chapel's GPU support (see below)
Each subdirectory (except users-guide and spec) includes its own README file
with additional information on those examples.
------------------------
The spec directory tests
------------------------
The tests in the spec directory are automatically extracted from selected
examples in the Chapel Specification. The examples for a particular chapter
are in a directory specified by the chapter name (e.g., Arrays) and the name of
the test is in parenthesis after the word "Example" in the spec. Often times,
additional code has been added to make the code a complete, testable program.
-----------------------
The gpu directory tests
-----------------------
The tests in the gpu directory require that Chapel be built to use the GPU
locale model. To do this, set CHPL_LOCALE_MODEL=gpu and rebuild Chapel. For
more information about installing and using Chapel with gpu support see the
following technical note: https://chapel-lang.org/docs/technotes/gpu.html
------------------
Building the tests
------------------
Most of the examples can be compiled without explicitly listing any
additional source files. For example, the canonical "Hello, world!"
program can be compiled as follows:
chpl -o hello hello.chpl
We provide Makefiles in each directory that can be used to build a
single test in that directory by name:
gmake hello
Alternatively, you can build all the tests in a directory and its
subdirectories by simply using:
gmake
-----------
Other files
-----------
This directory:
README.testing : provides an introduction to using the Chapel testing system
start_test : the main script for the Chapel testing system
Logs/ : directory created by the test system to store logs
This directory and subdirectories:
*.chpl : the Chapel example programs
Makefile : Makefile for compiling the examples
COMPOPTS : used by the Chapel testing system -- see README.testing
NUMLOCALES : "
PREDIFF : "
SKIPIF : "
*.compopts : "
*.execopts : "
*.good : "
*.graph : "
*.notest : "
*.numlocales : "
*.prediff : "
*.perfkeys : "
*.skipif : "
*.timeout : "