【发布时间】:2015-01-13 10:24:24
【问题描述】:
某些库(例如 BLAS/LAPACK)或某些优化库会在编译时针对本地机器架构进行优化。让我们以 OpenBlas 为例。有两种方法可以使用 OpenBlas 创建 Docker 容器:
使用 Dockerfile,您可以在其中指定 OpenBlas 库的 git 克隆以及所有必要的编译标志和构建命令。
从 Docker Hub 拉取并运行其他人的 Ubuntu + OpenBlas 映像。
选项 (1) 保证 OpenBlas 是为您的机器构建和优化的。选项(2)呢?作为一个 Docker 新手,我认为图像是固定的和静态的,所以运行这个图像不会针对我的机器进行优化(它可能是基于 AMD 的,而不是维护者的 Intel CPU)。让我感到困惑的是,图像 ipython/scipyserver 确实在构建期间从 Github 克隆了最新的 OpenBlas 主控器。
我似乎误解了 Docker 映像和/或自动构建的概念,非常感谢您的澄清。
【问题讨论】:
标签: optimization docker lapack blas