Pykonjp2014

731 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
731
On SlideShare
0
From Embeds
0
Number of Embeds
46
Actions
Shares
0
Downloads
2
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Pykonjp2014

  1. 1. Nightly Pyston @Masahito Py婚2014 version
  2. 2. お前 is 誰 • @Masahito • 専門は効率的なファイル転送(P2P) • Pythonは出荷物に含めたり、社内 Kittingとかで使ったり色々。Fabric 使ってるけどAnsibleに移行できるか 近頃調べてる。 • ScalaとJVMでご飯を食べています。
  3. 3. What is Pyston?
  4. 4. Pystonとは? • Dropboxで作成しているPython2.7.x互換環境 • LLVMおよびLLVMのJIT(Just In Time)実行エンジンを使用して 構築されたPython実装。 • 現時点ではx86_64プラットフォームでのみ動作
  5. 5. PythonコードをLLVM IRに変換し、実行 実行時の流れ
  6. 6. インストール方法 • バイナリは提供されていません • ビルド必要(https://github.com/dropbox/pyston/blob/master/ docs/INSTALLING.md)丁寧に書かれていて、この通りやればだい たいうまく行く.(うまく行かないときは頑張ろう!
  7. 7. 現状 • REPL内で改行を入力すると落ちます • Pythonの基礎文法以外はほとんど実装されていません。実装されて いない機能はつかうと落ちます。 • もちろんlambda ,リスト内包とかも動きません。 • 現状だとライブラリはほとんど実装されていません。いまのところ time.timeくらいしか使えません
  8. 8.  速度比較
  9. 9. 前提条件 • パフォーマンスチェックをしてみました。 • 比較するのは以下の様な感じです ! • Python v2.7.3 • PyPy v2.2.1 • Pyston v0.1(2014/04/15)
  10. 10. 再帰
  11. 11. 再帰
  12. 12. 繰り返し
  13. 13. 再帰
  14. 14. まとめ: 今後に期待しよう
  15. 15. 0.2以降 Missing large parts of the language ! Exceptions (planned for 0.2) Class inheritance (planned for 0.2) Default arguments, keywords, starargs, kwargs (planned for 0.2) Generators (planned for 0.2) Integer promotion (planned for 0.2) Threads
  16. 16. 情報源 • [Introducing Pyston: an upcoming, JIT-based Python implementation] https://tech.dropbox.com/2014/04/ introducing-pyston-an-upcoming-jit-based-python- implementation/ • https://github.com/dropbox/pyston/blob/master/ README.md • [Pyston0.1を動かしてみる] http://qiita.com/Masahito/items/ edd028ebc17c9e6b22b0
  17. 17. 情報源 • [LLVM overview 20110122] http://www.slideshare.net/ nothingcosmos/llvm-overview-20110122 • [人間でもわかるLLVMバックエンド入門] https:// speakerdeck.com/kazegusuri/ren-jian- demowakarullvmbatukuendoru-men

×