所以我第一次在我的Mac上玩Docker.我在标准教程中使用了boot2docker,我在ubuntu映像中开始提示.
docker pull ubuntu
docker run -i -t ubuntu /bin/bash
当我在码头工作时,我开始了我的第一个实验,看看性能是否会下降.从命令行我将使用python timeit模块快速检查一些基本的性能测量.
Mac Python结果
$python3.4 -m timeit '"-".join(str(n) for n in range(100))'
10000 loops,best of 3: 37.7 usec per loop
$python3.4 -m timeit '"-".join([str(n) for n in range(100)])'
10000 loops,best of 3: 34.2 usec per loop
$python3.4 -m timeit '"-".join(map(str,range(100)))'
10000 loops,best of 3: 26.2 usec per loop
Docker Python结果
> python3 -m timeit '"-".join(str(n) for n in range(100))'
10000 loops,best of 3: 30 usec per loop
> python3 -m timeit '"-".join([str(n) for n in range(100)])'
10000 loops,best of 3: 26.9 usec per loop
> python3 -m timeit '"-".join(map(str,best of 3: 20.2 usec per loop
看起来奇怪的是,在我的mac上运行的docker ubuntu实际上比mac上的python运行python代码更快.为什么会出现这种情况有什么原因吗?
编辑
我可以确认两个python版本都在64位运行.
Mac Python
python3 -c 'import sys;print("%x" % sys.maxsize,sys.maxsize > 2**32)'
7fffffffffffffff True
Ubuntu Python
python3.4 -c 'import sys;print("%x" % sys.maxsize,sys.maxsize > 2**32)'
7fffffffffffffff True
最佳答案