ct-clmsn / chplx Goto Github PK
View Code? Open in Web Editor NEWA Chapel backend
License: Apache License 2.0
A Chapel backend
License: Apache License 2.0
Integrate fmt and tinyutf8 into the backend.
Extend backend to consume and generate for, forall, coforall, and while support.
these lists are a work in progress (subject to change)
passes
variable declaration with/without value initialization
expressions
function support (user defined)
control flow
integral type support
user defined types
module support
Execution control
for
loopData types
Task Parallelism and Synchronization
begin
(#21)cobegin
(#21)coforall
loopData Parallelism
Distributed Programming
Convert the AST-tree provided by the chapel frontend into an intermediate structure representing the program to be generated. The following tasks will :
Implement yield functions
Divide generated code into 3 files
Implement ctest (cmake test infrastructure) for code generation
Implement function (no yield), record, class support
The following code in backend/test/heat.chpl
segmentation faults. The sequential version of the loop is working correctly.
Parallel version
chplx::forall(chplx::Range(0, 4), [&](auto i) {
#line 44 "heat.chpl"
data(i) = 1 + (((i - 1) + nx) % nx);
#line 45 "heat.chpl"
data2(i) = 0;
});
Sequential version
chplx::forLoop(chplx::Range(0, 4), [&](auto i) {
#line 44 "heat.chpl"
data(i) = 1 + (((i - 1) + nx) % nx);
#line 45 "heat.chpl"
data2(i) = 0;
});
Separate concerns associated with symbol building and code generation.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.