最初 PPT ( 2021.5 )里的目标:
每年提升 1.5x
,4 年 5x
的性能提升,3.11 速度翻倍 。
实际情况:
提升了不到 1.3x
,arm 下性能提升改更小( 1.24x
)。
1
dlsflh 2023-02-16 16:38:34 +08:00 via Android
我自己的的代码主要用了 coolprop 和 scipy 这两个库,用 Spyder 的性能分析测,从 3.8 升级到 3.11 还给慢了 10%以上。
|
2
dlsflh 2023-02-16 16:43:14 +08:00 via Android
接 1 楼。
虽然库背后的 c/fortran 代码没变,但想着其他部分的 python 逻辑能快一点是一点。没想到还变慢了… |
3
qW7bo2FbzbC0 2023-02-16 17:06:51 +08:00
想起来那句吐槽的话,“给母猪化妆”。 术业有专攻,有擅长的也有不擅长的。Python 这个速度在动态语言里面已经不算慢了吧
|
4
LaTero 2023-02-16 18:14:59 +08:00 via Android
@qW7bo2FbzbC0 动态也垫底,v2 之前也有不少人发过 benchmark ,julia 也是动态,性能差不多是 python 的 50 倍
|
5
makelove 2023-02-16 19:35:01 +08:00
为什么 python 会这么慢,语言设计的原因吗,还不如都转 js 呢,语法还更舒服一点
|
6
julyclyde 2023-02-17 09:20:16 +08:00
谢谢 OP 的消息
我看了帖子才知道还有这么个项目。而且他们的 ideas repository 好像只有“内容”?程序是改在他们对 cpython 的 fork 上的吗? |
7
vicalloy OP @julyclyde 这个项目的发起人就是 Python 的作者,相当于给 CPython 拉投资 。他们改动的就是官方的 CPython 。
Python 的速度在脚本语言里也算慢的。以前说 Ruby 慢,Python 比 Ruby 还慢。 CPython 最大的好处还是 C 扩展比较好写。特别是 PyO3 出来后,用 Rust 写扩展很舒服。 |
8
penguinWWY 2023-02-17 18:22:25 +08:00
欠债太多了,得慢慢补
其实 4 年提升 5 倍这个对比 python 的 base 不算离谱,但是每年 50%就完全是拍脑袋,为了 ppt 好看 |
9
NoAnyLove 2023-03-08 11:28:04 +08:00
预计 3.12 推出的 Tier 2 优化 trace optimizer ( specializing adaptive 是 Tier 1 )延期了[link]( https://github.com/faster-cpython/ideas/wiki/Python-3.12-Goals)。距离 Beta 1 还有两个月时间,目前看来 3.12 的优化没啥大的变化,大概从 1.25x 涨到了 1.30x 。
3.12 的新的特性 /功能: * PEP-684 Per-interpreter GIL 。但是没有 channel ,缺少能在不同 subintepreter 高效移动 /复制对象的方法,估计需要用户自己用 shared memory 撸轮子。并不像 Go 的 goroutine 那么丝滑,不过也算是有趣的尝试,指不定哪个大神就搞出新的玩法。 * PEP-683 Immortal Objects 。目前看来对性能影响不大,甚至有一定性能损耗。 * register-based interpreter 。之前讨论得很火,但是现在没啥进展(理论上大概是 5%的性能提升?)。估计 3.12 没戏 * nogil 。虽然 Sam 开了一个新的 nogil3.12 库,不过目前 PEP 和讨论都没啥进展,并且和 Eric 的 Per-intepreter GIL 存在一定程度上的冲突。估计 3.12 没戏 Faster Python 计划理论上 3.12 应该要达到 2.25x 的性能提升,目前看来这个版本会是个画的大饼,就看 PyCon 2023 能不能有啥新闻了。 |