现代硬件架构上的稀疏洛朗多项式与泊松级数乘法
符号计算
2010-04-27 v1
摘要
本文提出了两种用于稀疏洛朗多项式和泊松级数(后者是摄动理论在天体力学中应用时常见的代数结构)乘法的算法。两种算法都首先采用Kronecker替换技术将多元乘法简化为单元乘法,然后使用教科书方法执行单元乘法。第一种算法适用于中等稀疏乘法,它将单元乘法所得单项式的指数作为平凡哈希值,用于一维系数查找数组。第二种算法适用于高度稀疏乘法,它使用一个缓存优化的哈希表,该表以指数为键存储乘法产生的系数-指数对。两种算法在实现时都关注了现代计算机硬件架构。特别注重通过缓存分块技术和缓存友好的项排序来有效利用当代内存层次结构。第一种算法已针对共享内存多核架构实现了并行化,而第二种算法正在并行化过程中。我们提供了基准测试,将我们的算法与其他计算机代数系统的例程在串行和并行模式下进行了比较。
引用
@article{arxiv.1004.4548,
title = {Multiplication of sparse Laurent polynomials and Poisson series on modern hardware architectures},
author = {Francesco Biscani},
journal= {arXiv preprint arXiv:1004.4548},
year = {2010}
}