英特尔强烈建议使用他们的Python分发版,而不是手动构建Python模块。一个明显的优点是他们的分发版提供了许多优化模块,如果您想自己编译这些模块,则是一项非常棘手的任务。
但我还没有找到有哪些优化可用。如果我手动构建软件包,我可以确保在编译代码时考虑了处理器上的所有指令(AVX、SSE),使二进制文件尽可能地优化,因此我想知道:
英特尔是否为其所有处理器提供了编译后的二进制文件?(例如每个处理器代际都有不同的二进制文件集:Nehalem、Sandy Bridge等)或...
英特尔是否提供某种通用优化?(适用于所有处理器)或...
介于两者之间的某种方案?
更具体地说,Intel表示它通过MKL、TBB和DAAL的方式“加速”Python。手动构建至少可以利用MKL和主机处理器指令集的定制化。因此,在我看来,这两种方法之间存在一种权衡:如果使用分发版,将节省大量时间,并且将拥有所有“加速器”,但手动编译将利用MKL和指令集(至少)。那么,你的看法是什么?