Open lgarithm opened 6 years ago
The tensor library should have
To provide C API, we need to have dynamic types, too. Therefore we gonna to introduce the following 6 categories of data types.
owner | ref | view | |
---|---|---|---|
dynamic | tensor_t | tensor_ref_t | tensor_view_t |
static | std::tensor<R, r> | std::tensor_ref<R, r> | std::tensor_view<R, r> |
where R is the scaler type (float, double), r is the rank of tensor.
@luomai compling eager mode in C++ https://github.com/lgarithm/stdnn-ops/blob/dev/examples/example_layer_mlp.cpp
In a future (not near so far), the core library will be spitted into
a library for basic tensor data type
https://github.com/lgarithm/stdtensor
std::vector
np.array
a library for computation graph
https://github.com/lgarithm/nn-graph-experimental
a library for operators
https://github.com/lgarithm/stdnn-ops
The GPU implementation of this library can be just a simple wrapper around
cudnnthrust and cutlass.https://github.com/lgarithm/stdnn-ops-cuda
all of them should provide both C APIs (for embedded system) and C++ APIs.