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

Python执行速度:笔记本电脑vs台式机,python,performance,intel,Python,Performance,Intel,我正在运行一个进行简单数据处理的程序: 解析文本 填充字典 计算结果数据上的某些函数 该程序仅使用CPU、RAM和HDD: 从Windows命令行运行 输入/输出到本地硬盘驱动器 屏幕上未显示或未打印任何内容 没有网络 相同的程序运行在: 桌面:Windows 7,i7-930 CPU超频@3.6 GHz(具有匹配的内存速度),Intel X-25M SSD 笔记本电脑:Windows XP、英特尔Core2 Duo T9300@2.5GHz、7200 rpm硬盘 CPU的频率提高了

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

  • 解析文本
  • 填充字典
  • 计算结果数据上的某些函数
该程序仅使用CPU、RAM和HDD:

  • 从Windows命令行运行
  • 输入/输出到本地硬盘驱动器
  • 屏幕上未显示或未打印任何内容
  • 没有网络
相同的程序运行在:

  • 桌面:Windows 7,i7-930 CPU超频@3.6 GHz(具有匹配的内存速度),Intel X-25M SSD
  • 笔记本电脑:Windows XP、英特尔Core2 Duo T9300@2.5GHz、7200 rpm硬盘
CPU的频率提高了1.44倍,硬盘的基准分数提高了4倍(Passmark-Disk Mark)。我发现这个程序在桌面上的运行速度要快1.66倍。显然,CPU是瓶颈

i7 Core与Intel Core2 Duo体系结构相比,似乎只有15%的优势(大部分性能提升都是由于CPU频率的提高)。我可以在代码中做些什么来增加新体系结构的好处吗



编辑:如果有必要的话,我忘了提到我使用了ActivePython 3.1.2。

硬件性能的提高在大多数情况下会自动为用户应用程序带来好处。备受诟病的“GIL”意味着您可能无法利用CPython的多核功能,除非您将程序设计为通过各种多处理模块/库来利用这些功能

因此,同样的讨论:


python wiki上解决方案的相关排序:

将处理拆分为多个线程。您的特定i7应该能够支持多达8个并行线程。

考虑在常规HDD上重复此操作-根据缓存和数据的性质,SSD可能会导致显著的性能差异。

在脚本运行时观察任务管理器。python脚本是否在两台计算机上使用整个内核的cpu负载?(100%/芯数=一个芯的百分比)好主意!13%。。。所以只使用了一个核心。