有人比较过同样的 Python 程序,在 Mac 上和 Linux 下的性能差别吗? 稳定性?

2017-02-18 09:26:52 +08:00
 4ever911
对运算要求比较高的程序, 会有比较大的性能差别吗?
8592 次点击
所在节点    Python
38 条回复
kenkao
2017-02-18 16:28:10 +08:00
觉得既然用 python 了还是别纠结性能了。。
如果实在对性能有要求,可以考虑用 go
ribenren
2017-02-18 16:41:19 +08:00
@herozem 小朋友
ji4ozhu
2017-02-18 17:39:10 +08:00
没差~
tt0411
2017-02-18 19:09:39 +08:00
python 优势不不在于性能啊 * 3
amd00
2017-02-18 23:21:06 +08:00
生产环境为何考虑 Mac 呢,难道拿本机做服务器?
sylecn
2017-02-18 23:44:12 +08:00
我是今天才知道 Mac 有机架式服务器的。有和我一样的吗?
danielmiao
2017-02-18 23:52:35 +08:00
@sylecn apple 不出服务器,但是他有服务器版本的操作系统
neoblackcap
2017-02-19 02:07:44 +08:00
@danielmiao 除了搭建 iOS 的 CI 服务器,没看出有什么非用不可,而且我是很怀疑在机房托管垃圾桶的成本会不会太高了
iNohn
2017-02-19 08:53:15 +08:00
Mac 跑 Python 速度渣爆了,我试过在 Mac 和装在 Windows 中的 Linux 虚拟机同时跑单线程 jieba 分词操作, Mac 的速度还不如 Linux 的一半。顺便说一下, Mac 是 2.6GHz , Linux 那边是 4.0GHz 。
julyclyde
2017-02-19 10:43:05 +08:00
什么叫你说的那种稳定性?
danielmiao
2017-02-19 11:15:45 +08:00
@neoblackcap 为啥不能在 dell 的机架服务器上装 mac 的服务器操作系统,具体没有用过不清楚,只是有不表示一定要用,据说 apple 自己的所有服务都用的自己的操作系统。
neoblackcap
2017-02-19 14:36:44 +08:00
@danielmiao EULA 规定了 Server 版也只能安装在苹果电脑上,而且众所周知,苹果使用大量的 AWS 跟 Azure 服务,在现代操作系统没有一个高效的 IO multiplxer 或者异步 IO 的话,都是垃圾。 Tornado 那边的文档都写了,不要将运行在 OS X 上面的 Tornado 实例用于生产, kqueue 在 OS X 上面是残废的。
josephshen
2017-02-19 17:16:42 +08:00
@4ever911 这里小白太多。 Linux 下一般能快 5%。如果使用了一些第三方的包,而这些包里有 c 的模块,一般情况下 Linux 下更快一些,而且内存占用也少。总体看 Windows 下面内存占用量更高,速度也慢一些。主要原因应该还是开发者使用 Linux 的更多些。
danielmiao
2017-02-19 18:09:04 +08:00
@neoblackcap 已查证,你说的基本是对的
pangliang
2017-02-19 21:43:39 +08:00
cpu 密集型,看 CPU ,编译器优化,跟操作系统关系不大。网络型,看事件模型,也就是 epoll 和 kqueue 。
zonghua
2017-02-20 00:45:15 +08:00
比一下 PowerPC 上的 Python ?
pyufftj
2017-02-20 09:17:17 +08:00
@loading 垠神都不知道,一个装逼能装到你心服口服的人。 yinwang.org
loading
2017-02-20 13:00:01 +08:00
@pyufftj 其实我是知道的,只是我根本不鸟这些撕逼,自己看好就行。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/341337

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX