ocean

Neurocean大约 8 分钟

ocean

Neurocean是一个全新的类脑研发和加速平台,支持类脑神经网络建模与加速,支持全脑尺度建模, 全面覆盖类脑计算建模需求,并针对CPU、GPU、神经拟态芯片等硬件进行专门的优化与运算加速。 在业务层面,全面覆盖科研、工程及商业化,支持PC、云服务及嵌入式设备,加速类脑智能的研发、应用及推广 More...

Classes

Name
classocean::AbstractModule
抽象模块,抽象模块为模型的组织提供灵活的管理及扩展能力
classocean::Argument
参数,提供了大量便捷的参数构建方法,极大方便了用户的使用。
classocean::ArgumentPointer
通用指针
classocean::DeviceUtils
设备工具
structocean::CaptureBuffer
数据捕获缓冲区
classocean::Executor
模型执行器
classocean::Filler
张量填充器
classocean::Node
节点, 模型基类, 提供对名称、描述等信息的管理
classocean::Model
模型, 模型是一个基础类,是所有模型的基础
classocean::NeuronGroup
神经元组是神经元的基础容器, 容纳了一群性质相近的神经元
classocean::ConnectionModel
连接模型是针对输入及输出间存在随机或任意连接关系的模型基础类
classocean::SynapseGroup
突触组是突触的基础容器,容纳一群特性相近的突触
classocean::DendriteGroup
树突组是树突的基础容器,容纳一群特性相近的树突
structocean::CompileOption
编译选项
structocean::RunOption
运行选项
classocean::Port
端口是模块端口机制的基础,是其它端口的基础
classocean::Input
输入端口
classocean::Output
输出端口
classocean::ProxyInput
代理输入端口
classocean::ProxyOutput
代理输出接口
classocean::Reference
引用端口
classocean::Connection
连接端口
classocean::Session
会话管理
classocean::Tensor
张量
classocean::Variable
变量基础类是变量的基础
classocean::SingleVariable
单变量,存储和持有单个数值或字符串
classocean::TensorVariable
张量变量
classocean::VariableUtils
变量赋值工具
classocean::VariableValue
变量值是数值存储容器,提供了对数值存储及使用的通用方法

Types

Name
enumArgumentType { ARG_SINGLE = 0, ARG_TENSOR, ARG_FILLER, ARG_STRING, ARG_GENERAL_OBJECT}
参数类型
enumDeviceType { DEVICE_CPU_COMMON = 0, DEVICE_CUDA, DEVICE_OPENCL, DEVICE_CPU_X86, DEVICE_ARM32, DEVICE_ARM64, DEVICE_RISCV, DEVICE_TYPE_NUMBER}
设备类型
enumDeviceBackend { DEVICE_BACKEND_CPU = 0, DEVICE_BACKEND_CUDA, DEVICE_BACKEND_OPENCL}
设备后端类型
enumExecutorStatus { EXEC_INITED = 0, EXEC_COMPILING, EXEC_COMPILE_ERROR, EXEC_COMPILED, EXEC_STATUS_INITED, EXEC_SETUP, EXEC_BEFORE, EXEC_RUN, EXEC_AFTER, EXEC_TEAR_DOWN, EXEC_RUN_ERROR, EXEC_PAUSE, EXEC_TERMINATE, EXEC_FINISHED}
执行器状态
enumStatus { STATUS_SUCCESS = 0, STATUS_FAILED = 1, STATUS_CREATE_EXEC_ENGINE_FAILED = 10, STATUS_SCHEDULE_MODEL_FAILED = 50, STATUS_FIT_TOGETHER_FAILED = 100}
运行状态
enum int8_tLayout { LAYOUT_INVALID = -1, LAYOUT_SINGLE_VALUE = 0, LAYOUT_SINGLE_STRING, LAYOUT_TENSOR_PARAM, LAYOUT_TZYX, LAYOUT_NCHW, LAYOUT_NHWC}
变量布局,描述变量类型
enum int8_tDataType { DATA_INVALID = -1, DOUBLE = 0, UINT64, INT64, FLOAT, UINT32, INT32, FP16, UINT16, INT16, UINT8, INT8}
数据类型
enum int32_tPortType { PORT_INVALID = -1, PORT_STATE = 0, PORT_IN = 50, PORT_IN_ONLY_READ, PORT_IN_PROXY, PORT_OUT = 100, PORT_OUT_FIXED_OUT, PORT_OUT_PROXY, PORT_REF = 200, PORT_REF_ONLY_READ, PORT_CONNECTION = 300}
端口类型
enum int32_tFillerType { FILLER_INVALID = -1, CONST_FILLER = 0, COPY_FILLER, UNIFORM_FILLER, LOG_NORMAL_FILLER, LOCAL_CONVOLUTION_FILLER = 100}
数据填充类型
enum uint8_tReduceType { REDUCE_SUM = 0, REDUCE_MEAN, REDUCE_MAX, REDUCE_MIN}
数据规约化类型
typedef std::shared_ptr< AbstractModule >PAbstractModule
抽象模块指针
typedef std::shared_ptr< ArgumentPointer >PArgumentPointer
通用参数指针
typedef std::shared_ptr< Executor >PExecutor
执行器指针
typedef std::map< std::string, VariableValue >FillerArguments
填充器参数列表
typedef std::shared_ptr< Node >PNode
节点指针
typedef std::shared_ptr< Model >PModel
模型共享指针
typedef std::weak_ptr< Model >RefModel
模型引用指针
typedef std::shared_ptr< NeuronGroup >PNeuronGroup
神经元组指针
typedef std::weak_ptr< NeuronGroup >RefNeuronGroup
神经元组引用指针
typedef std::shared_ptr< SynapseGroup >PSynapseGroup
突触组指针
typedef std::weak_ptr< SynapseGroup >RefSynapseGroup
突触组引用指针
typedef std::shared_ptr< DendriteGroup >PDendriteGroup
树突组指针
typedef std::weak_ptr< DendriteGroup >RefDendriteGroup
树突组引用指针
typedef std::shared_ptr< Port >PPort
端口指针
typedef std::weak_ptr< Port >RefPort
端口引用指针
typedef std::shared_ptr< Input >PInput
输入端口指针
typedef std::shared_ptr< Output >POutput
输出端口指针
typedef std::shared_ptr< ProxyInput >PProxyInput
代理输入指针
typedef std::shared_ptr< ProxyOutput >PProxyOutput
代理输出端口指针
typedef std::shared_ptr< Reference >PReference
引用端口指针
typedef std::shared_ptr< Connection >PConnection
连接端口指针
typedef std::shared_ptr< Variable >PVariable
变量指针
typedef std::weak_ptr< Variable >RefVariable
变量引用指针
typedef std::shared_ptr< SingleVariable >PSingleVariable
单变量指针
typedef std::weak_ptr< SingleVariable >RefSingleVariable
单变量引用指针
typedef std::shared_ptr< TensorVariable >PTensorVariable
张量变量指针
typedef std::weak_ptr< TensorVariable >RefTensorVariable
张量变量引用指针
typedef std::vector< uint64_t >TensorShape
张量形状

