1 .一种使用图形处理单元加速脚本计算的系统,包括输入模块、解析模块、执行模块和
输出模块,其特征在于:
所述输入模块,用于获取脚本及计算脚本所需的数据;
所述解析模块,对脚本的语句块进行解析,将其撰写为由节点构成的计算图,其执行过
程如下:
创建脚本中变量与节点的符号表;
获取脚本的语句块并解析,基于语句块的类型,为其变量创建节点及匹配上邻居节点,
同时维护变量与节点的符号表;
最终生成基于节点及节点间关系的计算图;
所述执行模块,基于计算图的节点结构构建工作队列,并以此执行节点对应的计算,得
到计算结果;计算图中的节点包括数据节点、算子节点、条件节点、合并节点、迭代节点,执
行如下操作:
从计算图中找出入度为0的节点,将其加入工作队列;
从工作队列中取出一个节点,若为数据节点,则通过处理器或图形处理单元获取相应
的数据;若为算子节点,则执行算子;若为条件节点,在条件为真时,将左子节点加入工作队
列,在条件为假时,将右子节点加入工作队列;若为迭代节点,则自增迭代计数器;
判断节点的所有出邻居,若出邻居的所有入邻居节点都已执行完毕,则将出邻居节点
加入工作队列;
继续执行直至工作队列为空;
所述输出模块,输出执行完毕的最终计算结果。
2 .根据权利要求1所述的一种使用图形处理单元加速脚本计算的系统,其特征在于:所
述节点包括数据节点;所述语句块包括赋值语句块,对于赋值语句块,通过解析表达式的语
句块得到数据节点,创建所赋值的变量的数据节点,将表达式的数据节点作为其入邻居,并
在符号表中建立变量与其数据节点的映射关系。
3 .根据权利要求1所述的一种使用图形处理单元加速脚本计算的系统,其特征在于:所
述节点包括数据节点;所述语句块包括函数语句块,对于函数语句块,若为内置函数,则为
其创建算子节点;若为自定义函数,则对其展开并解析其语句块,得到存储函数结果的数据
节点;通过查阅符号表,找到被调函数的入参对应的节点,将其作为所述存储函数结果的数
据节点的入邻居。
4 .根据权利要求1所述的一种使用图形处理单元加速脚本计算的系统,其特征在于:所
述节点包括条件节点、传入节点、合并节点;所述语句块包括条件转移语句块,对于条件转
移语句块,其包含条件语句块、如果语句块和否则语句块,为条件转移语句块的变量创建传
入节点,通过查询符号表找到变量对应的节点,并将其作为所述传入节点的入邻居;为条件
语句块创建条件节点,将所述传入节点作为条件节点的入邻居;分别对如果语句块和否则
语句块进行语句块的解析,并将如果语句块创建的节点作为所述条件节点的左子节点,将
否则语句块创建的节点作为所述条件节点的右子节点;依次分析如果语句块和否则语句
块,对其中均出现的变量创建合并节点,更新符号表,将均出现的变量的节点更新为合并节
点。
5 .根据权利要求1所述的一种使用图形处理单元加速脚本计算的系统,其特征在于:所
权 利 要 求 书
1/2 页
2
评论