タグ

ブックマーク / k0kubun.hatenablog.com (4)

  • CRuby向けのLLVMベースのJITコンパイラを書いている話 - k0kubun's blog

    LLRBというRuby向けのメソッドJITコンパイラを書いている github.com RubyKaigi 2015の最後のキーノートで@evanphxが「LLVMでCRubyのコードをインライン化するメソッドJITを実装したら速いんじゃね」みたいな発表をしていたのを覚えているだろうか。 LLRBというのはまさにそれを実装しているプロジェクトであり、少なくとも現時点で「LLVMでCRubyのコードをインライン化するメソッドJIT」と言える状態まで実装でき、ものによっては効果が出る状態になったので公開した。 なんで書いてるの 言語を自分で実装するとその言語に関する理解が大分深まる、というのをHamlの実装とかCコンパイラとかで体験していて、僕が一番好きな言語はRubyなのでRubyでもそれをやっておきたい、というのがあった。また、Rubyは遅いと言われがちだが、どこに改善可能な点が眠っている

    CRuby向けのLLVMベースのJITコンパイラを書いている話 - k0kubun's blog
    Yoshiori
    Yoshiori 2017/07/09
  • Ruby コミッターになりました - k0kubun's blog

    m_sekiさんとhsbtさんの推薦で、ERBのメンテナとしてRubyのコミット権をいただきました。 以下が初コミットです。 github.com 普段テンプレート言語Hamlの高速化やその更に高速な別実装Hamlitの実装をやっていてテンプレートエンジンの高速化に知見があり、ちょこちょこERBにも知見を還元したりしていたのですが、一昨日ふとERBの生成コードのiseqを眺めていた時に気付いてパッチを送った後、「入れるのめんどくさいし、ERBのコミッタやりますか」とお声がけいただいた形です。 というわけで、引き続き主に高速化の方面でERBのメンテナンスをやっていきますが、他にも以前僕がC拡張にしたHTMLエスケープとか、広い範囲でパフォーマンス改善をやれたらいいなと思います。 さっきのパッチに関連してto_sもメソッド呼び出しをバイパスできるようにしたら結構いろんなものが速くなるんじゃない

    Ruby コミッターになりました - k0kubun's blog
    Yoshiori
    Yoshiori 2017/05/16
  • Treasure Data に入社しました - k0kubun's blog

    3月から Treasure Data で働いています。入社初日からタスクをアサインされ、RailsAPIの開発をやりました。 なぜ Treasure Data に転職したのか 前職もやりたいことができて優秀な同僚に囲まれ文句ない環境だったのですが、アルバイト入社から数えるともう3年半が経っていたし、入社前にイメージしていたような仕事も大体経験できていました。 そのままいても良かったのですが、ある程度の間隔で新しいことに挑戦しないと成長は止まってしまうと思っているので職場ごと変えることも考え始め、以下のような観点から Treasure Data に転職することに決めました。 エンジニアがユーザーになる仕事をしてみたい 僕は開発者が使うツールを作るのが好きで、技術を売っている会社の方がそういうものを作る機会が増えそう 正直あまりエンジニアリング以外に興味がないので、一般の人を対象にしたサービ

    Treasure Data に入社しました - k0kubun's blog
    Yoshiori
    Yoshiori 2017/03/02
    @ryu_kobayashi 圧倒的可愛がりでお願いします
  • Hamlit v1.0.0をリリースしました - k0kubun's blog

    3月末に、Hamlit v0.1.0を作りSlimやErubisより高速なHaml実装「Hamlit」をリリースしましたという記事を書いた。 haml-specを通しているのでHamlと高い互換性と持っていてかつ速いという宣言をしたものの、実際にリリースしてみると随所からバグ報告が上がり、 hamlを置き換えただけでは動かない haml-specは互換性の保証にはならず、速いのは互換性が低いからでは? このベンチはHamlithtmlエスケープをしていないから速いだけでは? のような声が随所から上がった。 今日、attributeのescapeに対応し、 全てのissueを潰した上で、Slimより速いベンチを出すことに成功した ので、v0.1.0での問題点やそこからの変更点などについて書きたいと思う。 v0.1.0での問題点 haml-specガバガバ問題 @k0kubun それな— 獣

    Hamlit v1.0.0をリリースしました - k0kubun's blog
    Yoshiori
    Yoshiori 2015/04/13
    “優秀な人を見つけたら、戦争をすると良い”
  • 1