Functions

Name
const std::stringgetVersion()

Detailed Description

Neurocean是一个全新的类脑研发和加速平台,支持类脑神经网络建模与加速,支持全脑尺度建模, 全面覆盖类脑计算建模需求,并针对CPU、GPU、神经拟态芯片等硬件进行专门的优化与运算加速。 在业务层面,全面覆盖科研、工程及商业化,支持PC、云服务及嵌入式设备,加速类脑智能的研发、应用及推广

Copyright (c) 2022 Neurocean Group All rights reserved. Created by damone

Types Documentation

enum ArgumentType

EnumeratorValueDescription
ARG_SINGLE0变量值
ARG_TENSOR张量
ARG_FILLER填充器
ARG_STRING字符串
ARG_GENERAL_OBJECT通用对象

参数类型

enum DeviceType

EnumeratorValueDescription
DEVICE_CPU_COMMON0通用CPU
DEVICE_CUDACUDA
DEVICE_OPENCLOPENCL
DEVICE_CPU_X86x86 CPU
DEVICE_ARM32ARM32 CPU
DEVICE_ARM64ARM64 CPU
DEVICE_RISCVRISCV CPU
DEVICE_TYPE_NUMBER结束表示

设备类型

enum DeviceBackend

EnumeratorValueDescription
DEVICE_BACKEND_CPU0CPU 后端
DEVICE_BACKEND_CUDACuda 后端
DEVICE_BACKEND_OPENCLOpencl 后端

设备后端类型

enum ExecutorStatus

EnumeratorValueDescription
EXEC_INITED0初始化
EXEC_COMPILING编译中
EXEC_COMPILE_ERROR编译错误
EXEC_COMPILED编译完成
EXEC_STATUS_INITED状态初始化完成
EXEC_SETUP运行 Setup
EXEC_BEFORE运行 before
EXEC_RUN运行 run
EXEC_AFTER运行 After
EXEC_TEAR_DOWN运行 teardown
EXEC_RUN_ERROR运行错误
EXEC_PAUSE暂停
EXEC_TERMINATE终止
EXEC_FINISHED运行完成

执行器状态

enum Status

EnumeratorValueDescription
STATUS_SUCCESS0成功
STATUS_FAILED1失败
STATUS_CREATE_EXEC_ENGINE_FAILED10创建执行引擎失败
STATUS_SCHEDULE_MODEL_FAILED50调度失败
STATUS_FIT_TOGETHER_FAILED100装配失败

运行状态

enum Layout

EnumeratorValueDescription
LAYOUT_INVALID-1无效布局
LAYOUT_SINGLE_VALUE0单变量值
LAYOUT_SINGLE_STRING单变量字符串
LAYOUT_TENSOR_PARAM张量变量, 将会在 Model 的创建时使用
LAYOUT_TZYX时间空间张量布局
LAYOUT_NCHWNCHW张量布局
LAYOUT_NHWCNHWC张量布局

