タグ JITコンパイラ
人気順 5 users 50 users 100 users 500 users 1000 usersRuby 3.4正式リリース。YJITコンパイラの速度向上とメモリ削減、新パーサPrismがデフォルトに
Ruby開発チームは2024年12月25日、Ruby 3.4.0の正式リリースを発表しました。 Rubyは毎年12月25日に新バージョンをリリースすることが恒例となっており、2024年も予定通りに新バージョンが登場しました。 Ruby 3.4ではJITコンパイラとして搭載されているYJITの速度向上と使用メモリ削減が実現されました。 Ruby 3.1でメ... 続きを読む
PythonでJITコンパイラとマルチスレッド処理が実験的に実装された「Python 3.13.0」正式公開
Pythonは昨年(2023年)8月、グローバルインタプリタロック(GIL)を解消する方向で開発を進めていくという方針を明らかにしています。 参考:Pythonがグローバルインタプリタロックの解消へ、マルチスレッド処理の高速化実現 グローバルインタプリタロックとはインタープリタ全体で1つのロックを持つことです。これによ... 続きを読む
iPhoneでWindowsを動かせるエミュレーター「UTM SE」がついにApp Storeで公開される
Windowsエミュレーターの「UTM SE」が、iOSおよびvisionOS向けの無料アプリとしてApp Storeで配信を開始しました。ただし、Appleデバイス向けのUTM SEにはJITコンパイラがないため、パフォーンマンスは低下してしまっているとのことです。 PC emulator comes to iOS, but Apple’s restrictions hamper performance | Ars... 続きを読む
次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは?
次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは? 機械学習やAI処理の分野を中心に非常に高い人気のプログラミング言語である「Python」の次期バージョンに、処理速度の向上を目指したJITコンパイラが搭載される見通しです。 このJITコンパイラは、Python... 続きを読む
Maxime Chevalier-Boisvertさん「Optimizing YJIT’s Performance, from Inception to Production」 ~RubyKaigi 2023 2日目キーノート | gihyo.jp
RubyKaigi 2023 キーノートレポート Maxime Chevalier-Boisvertさん「Optimizing YJIT’s Performance, from Inception to Production」 ~RubyKaigi 2023 2日目キーノート 最近のRubyインタプリタの進化において非常に重要なトピックの一つが、JITコンパイラの登場です。特にShopifyのJITコンパイラチームを中心に開発さ... 続きを読む
RubyKaigiでJITコンパイラの書き方について発表した - k0kubun's blog
RubyKaigi 2023でRuby JIT Hacking Guideというタイトルで発表してきた。 speakerdeck.com JITコンパイラを書くチュートリアル 今回の発表ではJITコンパイラが書ける人間を増やすことをゴールにしていたが、 30分という短い発表枠内では雰囲気を知ってもらうことにフォーカスし、 実際に手を動かしたい人たちにはそれ用... 続きを読む
RJIT: RubyでRubyのJITコンパイラを書いた - k0kubun's blog
僕はRustでRubyのJITを書く仕事をしているのだが、去年の12月くらいから、趣味ではRubyでRubyのJITを書いている。 それまではC言語でコード生成を行なうMJITを5年くらいメンテしていたのだが、先月、Rubyで機械語を直接アセンブルするRJITに差し替えた。 github.com なので、今Rubyのmasterブランチには、会社で業務とし... 続きを読む
YJITで使ったRustの省メモリ化テクニック - Qiita
これは Rust Advent Calendar 2022 のカレンダー2の22日目の記事です。 YJITとは 私は今年の7月からShopifyという会社でRubyのJITコンパイラであるYJITを開発している。このJITは今年CからRustに書き直されたため、現職では業務としてフルタイムでRustを書いている。 実用段階になったYJIT おそらく世界最大規模でRubyを... 続きを読む
フルタイムOSSコミッタを始めて2か月経った - k0kubun's blog
Shopifyに入社してRubyのJITコンパイラを書く仕事を始めてから2か月経った。 前職の退職エントリ では今後やりたいことを書いたりしたが、実際OSS開発を仕事にしてみてどうだったかみたいなことを書いておく。 シリコンバレーでのリモート生活 3年前に妻とアメリカに移住し、今年永住権も取得した。 Shopifyは本社はカナ... 続きを読む
Treasure Data を退職しました - k0kubun's blog
約5年5か月働いたTreasure Dataを7/22に退職した。7/25からShopifyに入社し、RustでJITコンパイラを開発してRubyを高速化する仕事をする。 仕事としてやりたい分野が変わってきて自分は今回転職したけど、とても良い会社なので、この記事がTreasure Data (以下TD) で働くことに興味がある人の参考になれば良いと思ってい... 続きを読む
Ruby 3.1正式リリース。Shopify開発のJITコンパイラ「YJIT」をメインラインにマージ
Ruby開発チームは、2021年12月25日にRuby 3.1.0の正式リリースを発表しました。 Rubyは毎年12月25日に新バージョンをリリースすることが恒例となっています。今回も一昨年のRuby 3.0に続いて新バージョンが登場しました。 Ruby 3.1でもっとも注目すべき新機能は、JITコンパイラの「YJIT」がメインラインにマージされたこ... 続きを読む
Railsの高速化に貢献する新たなJITコンパイラを搭載したRuby 3.1プレビュー1が公開
Ruby開発チームは、新たなJITコンパイラであるYJITを実験的に搭載したRuby 3.1プレビュー1を公開しました。 Ruby言語は以前から実行速度の向上を重要な改善項目として挙げており、Ruby 2.6では「MJIT」と呼ばれるJITコンパイラを搭載、昨年リリースされたRuby 3.0では目標としていたRuby 2の3倍の性能を達成しています。... 続きを読む
WebAssemblyで、JITコンパイラに迫る高速なJavaScriptエンジンを実装へ。Bytecode Allianceが技術解説。JavaScript以外の言語でも - Publickey
WebAssemblyで、JITコンパイラに迫る高速なJavaScriptエンジンを実装へ。Bytecode Allianceが技術解説。JavaScript以外の言語でも 「Bytecode Alliance」は、WebAssemblyをWebブラウザだけでなく、デスクトップPCやサーバ、IoTデバイスなどあらゆる環境で、セキュアに実行することを目指している団体です。 Fastly、Mozi... 続きを読む
富岳のディープラーニング処理を支えるJITコンパイラ「Xbyak_aarch64」誕生秘話:インタビュー|gihyo.jp … 技術評論社
TOP500,HPCG,HPL-AI,Graph500での世界1位獲得,新型コロナウイルス対策を目的とした試行利用など,話題に事欠かないスーパーコンピュータ「富岳」。そのディープラーニング処理を高速化するには,あるOSSの存在が必要不可欠でした。それが,サイボウズ・ラボ(株)の光成滋生氏が開発したx86/x64向けC++ JITアセ... 続きを読む
PHP 8でのJIT採用が可決、賛成50反対2。PHP 7.4への試験的採用は否決 - Publickey
現在開発中のPHP 8にJITコンパイラを組み込むべきかどうかを決定する投票が3月28日に締め切りを迎え、賛成が50票、反対が2票と圧倒的多数で可決されたことが、発表されました。 JITコンパイラはプログラムの実行時にコンパイルを行い、ネイティブコードを生成して実行するというもの。事前にコンパイル作業が不要なため... 続きを読む
iOS12.1に脆弱性、削除した写真が盗み見られる可能性を専門家が指摘 - iPhone Mania
最新版のiOS12.1がインストールされたiPhoneに、削除した写真が盗み見られてしまう脆弱性があることが発見されました。Appleは次のiOSアップデートで対応するとみられます。 削除した写真が盗み見られる脆弱性 発見されたのは、iOS12.1のSafariの脆弱性で、悪意のあるWi-Fiアクセスポイントを経由して、JITコンパイラと... 続きを読む
JITコンパイラを初搭載した「Ruby 2.6.0-preview1」リリース。大幅な実行速度向上を目指し - Publickey
JITコンパイラを初搭載した「Ruby 2.6.0-preview1」リリース。大幅な実行速度向上を目指し Rubyでは、次のメジャーバージョンアップとなるRuby3をRuby2の3倍の実行速度にするという「Ruby 3x3」(ルビースリーバイスリー)構想に基づいて開発が進められています。JITコンパイラの実現は実行性能の向上に欠かせない要素であり、プレビュー版でのJITの初搭載はRuby 3x3... 続きを読む
Ruby 2.6にJITコンパイラをマージしました - k0kubun's blog
2018 - 02 - 16 Ruby 2.6にJITコンパイラをマージしました The English version of this article is available here: medium.com 2/4(日)に、去年のRubyKaigiが終わった直後の新幹線で開発を始め 10月に公開したJITコンパイラ を Ruby のtrunk (2.6.0-dev) にマージし、昨日TD T... 続きを読む
VMに手を加えずRubyを高速化するJITコンパイラ「YARV-MJIT」の話 - k0kubun's blog
2017 - 10 - 19 VMに手を加えずRubyを高速化するJITコンパイラ「YARV-MJIT」の話 先日のRubyKaigi 2017のLTでは LLVM ベースのCRuby向け JIT コンパイラ LLRB の話をしました。 5分はちょっと JIT の話をするには短かかったですね。 LLRBをふまえた、Cのコード生成への軌道修正 さて、上記の資料にある通り、CRubyの JIT におい... 続きを読む
JITコンパイルでの冒険 パート1:インタプリタ | コンピュータサイエンス | POSTD
本記事では、BFのインタプリタがナイーブなアプローチから最適化されたバイトコードにコンパイルするアプローチへと徐々に洗練され、その過程で10倍も高速化されていく様子を見ていきます。このソース言語と、その最適化に伴うトレードオフのいくつかについて理解を深めていきましょう。本記事は、JITコンパイラに関するシリーズの第1回目です。計画としては、シンプルな入力言語を使ってそのインタプリタとJITをいくつ... 続きを読む
CRuby向けのLLVMベースのJITコンパイラを書いている話 - k0kubun's blog
2017 - 07 - 09 CRuby向けのLLVMベースのJITコンパイラを書いている話 LLRBという Ruby 向けのメソッド JIT コンパイラ を書いている github.com RubyKaigi 2015の最後のキーノート で @evanphx が「 LLVM でCRubyのコードをインライン化するメソッド JIT を実装したら速いんじゃね」みたいな発表をしていたのを覚えているだろ... 続きを読む
Javaの謎のパフォーマンス劣化現象との戦い - Cybozu Inside Out | サイボウズエンジニアのブログ
こんにちは。アプリケーション基盤チームの横田です。 Javaの謎のパフォーマンス劣化にまつわる調査をしていたのですが、1ヶ月の苦労の末に原因がわかりましたので、報告させていただきます! 忙しい人のためのまとめ jdk-7u40以降のjdk-7 *1 でJavaのパフォーマンスが劣化する謎の現象 CodeCacheの容量限界に近づくとJITコンパイラを停止してコンパイルしたコードを捨てる機能が原因だ... 続きを読む
[速報]マイクロソフト、サーバサイドの「.NET Core Rutime」と「.NET Framework」のオープンソース化を発表。C#コンパイラやASP.NETなど - Publickey
マイクロソフトは11月12日(日本時間13日未明)、同社のイベントConnect();においてサーバサイドの.NET Core Rutimeおよび.NET Frameworkのオープンソース化を発表しました。 具体的には、C#のJITコンパイラ、ASP.NETなど.NET Frameworkを含み、サーバサイドの.NETアプリケーションの開発、ビルド、実行に必要な全てが揃っています。 .NET C... 続きを読む
FacebookがPHPのJITコンパイラ「HHVM 2.2」リリース。17%のCPU効率改善。Linuxディストリビューション用パッケージを用意 - Publickey
Facebookは同社がオープンソースで開発しているPHP用のJITコンパイラの最新版「HHVM 2.2.0」(HipHop Virtual Machine for PHP)の公開を発表しました。 HHVMはPHPのコードをダイナミックにバイナリコードへと変換することで、高速な実行の実現を目指しています。 HHVM 2.2では、主要なLinuxディストリビューションとして、Ubuntu 12.04... 続きを読む
マイクロソフト、.NETアプリを数倍高速化する64ビット用JITコンパイラ「RyuJIT」をテクニカルプレビューで公開。由来は「龍神」 - Publickey
マイクロソフト、.NETアプリを数倍高速化する64ビット用JITコンパイラ「RyuJIT」をテクニカルプレビューで公開。由来は「龍神」 マイクロソフトは64ビットの.NET環境に最適化したJITコンパイラ「RyuJIT」(コードネーム)をCTP(Community Technical Preview)として公開中です。RyuJITでは、アプリケーションの起動時間と実行速度の両面でより高速化されてい... 続きを読む