[发明专利]处理系统中获取向量的欧几里得范数的方法和装置无效
申请号: | 200810213578.X | 申请日: | 2008-09-16 |
公开(公告)号: | CN101676864A | 公开(公告)日: | 2010-03-24 |
发明(设计)人: | 李广磊;王佰玲;龚志刚;葛宁;魏琼 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/302 | 分类号: | G06F9/302;G06F9/38 |
代理公司: | 北京市中咨律师事务所 | 代理人: | 于 静;杨晓光 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理 系统 获取 向量 欧几里得 范数 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体地,涉及单处理器系统中获取向量的欧几里得范数的方法和装置以及多处理器系统中获取向量的欧几里得范数的方法和装置。
背景技术
BLAS(Basic Linear Algebra Subprograms,基本线性代数子程序)是执行向量和矩阵运算的子程序的集合,这些子程序是最基本的矩阵向量计算的核心子程序,在用于求解各种线性代数问题的高性能科学计算中有着重要作用。关于BLAS的详细内容,可参见http://www.netlib.org/blas/。
作为专业的线性代数库,BLAS提供了各种线性代数的子程序,其中包括获取向量的欧几里得范数的例程。
向量的欧几里得范数的获取的含义是:对于给定的向量X=(x1,x2,...,xn)T,根据下面的公式得到其欧几里得范数‖X‖2:
也就是说,向量X=(x1,x2,...,xn)T的欧几里得范数是该向量的内积(X,X)的平方根,即该向量中所有元素x[i](i=1,2,......,n)的平方和的平方根。
向量的欧几里得范数的获取广泛存在于多种领域中,例如其在3-D向量计算中发挥着重要的作用。
图1示出了BLAS中现有的获取向量的欧几里得范数的例程所采用的实现方案的流程图。
如图1所示,在该现有的实现方案中,首先在步骤105,设置平方和ssq的初始值为1,并且缩放因子scale的初始值为0。
接着,对于要获取欧几里得范数的给定向量X=(x1,x2,...,xn)T,对于其中的各个元素,按照顺序依次执行以下的步骤110~125,以求取该向量X=(x1,x2,...,xn)T中的所有元素的平方和。
具体地,在步骤110,对于向量X=(x1,x2,...,xn)T中当前还未经过处理的元素x[i](i=1,2,......,n),比较其绝对值absxi与上述缩放因子scale的大小关系。在该步骤中,可以利用abs()函数来得到元素x[i]的绝对值absxi,即:
absxi=abs(x[i])。
并且,在该步骤中,如果判断为缩放因子scale小于元素x[i]的绝对值absxi,则前进到步骤120,否则前进到步骤115。
在步骤115,在当前的缩放因子scale不小于当前元素x[i]的绝对值absxi的情况下,以该缩放因子scale的当前值为基数,进行该元素x[i]的绝对值absxi的平方到平方和ssq的累加,即:
ssq=ssq+(absxi/scale)2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810213578.X/2.html,转载请声明来源钻瓜专利网。