变量布局,描述变量类型

enum DataType

EnumeratorValueDescription
DATA_INVALID-1无效数据类型
DOUBLE0双精度浮点
UINT64无符号64位整形
INT64有符号64位整形
FLOAT单精度浮点
UINT32无符号32位整形
INT32有符号32位整形
FP1616位浮点
UINT16无符号16位整形
INT16有符号16位整形
UINT8无符号8位整形
INT8有符号8位整形

数据类型

enum PortType

EnumeratorValueDescription
PORT_INVALID-1无效端口
PORT_STATE0模型状态
PORT_IN50通用输入
PORT_IN_ONLY_READ只读输入
PORT_IN_PROXY代理输入
PORT_OUT100通用输出
PORT_OUT_FIXED_OUT输出完成后,相对时间内不会改变
PORT_OUT_PROXY代理输出
PORT_REF200引用端口
PORT_REF_ONLY_READ只读引用端口
PORT_CONNECTION300连接端口,关联连接模型

端口类型

enum FillerType

EnumeratorValueDescription
FILLER_INVALID-1无效填充
CONST_FILLER0常量填充
COPY_FILLER拷贝填充
UNIFORM_FILLER均匀分布填充
LOG_NORMAL_FILLER正则分布填充
LOCAL_CONVOLUTION_FILLER100局部卷积填充

数据填充类型

enum ReduceType

EnumeratorValueDescription
REDUCE_SUM0加法规约
REDUCE_MEAN均值规约
REDUCE_MAX最大值规约
REDUCE_MIN最小值规约

数据规约化类型

typedef PAbstractModule

typedef std::shared_ptr<AbstractModule> ocean::PAbstractModule;

抽象模块指针

typedef PArgumentPointer

typedef std::shared_ptr<ArgumentPointer> ocean::PArgumentPointer;

通用参数指针

typedef PExecutor

typedef std::shared_ptr<Executor> ocean::PExecutor;

执行器指针

typedef FillerArguments

typedef std::map<std::string, VariableValue> ocean::FillerArguments;

填充器参数列表

typedef PNode

typedef std::shared_ptr<Node> ocean::PNode;

节点指针

typedef PModel

typedef std::shared_ptr<Model> ocean::PModel;

模型共享指针

typedef RefModel

typedef std::weak_ptr<Model> ocean::RefModel;

模型引用指针

typedef PNeuronGroup

typedef std::shared_ptr<NeuronGroup> ocean::PNeuronGroup;

神经元组指针

typedef RefNeuronGroup

typedef std::weak_ptr<NeuronGroup> ocean::RefNeuronGroup;

神经元组引用指针

typedef PSynapseGroup

typedef std::shared_ptr<SynapseGroup> ocean::PSynapseGroup;

突触组指针

typedef RefSynapseGroup

typedef std::weak_ptr<SynapseGroup> ocean::RefSynapseGroup;

突触组引用指针

typedef PDendriteGroup

typedef std::shared_ptr<DendriteGroup> ocean::PDendriteGroup;

树突组指针

typedef RefDendriteGroup

typedef std::weak_ptr<DendriteGroup> ocean::RefDendriteGroup;

树突组引用指针

typedef PPort

typedef std::shared_ptr<Port> ocean::PPort;

端口指针

typedef RefPort

typedef std::weak_ptr<Port> ocean::RefPort;

端口引用指针

typedef PInput

typedef std::shared_ptr<Input> ocean::PInput;

输入端口指针

typedef POutput

typedef std::shared_ptr<Output> ocean::POutput;

输出端口指针

typedef PProxyInput

typedef std::shared_ptr<ProxyInput> ocean::PProxyInput;

代理输入指针

typedef PProxyOutput

typedef std::shared_ptr<ProxyOutput> ocean::PProxyOutput;

代理输出端口指针

typedef PReference

typedef std::shared_ptr<Reference> ocean::PReference;

引用端口指针

typedef PConnection

typedef std::shared_ptr<Connection> ocean::PConnection;

连接端口指针

typedef PVariable

typedef std::shared_ptr<Variable> ocean::PVariable;

变量指针

typedef RefVariable

typedef std::weak_ptr<Variable> ocean::RefVariable;

变量引用指针

typedef PSingleVariable

typedef std::shared_ptr<SingleVariable> ocean::PSingleVariable;

单变量指针

typedef RefSingleVariable

typedef std::weak_ptr<SingleVariable> ocean::RefSingleVariable;

单变量引用指针

typedef PTensorVariable

typedef std::shared_ptr<TensorVariable> ocean::PTensorVariable;

张量变量指针

typedef RefTensorVariable

typedef std::weak_ptr<TensorVariable> ocean::RefTensorVariable;

张量变量引用指针

typedef TensorShape

typedef std::vector<uint64_t> ocean::TensorShape;

张量形状

Functions Documentation

function getVersion

const std::string getVersion()

Return:

Get Version


Updated on 2022-08-19 at 17:14:26 +0800

上次编辑于:
贡献者: damone