什么是最好的矩阵乘法的算法? [英] What is the best matrix multiplication algorithm?

查看:554
本文介绍了什么是最好的矩阵乘法的算法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是最好的矩阵乘法的算法?什么意思是best'for我吗?这意味着最快,准备今天的机器。

What is the best matrix multiplication algorithm? What means 'the best'for me? It means the fastest and ready for todays machines.

如果请您给的链接伪code。

Please give links to pseudocode if you can.

推荐答案

BLAS是最好准备好使用的效率矩阵乘法库。有许多不同的实现。这里是一个标杆,我为在MacBook Pro上有一些实现双核英特尔​​酷睿2双核2.66 GHz的:

BLAS is the best ready-to-use efficient matrix multiplication library. There are many different implementation. Here is a benchmark I made for some implementations on a MacBook Pro with dual-core Intel Core 2 Duo 2.66 GHz :

  • gotoBLAS2(开放源代码):<一href="http://www.tacc.utexas.edu/tacc-projects/gotoblas2/">http://www.tacc.utexas.edu/tacc-projects/gotoblas2/
  • 在ATLAS(开放源代码): http://math-atlas.sourceforge.net/
  • Accelerate.framework(苹果):<一href="http://developer.apple.com/performance/accelerateframework.html">http://developer.apple.com/performance/accelerateframework.html
  • 非优化,但携带方便,实现了我所谓的香草(从GSL)
  • gotoBLAS2 (open-source) : http://www.tacc.utexas.edu/tacc-projects/gotoblas2/
  • ATLAS (open-source) : http://math-atlas.sourceforge.net/
  • Accelerate.framework (Apple) : http://developer.apple.com/performance/accelerateframework.html
  • a non-optimized, but portable, implementation that I called 'vanilla' (from the GSL)

此外,还有其他的商业实现,我没有在这里进行测试:

There are also other commercial implementations that I didn't test here :

  • MKL(英特尔):<一href="http://software.intel.com/en-us/articles/intel-mkl/">http://software.intel.com/en-us/articles/intel-mkl/
  • ACML(AMD):<一href="http://developer.amd.com/cpu/Libraries/acml/Pages/default.aspx">http://developer.amd.com/cpu/Libraries/acml/Pages/default.aspx
  • MKL (Intel) : http://software.intel.com/en-us/articles/intel-mkl/
  • ACML (AMD) : http://developer.amd.com/cpu/Libraries/acml/Pages/default.aspx

这篇关于什么是最好的矩阵乘法的算法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