Python执行速度:笔记本电脑与台式机

max*_*max 4 python performance intel

我正在运行一个执行简单数据处理的程序:

  • 解析文本
  • 填充词典
  • 计算结果数据的一些函数

该程序仅使用CPU,RAM和HDD:

  • 从Windows命令行运行
  • 输入/输出到本地硬盘
  • 没有显示或打印到屏幕上
  • 没有网络

运行相同的程序:

  • 桌面:Windows 7,i7-930 CPU超频@ 3.6 GHz(内存速度匹配),Intel X-25M SSD
  • 笔记本电脑:Windows XP,Intel Core2 Duo T9300 @ 2.5GHz,7200转硬盘

CPU的频率是1.44,硬盘的基准分数是4倍(Passmark - Disk Mark).我发现程序在桌面上的运行速度只有1.66倍.显然,CPU是瓶颈.

似乎i7 Core与Intel Core2 Duo架构只有15%的好处(大部分性能提升都归功于直接的CPU频率).我可以在代码中做些什么来增加新架构的好处吗?


编辑:忘记提及我使用ActivePython 3.1.2如果这很重要.

pyf*_*unc 6

硬件性能的提高在大多数情况下会自动导致用户应用程序受益.备受诟病的"GIL"意味着您可能无法利用CPython中的多核,除非您将程序设计为通过各种多处理模块/库来利用.

SO讨论相同:python是否支持多处理器/多核编程?

python wiki上解决方案的相关整理:http://wiki.python.org/moin/ParallelProcessing