专栏首页量化投资与机器学习5倍提升,加速CPython!Quant如何看?

5倍提升,加速CPython!Quant如何看?

今天既有正经推文,也有量化八卦~

去年11月,Python 之父Guido van Rossum宣布了他已经加入微软的消息:

在微软的日子里,他获得了选择项目的自由,并决定让CPython变得更快。微软将资助一个由Guido van Rossum、Mark Shannon(加速计划的提出者,精通 Python 性能研究)、Eric Snow(Python 核心开发者之一、微软高级工程师)等多人组成的小团队来加速CPython。

团队将需要在一些约束条件下工作。比如:他们需要保持代码的可维护性,不破坏稳定的ABI兼容性,不破坏有限的API兼容性,不破坏或降低极端情况的速度,比如在eval堆栈上增加100万个用例。

加速CPython!

在今年2021 Python语言峰会上,Guido Van Rossum在表示:他打算在2022年10月发布3.11版本时将快CPython的速度提高1倍。在接下来的四年里,他的目标是将CPython的速度提高到原来的5倍。

相关阅读

最新!想学CPython,Python之父Guido亲上阵

整个计划被称为“香农计划”(即“Shannon Plan”,得名于提出者),期望花 4 年时间把 Python 提速 5 倍,即每年 1.5 倍。现在短期的计划是在 Python 3.11 版本中实现至少提速 1 倍。

按照官方的发布周期,今年 10 月会发布 3.10 版本,而 3.11 版本将在 2022 年 10 月发布。

对于3.11版本的短期目标,Guido还是在ppt中给自己兜了个底:

根据Guido的分享,第一项优化工作是“适应性的、专门的字节码解释器”,相关的设想已经起草到 PEP-659 中:

其它的优化内容还有:

  • 优化帧堆栈,更快的调用,调整分配(optimize frame stack, faster calls, tweak allocation)。
  • 2开销”异常处理(“Zero overhead” exception handling)。

以及这些工作:

这些优化工作都要在不破坏接口兼容性的前提下实现,同时还要保持代码的可维护性。

谁将从中受益?

1、运行CPU密集型纯Python代码的人

2、内置Python的网站的用户

对哪些人群效果甚微?

1、对于已经用 C 语言编写的代码(如 NumPy 和 TensorFlow)

2、I/O-bound 代码

3、多线程代码

4、及算法效率低下的代码

同时,团队还创建了一个GitHub org,包含几个 repos:

https://GitHub.com/faster-cpython/

Van Rossum说道,基于Python工具的用户可以从这些变化中受益。从理论上讲,这可能包括像小摩(JPMorgan)、美国银行这样的投行,它们在风险定价系统中大量使用Python语言(尽管小摩在Python2向Python3方面切换已经很晚了)。同时,还包括使用Python进行数据分析的金融公司。

Van Rossum没有评论这些变化对Python金融用户可能产生的影响。然而,考虑到C++比Python快100倍以上,它不太可能让Python在短期内适用于交易系统。

https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/gpp-python3.html

量化圈内人评价

Citadel的前量化分析师Jeffrey Ryan评价道,Python的速度提高2-5倍在金融领域不会产生多大影响

Python中使用的大部分繁重的计算代码已经在内部使用了C(或c++ /Fortran),比如blas/lapack/numpy/tensorflow等。你可能会像这些库一样,用C++编写一次,然后像这些库那一用Python封装它。

Jeffrey Ryan还说:即使Python在2022年及以后确实变得更快了,今日领域的用户可能会慢慢接受它的新迭代。对于大多数人来说。从2. x到3. x的变化太痛苦了,不想再经历一次。如果非要有什么不同的话,Jeffrey Ryan建议到:“我认为这可以让人们重新考虑使用Python,并转向更有意义的新语言,比如Julia或Golang。”

量化八卦时间

说起Jeffrey Ryan,公众号给大家多扯一扯

Citadel,每个人都想为之工作的对冲基金,但其竞业协议也是很苛刻!

2009年,Citadel向其高频交易公司前负责人Mikhail Malyshev支付了每月3万美元的补偿费,但当Mikhail Malyshev试图在竞业禁止期间成立自己的公司,Citadel将他告上了法庭。

2011年,Yi Zhang在卡内基梅隆大学获得机器学习博士学位,并在IBM的Watson研究中心担任研究实习生后加入Citadel。在接下来的6年里,他成为Citadel芝加哥办公室的量化研究员,从事统计套利和高频交易"Alpha Generation”的研究。2017年,Yi Zhang离开了Citadel。因为他有2年的竞业协议!

虽然严格,但是这还是不能阻止所有人对头部对冲基金的热情!

同样,2019年6月,Jeffrey Ryan离开了Citadel,但是竞业协议让他一段时间内不能在同行工作了。对于Quant来说,这是一件大事,因为Ryan不是一位普通的量化专家,他很特别!

如果你是R语言的一名爱好者的话。他组织了广受欢迎的R/Finance会议(现在已经是第11个年头了):

他编写了流行的xtx工具,用于处理在R语言中不同的基于时间的数据类:

他还编写了quantmod(Quantitative Financial Modelling Framework),该框架已被下载数百万次,用户可以构建、交易和分析量化金融交易策略:

今年,Jeffrey Ryan结束竞业期,他并没有去外界传闻的Point72,而是成立了一家量化咨询公司,名为:Quant at Large。其主要工作是帮助独立投资者和基金管理者掌握量化交易的所有相关知识,从软件、算法到数据pipelines、分析工具、Alpha研究、计算资源、风险和性能工具等,啥都有!

