New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Execution primitives, Data primitives and operations #2
Comments
Question about the dot product operation . Should operations like dot product be represented as a combination of DAG operations? Should operations like dot product be "special nodes" with custom or C++ optimized logic? |
In the first step supporting 0, 1, and 2 dimensional data will be a good starting point to get the whole infrastructure in place. |
@hkaiser @stevenrbrandt I've started implementing some algorithms in Python (matrix factorizations) in the unit testing directory. This should help demonstrate some end-user challenges that we'll have to sort out and help guide the front/back end implementations. Hopefully the examples clarify the use case(s) a bit. |
exploratory data analysis enabling primitives:
|
We have started to add 3D data structure support to some of the primitives (see #665). |
Execution primitives
Data Primitives
Operation Primitives
map
(Adding map_operation() primitive #307),parallel_map
(Adding parallel_map(), map() now preserves execution ordering #371)filter
(Filter operation #308)fold
(Fold operation #309)scan
join_update
set
,swap
, ...)A[ A.indices() % 2 == 0 ] = 1.0
I/O Primitives
Control Structure Primitives
==
,!=
,<
,>
,<=
,>=
) (@hkaiser, see More primitives #49)&&
,||
) (@hkaiser, see More primitives #49)!
,-
) (@hkaiser, see Adding unary_minus and unary_not primitives #52)if(cond, true_case, false_case)
(@aserio, see Adding if2 #74)while(cond, body)
repeat evaluatingbody
untilcond
becomes false (@hkaiser, see More primitives #49)block(...)
: sequentially evaluate all given arguments (@hkaiser, see Adding block and parallel_block primitives #54)parallel_block(...)
: concurrently evaluate all given arguments (@hkaiser, see Adding block and parallel_block primitives #54)The text was updated successfully, but these errors were encountered: