基于即时编译的脑动力学通用编程系统和编程方法

文档序号:33506886发布日期:2023-03-18 02:39阅读:来源:国知局

技术特征:
1.一种基于即时编译的脑动力学通用编程系统,其特征在于,包括:前端编程层和后端编译层,所述前端编程层包括预设的多个计算图构建模块,所述后端编译层包括预设的不同功能的代码编译模块;所述前端编程层,用于接收输入的待构建的脑动力学模型对应的计算图构建指令,并根据所述计算图构建指令调用所述预设的多个计算图构建模块中的至少一个,运行调用的计算图构建模块得到所述脑动力学模型对应的计算图;所述后端编译层,用于接收输入的所述脑动力学模型对应的编译指令,以调用所述预设的不同功能的代码编译模块中的至少一个,调用的代码编译模块用于根据所述计算图进行代码编译,得到所述脑动力学模型在目标设备上的二进制机器码。2.根据权利要求1所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述计算图构建模块包括算子模块、工具模块和脑动力学模型模块中的至少一种;所述算子模块、工具模块和脑动力学模型模块中分别预设有不同的计算图构建算子;所述计算图构建指令包括计算图构建模块选择指令和模型构建参数;所述前端编程层用于根据计算图构建模块选择指令调用所述算子模块、工具模块和脑动力学模型模块中的至少一个,被调用的模块的用于根据所述模型构建参数以及所述计算图构建算子,得到所述脑动力学模型对应的计算图。3.根据权利要求2所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述算子模块包括下述至少一种:稠密矩阵算子模块、稀疏矩阵算子模块、事件驱动算子模块、自动微分模块。4.根据权利要求2所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述工具模块包括下述至少一种:常微分方程(ordinary differential equation,ode)求解工具模块、随机微分方程(stochastic differential equation,sde)求解工具模块、迟滞微分方程(delayed differential equation,dde)求解工具模块、分数阶微分方程(fractional differential equation,fde)求解工具模块、突触连接工具模块和权重初始化工具模块。5.根据权利要求2所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述脑动力学模型模块包括计算神经科学模型模块和类脑智能计算模型模块中的至少一种。6.根据权利要求1所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述前端编程层还包括算子自定义接口模块和模型自定义接口模块;所述算子自定义接口模块用于接收输入的自定义的算子信息,以生成对应的算子模块;所述模型自定义接口模块用于接收输入的自定义的模型信息,以生成对应的脑动力学模型模块。7.根据权利要求1所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述代码编译模块包括即时编译模块、自动并行化模块和自动向量化模块中的至少一种;所述编译指令包括编译方式选择指令和所述脑动力学模型应用的目标设备;所述后端编译层用于根据所述选择的编译方式选择所述即时编译模块、自动并行化模块和自动向量化模块中的至少一种;被选择的模块用于根据所述脑动力学模型应用的目标设备生成适用于所述目标设备的脑动力学模型的二进制机器码。
8.根据权利要求7所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述即时编译模块用于对脑动力学模型根据预设的优化策略进行目标设备无关的编译分析和优化,以及根据所述目标设备进行设备相关的编译分析和优化,并生成适用于所述目标设备的二进制机器码;所述自动并行化模块用于根据所述脑动力学模型应用的目标设备同时生成适用于多个目标设备的脑动力学模型的二进制机器码;所述自动向量化模块用于采用单指令流多数据流并行的方式生成适用于所述目标设备的脑动力学模型的二进制机器码。9.根据权利要求7所述的基于即时编译的脑动力学通用编程系统,其特征在于,所述后端编译层还包括计算图转换模块;所述计算图转换模块用于将所述脑动力学模型对应的计算图转换为与编程语言无关的中间表达式,所述调用的代码编译模块用于根据所述中间表达式进行代码编译,得到所述脑动力学模型的二进制机器码。10.一种基于脑动力学通用编程系统的编程方法,其特征在于,所述脑动力学通用编程系统包括:前端编程层和后端编译层,所述前端编程层包括预设的多个计算图构建模块,所述后端编译层包括预设的不同功能的代码编译模块;所述编程方法包括:所述前端编程层接收输入的待构建的脑动力学模型对应的计算图构建指令,并根据所述计算图构建指令调用所述预设的多个计算图构建模块中的至少一个,运行调用的计算图构建模块得到所述脑动力学模型对应的计算图;所述后端编译层接收输入的所述脑动力学模型对应的编译指令,以调用所述预设的不同功能的代码编译模块中的至少一个,调用的代码编译模块用于根据所述计算图进行代码编译,得到所述脑动力学模型的二进制机器码。

技术总结
本发明涉及计算机技术领域,尤其涉及一种基于即时编译的脑动力学通用编程系统和编程方法。编程系统包括前端编程层和后端编译层,前端编程层包括预设的多个计算图构建模块,后端编译层包括预设的不同功能的代码编译模块。前端编程层根据输入的计算图构建指令,调用预设的多个计算图构建模块中的至少一个,以构建脑动力学模型对应的计算图;后端编译层用于接收输入的脑动力学模型对应的编译指令,以调用预设的不同功能的代码编译模块中的至少一个,根据构建的计算图进行代码编译,得到脑动力学模型在目标设备上的二进制机器码。本发明提供的脑动力学编程方法简单易用,灵活高效,不受描述性语言的限制,使得本发明的编程系统的通用性较强。用性较强。用性较强。


技术研发人员:王超名 张天秋 陈啸宇 吴思
受保护的技术使用者:北京大学
技术研发日:2022.11.18
技术公布日:2023/3/17
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1