目前还不清楚Jeffrey Ryan是否会承担Quant at Large的所有工作,但目前看来他是唯一的员工。正如Jeffrey Ryan在他简历中写的,他在量化金融领域工作了20年。他于2013年加入Citadel量化策略部门,当时该基金刚刚起步。在此期间,他帮助团队构建了围绕“数据处理、Alpha验证、风险管理和高性能计算”等工具。

所以他做这个信手拈来啊~

量化投资与机器学习微信公众号,是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据等领域的主流自媒体。公众号拥有来自公募、私募、券商、期货、银行、保险、高校等行业20W+关注者,连续2年被腾讯云+社区评选为“年度最佳作者”。

本文分享自微信公众号 - 量化投资与机器学习(Lhtz_Jqxx),作者:全网Quant都在看

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-06-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 业余Quant劝退信

    很多人都知道我业余时间在做Quant,而且真的有自己的真金白银在线上交易。还有Quant网红BBQ在持续忽悠广大码农业余做量化。或许你也想过要不要业余时间做Qu...

    量化投资与机器学习微信公众号
  • Python之父:明年让Python快2倍

    5月中旬刚刚结束的Pycon US 2021上,Python之父Guido van Rossum提出要在未来四年内将CPython速度提升5倍。

    量子位
  • wordpress网站加速,学会这招加载速度迅速提升5倍

    wordpress网站加速,学会这招加载速度迅速提升5倍(文章来源:https://www.zouaw.com/3379.html)

    wordpress建站吧
  • 如何加倍提升 Elasticsearch 查询性能

    我们在使用Elasticsearch进行查询的过程中发现,如果查询时间跨度大,查询数据集比较庞大,即使只是返回少量的结果,查询耗时仍然比较长。我们通过分...

    用户1644123
  • 如何加倍提升 Elasticsearch 查询性能

    我们在使用Elasticsearch进行查询的过程中发现,如果查询时间跨度大,查询数据集比较庞大,即使只是返回少量的结果,查询耗时仍然比较长。我们通过分析pro...

    腾讯云时序数据库团队
  • 如何让xtrabackup恢复速度提升20倍?

    腾讯数据库技术
  • 性能不打折,内存占用减少90%,Facebook提出极致模型压缩方法Quant-Noise

    我们都知道,对于神经网络来说,参数量越大、层数越多,就代表着输出的结果越精细。当然,这也意味着许多性能优越的神经网络体积会非常庞大。比如当前的标准机器翻译架构 ...

    机器之心
  • 如何将数据处理速度提升1000+倍

    利用Python进行数据处理时经常使用的是pandas和numpy,这两个工具的功能都很强大,尤其是pandas,更是Python中数据处理方面最强大的工具之一...

    气象学家
  • 为什么 Python 这么慢?

    对于一个类似的程序,Python 要比其它语言慢 2 到 10 倍不等,这其中的原因是什么?又有没有改善的方法呢?

    sergiojune
  • Python之父:让 Python 快2倍

    Python 之父 Guido van Rossum 想让 Python 的速度变得更快,先把速度提升 2倍。

    深度学习与Python
  • 强势回归!比 Python 快 20% 的 Pyston v2.0 来了!

    2014 年,Python 实现 Pyston 诞生。Pyston 的开发目标是开发高性能 Python 实现,使 Python 跻身 C++ 等传统系统级语言...

    小小詹同学
  • 为什么Python这么慢?

    Python语言近年来人气爆棚。它广泛应用于网络开发运营,数据科学,网络开发,以及网络安全问题中。

    大数据文摘
  • 让Python代码运行更快的方式

    Python因其强大、灵活且易于使用等特性,而赢得了声誉。这些优点使其在各种各样的应用程序、工作流程和领域中得到了广泛应用。但是就语言的设计,也就是它天然的解释...

    AI科技大本营
  • 文本分词和去停止词的一次优化

    之前在处理QA语料库的时候,在分词和去停止词的时候消耗时间很长,所以专门搜了一些资料针对这个问题进行了一次优化,总结如下。

    故事尾音
  • 如何用好 IDEA ,Java 撸码效率至少提升 5 倍?

    以前的Java项目中,充斥着太多不友好的代码:POJO的getter/setter/toString;异常处理;I/O流的关闭操作等等,这些样板代码既没有技术含...

    芋道源码
  • Revvel如何将视频转码速度提升几十倍?

    作者:Greg Femec,Revvel资深软件开发主管(Principle Development Lead)

    LiveVideoStack
  • 更快、更强的Python实现:Pyston v2.0发布

    2014 年,Python 实现 Pyston 诞生。Pyston 的开发目标是开发高性能 Python 实现,使 Python 跻身 C++ 等传统系统级语言...

    机器之心
  • 4 个快速的 Python 编译器 f

    Python 其实是一种相当快的语言,但它并不像编译型语言那么快。 这是因为官方实现的 CPython 解释执行的,更准确地说,是 Python 代码被编译为字...

    py3study
  • 更快、更强的Python实现:Pyston v2.0发布

    2014 年,Python 实现 Pyston 诞生。Pyston 的开发目标是开发高性能 Python 实现,使 Python 跻身 C++ 等传统系统级语言...

    龙哥

扫码关注云+社区

领取腾讯云代金券