本記事はFOLIO Advend Calendar 22日目のものです. 昨日は yoshiko_pg さんで「git grepでソースコード内検索のあれこれ」でした. はじめに みなさんは PyPy についてご存知ですか? PyPy とは非常に高速な Python 処理系で,通常の CPython に比べると約8倍の高速化を達成しています1. 何故早くなったのか,それは,Meta-Tracing JIT コンパイラを搭載した特殊な言語によって実装され,PyPy には JIT コンパイラが付属しているからなのです. 以降では JIT の話は省略しますが,一言でいうと「よく実行される部分を機械語にコンパイルして実行する」というもので,プログラムの大幅な速度向上が期待できます. 今回は,その特殊な言語 RPython と Meta-Tracing JIT という技術について触れていこうと思いま
Hi all, PyPy's JIT now supports the 64-bit PowerPC architecture! This is the third architecture supported, in addition to x86 (32 and 64) and ARM (32-bit only). More precisely, we support Linux running the big- and the little-endian variants of ppc64. Thanks to IBM for funding this work! The new JIT backend has been merged into "default". You should be able to translate PPC versions as usual direc
PyPy 4.0.0 We’re pleased and proud to unleash PyPy 4.0.0, a major update of the PyPy python 2.7.10 compatible interpreter with a Just In Time compiler. We have improved warmup time and memory overhead used for tracing, added vectorization for numpy and general loops where possible on x86 hardware (disabled by default), refactored rough edges in rpython, and increased functionality of numpy. You ca
What is PyPy?¶ PyPy is a reimplementation of Python in Python, using the RPython translation toolchain. PyPy tries to find new answers about ease of creation, flexibility, maintainability and speed trade-offs for language implementations. For further details see our goal and architecture document. Is PyPy a drop in replacement for CPython?¶ Almost! The most likely stumbling block for any given pro
As part of writing my PhD I am currently thinking about the relationship between PyPy's meta-tracing approach with various previous ideas to automatically get a (JIT-)compiler from only an interpreter of a language. One of the most-researched ideas along these lines is that of partial evaluation. Partial evaluation has basically the same goals as PyPy when it comes to compilers: Write an interpret
2013年12月に、東京工業大学の専攻談話会で使用したスライドです(一部修正済み) http://www.is.titech.ac.jp/is-wiki/?%C0%EC%B9%B6%C3%CC%CF%C3%B2%F1%A1%CA%A5%BB%A5%DF%A5%CA%A1%BC%A1%CBRead less
HappyJIT: A Tracing JIT Compiler for PHP Andrei Homescu Department of Computer Science University of California, Irvine ahomescu@uci.edu Alex Şuhan Faculty of Mathematics and Computer Science University of Bucharest alex.suhan@gmail.com Abstract Current websites are a combination of server-generated dynamic content with client-side interactive programs. Dynamically - typed languages have gained a
流行りのJITコンパイラは嫌いですか?¶ PyPy Advent Calendar 12/23担当の RYO @ 修論提出1ヶ月前です。 いよいよ明日はクリスマスイブですね。 リア充の方もそうでない方も、当記事に目を留めて頂き誠にありがとうございます。 本記事では、他の皆さんが扱われているような実用的なネタとは異なる PyPyの内側の話、特にPyPyのJITコンパイラに関する話題を扱いたいと思います。 したがって、本記事の情報は業務等の役にはまったく立ちませんのでご容赦願います。 さて、この記事をお読みになっている方々の殆どは、 PyPy = JITのおかげで早くなった事で有名なPythonの処理系 という認識をお持ちだと思います。 確かにこの認識は間違ってはいないのですが、 実はPythonにJITを乗せる事で高速化を図る処理系はPyPyだけではなく、 その殆どがPyPyが今程の有名なも
タイトルは釣りです。 methane です。 8/20(土)にLL Planetesに行ってきました。 今年は JavaScript 一色と言っていいほど、 JavaScript の存在が大きくなっており、 そのなかでも特に Node.js の話題が多かったように思います。 「Node.jsとはなんだったのか」というセッションでは主にコールバックチェーン型プログラミング vs 軽量スレッドを使った手続き型プログラミングの話題や各言語におけるライブラリなどが 紹介されていたのですが、以前個人的な興味でいくつかの言語とライブラリで echo server を実装していたので、他にも興味を持っておられる方のために公開します。 いろんな言語でEcho Server@github 参考に、簡単なベンチマーク結果も載せておきます。各言語・フレームワークで完全に同じものを 実装しているわけではないし、エ
We're pleased to announce the 1.6 release of PyPy. This release brings a lot of bugfixes and performance improvements over 1.5, and improves support for Windows 32bit and OS X 64bit. This version fully implements Python 2.7.1 and has beta level support for loading CPython C extensions. You can download it here: http://pypy.org/download.html What is PyPy? PyPy is a very compliant Python interpreter
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く