[发明专利]一种OpenCL内核程序中随机数产生方法及装置有效
申请号: | 201710294725.X | 申请日: | 2017-04-28 |
公开(公告)号: | CN107145332B | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 王丽 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 opencl 内核 程序 随机数 产生 方法 装置 | ||
本发明公开了一种OpenCL内核程序中随机数产生方法及装置,该方法包括:在内核程序中设置随机种子参数,利用伪随机数计算公式计算得到随机数;将新的随机种子参数保存于移位寄存器数组的第一位;通过倒序移位方法控制新的随机种子参数移动到移位寄存器数组的最后一位。该方法解决Opencl标准中不能实现随机数产生的问题。
技术领域
本发明涉及大数据处理技术领域,特别是涉及一种OpenCL内核程序中随机数产生方法及装置。
背景技术
目前,异构计算主要是指使用不同体系架构的计算单元组成系统的计算方式,能够根据每个计算子系统的结构特点为其分配不同的计算任务,在提高服务器的计算性能、能效比和计算实时性方面体现出了传统架构所不具备的优势,其常见的计算单元类别包括CPU、GPU、DSP、ASIC、FPGA等。现场可编程门阵列(Field Programmable Gate Array,FPGA)是一种新型的异构计算加速器件,由可编程的逻辑块和互联网络组成,可在不同逻辑执行多个线程,实现流水线并行处理,具有较强的并行处理能力。将FPGA等专用芯片作为加速设备与CPU相配合形成FPGA异构计算平台,能够在降低系统功耗的同时提升数据中心的计算能力,加速数据处理。传统的FPGA开发以硬件描述语言(HDL)来实现并行运算,对开发者要求较高,开发周期也较长。OpenCL是由Khronos Group针对异构计算装置(heterogeneousdevice)所设计的标准API以及程式语言。自标准化之后,CPU和GPU厂商很快宣布其产品支持OpenCL编程模型。随着FPGA厂商的OpenCL编译综合工具成熟化,FPGA也实现了采用OpenCL高级语言的算法调试模式,并可直接写入FPGA进行程序验证,为FPGA广泛应用于通用计算领域进行应用快速开发提供了便利性保证。OpenCL程序包括主机端(host)程序和内核(kernel)程序两部分,其中内核程序即为核心算法的计算过程,在FPGA上实现;主机端程序由CPU负责对内核程序进行数据传输和执行调度。
大数据处理是FPGA异构计算的热门领域,涉及机器学习和数据挖掘的算法中随机数产生用于数据抽样仿真等问题是常用的计算手段,C和C++语言标准中提供了经典的伪随机数产生函数rand()函数,但是基于FPGA的OpenCL高级编程模型的标准不支持rand伪随机数产生,使得数据挖掘算法中的数据抽样等操作在FPGA异构计算平台上不能实现并行优化,影响了算法的整体性能。
发明内容
本发明的目的是提供一种OpenCL内核程序中随机数产生方法及装置,以解决Opencl标准中不能实现随机数产生的问题。
为解决上述技术问题,本发明提供一种OpenCL内核程序中随机数产生方法,该方法包括:
在内核程序中设置随机种子参数,利用伪随机数计算公式计算得到随机数;
将新的随机种子参数保存于移位寄存器数组的第一位;
通过倒序移位方法控制新的随机种子参数移动到移位寄存器数组的最后一位。
优选的,利用伪随机数计算公式计算得到随机数,包括:
对随机种子参数进行初始化,对上次计算得到的随机种子参数进行更新得到新的随机种子参数,利用新的随机种子参数计算得到新的随机参数。
优选的,将新的随机种子参数保存于移位寄存器数组的第一位之前,还包括:
定义一个移位寄存器数组,将移位寄存器数组最后一位用于更新随机种子参数。
优选的,所述通过倒序移位方法控制新的随机种子参数移动到移位寄存器数组的最后一位,包括:
每次产生随机数后,对移位寄存器进行倒序移位,将新的随机种子逐渐移位到移位寄存器数组的最后一位,用于参与下个随机数的计算。
本发明还提供一种OpenCL内核程序中随机数产生装置,用于实现上述方法,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710294725.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:导线压接辅助装置
- 下一篇:一种新型果肉水果清洗罐