Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Optimization FPGA在这里有用吗?_Optimization_Fpga - Fatal编程技术网

Optimization FPGA在这里有用吗?

Optimization FPGA在这里有用吗?,optimization,fpga,Optimization,Fpga,我正在为一个网络中间件编写一些代码。现在,我们的代码运行得太慢了 我们已经做了一轮的重写和优化,但我们似乎在软件中所能做的事情上遇到了困难 代码的缓慢性源于一个子例程——一种来自计算统计学的深奥的采样算法。因为所涉及的数学有点类似于在DSP中完成的工作,我想知道我们是否可以使用FPGA来加速计算 我的问题基本上在标题中-如何判断FPGA(甚至ASIC)在我的用例中是否会提供有用的加速 编辑:“有用的”加速是指足以证明构建FPGA所需的成本和开发时间的重要加速。简单的回答是让经验丰富的FPGA工程

我正在为一个网络中间件编写一些代码。现在,我们的代码运行得太慢了

我们已经做了一轮的重写和优化,但我们似乎在软件中所能做的事情上遇到了困难

代码的缓慢性源于一个子例程——一种来自计算统计学的深奥的采样算法。因为所涉及的数学有点类似于在DSP中完成的工作,我想知道我们是否可以使用FPGA来加速计算

我的问题基本上在标题中-如何判断FPGA(甚至ASIC)在我的用例中是否会提供有用的加速


编辑:“有用的”加速是指足以证明构建FPGA所需的成本和开发时间的重要加速。

简单的回答是让经验丰富的FPGA工程师查看算法,并告诉您解决方案的开发时间和物料清单成本

如果不知道算法的细节,就很难猜测。问题是如何并行化的?或者它可以被大量管道化?需要多少乘法/累加/dsp操作?您可以使用大查找表或其他FPGA dsp技术(CORDIC)进行近似计算吗。FPGA可以在100秒甚至1000秒的时间内(每个时钟周期)并行执行许多、更多的操作,这取决于您愿意在FPGA上花费多少。如果不知道细节,也没有经验丰富的FPGA/DSP工程师来研究这个问题,就很难有真正的感觉

其他一些选择包括:

  • 看看DSP芯片(TI DSP芯片就是一个例子)
  • 您的处理器是否有未使用的SIMD指令

简单的答案是让一位经验丰富的FPGA工程师查看算法,并告诉您解决方案的开发时间和物料清单成本

如果不知道算法的细节,就很难猜测。问题是如何并行化的?或者它可以被大量管道化?需要多少乘法/累加/dsp操作?您可以使用大查找表或其他FPGA dsp技术(CORDIC)进行近似计算吗。FPGA可以在100秒甚至1000秒的时间内(每个时钟周期)并行执行许多、更多的操作,这取决于您愿意在FPGA上花费多少。如果不知道细节,也没有经验丰富的FPGA/DSP工程师来研究这个问题,就很难有真正的感觉

其他一些选择包括:

  • 看看DSP芯片(TI DSP芯片就是一个例子)
  • 您的处理器是否有未使用的SIMD指令