现在的CPU浮点加法比乘法快多少?这样能提高复数乘法吗?
复数乘法Z=X*Y标准方法
Zr=Xr*Yr-Xi*Yi
Zi=Xr*Yi+Xi*Yr
仿Karatsuba法
Zr=Xr*Yr-Xi*Yi
Zi=(Xr+Xi)*(Yr+Yi)-(Xr*Yr+Xi*Yi)
这样仿Karatsuba能快些么? 肯定更慢.
第一种方法: 4次浮点乘, 2次浮点加减法
第一种方法: 5次浮点乘, 5次浮点加减法 3次浮点乘,5次浮点加减法 3# G-Spider
没有仔细看,的确只需要3次乘法。
我认为不会更快。 直接算乘法可以并行处理,比如可以用上 SIMD 指令集,
而仿Karatsuba法,则有运算严重的前后依赖关系。
页:
[1]