タグ

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

  • Mojoは「C言語のように速いPython」なのか - k0kubun's blog

    LLVMやSwiftを作ったChris LattnerがCEOをやっている会社が、Pythonの使用感とC言語並の性能を併せ持つ言語としてMojoをアナウンスした。 まだ手元で試せる状態でリリースされてはいないが、最大35000倍Pythonより速いという。 Mojo🔥 combines the usability of Python with the performance of C, unlocking unparalleled programmability of AI hardware and extensibility of AI models. Also, it's up to 35000x faster than Python 🤯 and … deploys 🏎 pic.twitter.com/tjT09U4F80— Modular (@Modular_AI) May

    Mojoは「C言語のように速いPython」なのか - k0kubun's blog
    dowhile
    dowhile 2023/05/06
    Py3の完全スーパーセットじゃないと使われないけど、完全スパセになったら単に高速なPy3処理系とだけしか使われなさそう
  • まだパソコンのOS選びで消耗してるの? - k0kubun's blog

    昨日、大学生協推奨のPCが20万のWindowsマシンなのを見てなぜMacじゃないのかという声がTLに流れていたり、それで思い出したのか、逆にMacじゃなくてLinuxを使っている人はなぜそうしてるのかみたいな話がvim-jpで盛り上がったりしていた。 Windowsを使い始めてから17年、Macを使い始めてから8年、Linuxデスクトップを使い始めてから6年経ち、今は用途に応じてその3つをどれも使っているという感じなのだが、個人的にはどれも善し悪しだと思っているので、状況に応じて何を使うべきか自分の考えを書いておく。 大学生は何を買うべきか 特にプログラミングとかやるつもりがない大学生でお金がある人は、素直に推奨されたWindowsマシンを買っておくと、大学側が使わせてくるソフトが動かない可能性も流石に低いだろうし、周りと環境が揃っていて質問とかしやすいので無難だと思う。金がなければ中古

    まだパソコンのOS選びで消耗してるの? - k0kubun's blog
    dowhile
    dowhile 2021/04/29
    linuxにはがんばってほしい
  • ベイエリアは東京より儲かるのか - k0kubun's blog

    サンフランシスコベイエリアでのITエンジニアの給料は東京より高いが、税金や物価も高いと言われている *1 。ではどちらに住む方がより多くの金が手元に残るのだろうか。 僕がベイエリアに移住してからちょうど1年が経ったので、僕が東京とベイエリアそれぞれにいた頃の出費やタイトルでどのくらい家の収支に差が出るのかということをまとめてみる。なお、この記事を書いている時点で 105.60 円/ドル なので、ドル円の変換をする際はこのレートを用いる *2 。 収入 基給 ベイエリア 東京 $153,600 913万円 GitLabは同社の世界各地での待遇計算基準を 公開 しており、地域間の差異を公平に計算するには割とよくできたベンチマークなのでここの年収をそのまま使う。計算に使われる location_factors.yml では、日の給与はサンフランシスコの 56.3% になっている。 Calcu

    ベイエリアは東京より儲かるのか - k0kubun's blog
    dowhile
    dowhile 2020/10/04
    6digit裏山
  • 令和時代のRubyコア開発 - k0kubun's blog

    Ruby Core Development 2019というタイトルでRubyKaigiのCFPにプロポーザルを書いたのだが、 もう一つ書いた方の話が採択されたのでその話はしなかった。 さて、今日はRubyコア*1の開発がSubversionからGitに移った節目でもあったので、そっちのトークで言いたかったことの一部を記事にしておこうと思う。 Subversion → Git 移行 [Misc #14632] 去年くらいから @hsbt さんが cgit というGitフロントエンドを使ってGitリポジトリの準備を始め Misc #14632、ついに今日正式にcgitの方がupstreamになった。平成の時代でSubversionでのtrunkのRubyコア開発は幕を閉じた。 この辺を進めているのは主に @hsbt さんな中、僕がこれを偉そうに書いたり今回のRubyKaigiで壇上でアナウンス

    令和時代のRubyコア開発 - k0kubun's blog
    dowhile
    dowhile 2019/04/23
  • SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog

    sqldefのリポジトリ github.com これは何か Ridgepoleというツールをご存じでしょうか。 これはRubyのDSLでcreate_tableやadd_index等を書いてスキーマ定義をしておくとそれと実際のスキーマの差異を埋めるために必要なDDLを自動で生成・適用できる便利なツールです。一方、 で言われているように、Ridgepoleを動作させるためにはRubyやActiveRecordといった依存をインストールする必要があり、Railsアプリケーション以外で使う場合には少々面倒なことになります。*1 *2 そこで、Pure Goで書くことでワンバイナリにし、また別言語圏の人でも使いやすいよう、RubyのDSLのかわりに、誰でも知ってるSQLCREATE TABLEやALTER TABLEを書いて同じことができるようにしたのがsqldefです。 使用例 現時点ではMy

    SQLで羃等にDBスキーマ管理ができるツール「sqldef」を作った - k0kubun's blog
    dowhile
    dowhile 2018/08/25
  • 個人で運用するKubernetesクラスタ - k0kubun's blog

    Kubernetesの使用感に興味があってaws-workshop-for-kubernetesというのを先週やり、ちょうどEKSがGAになった直後だったのでEKSが試せたのだけど、まあ最初からマネージドだとあまり面白みがないし金もかかるので、個人のVPSで動かしてた奴を全部Kubernetes上で動かすようにしてみている。 まだ番で運用した知見みたいなのが貯まってるわけではないのだが、公式のドキュメントを中心に読んでいても単に動かし始める段階で結構ハマって時間を消費したので、これから同じようなことをやろうとしている人向けに備忘録を兼ねて使用感や知見をまとめておくことにした。 Kubernetesは今でもalphaやbetaの機能が多く、今後この記事の内容も古くなることが予想されるので、なるべく公式のドキュメントへのリンクを置くのを意識して書いてある。 構成 現時点で、ConoHaで借り

    個人で運用するKubernetesクラスタ - k0kubun's blog
  • Ruby 2.6にJITコンパイラをマージしました - k0kubun's blog

    The English version of this article is available here: medium.com 2/4(日)に、去年のRubyKaigiが終わった直後の新幹線で開発を始め10月に公開したJITコンパイラをRubyのtrunk (2.6.0-dev) にマージし、昨日TD Tech Talk 2018で以下のような内容の発表をしました。 speakerdeck.com まだそれほど速くできていないということもあり、私はTwitterでのみ共有して満足していたのですが、海外の方がいくつか記事を書いてくださいました。 Playing with ruby's new JIT: MJIT - John Hawthorn Ruby’s New JIT – Square Corner Blog – Medium とても丁寧に書かれているので、私の記事がわかりにくければ

    Ruby 2.6にJITコンパイラをマージしました - k0kubun's blog
    dowhile
    dowhile 2018/02/16
  • VMに手を加えずRubyを高速化するJITコンパイラ「YARV-MJIT」の話 - k0kubun's blog

    先日のRubyKaigi 2017のLTではLLVMベースのCRuby向けJITコンパイラLLRBの話をしました。 5分はちょっとJITの話をするには短かかったですね。 LLRBをふまえた、Cのコード生成への軌道修正 さて、上記の資料にある通り、CRubyのJITにおいてはメインの高速化対象が既に存在するCのコードになるため、 開発の早い段階でパフォーマンスにインパクトを持てるとすればLLVM Passの順番を変えるくらいで、 LLVM IRを直接生成しても最適化上のメリットがほとんどないのでその部分はMJIT と同じくCのコードを生成するように変更したい、という話をした*1。 で、LLRBはC拡張として作るべくちょっと不思議な努力をいろいろやっており、 それらの設計はやってみた結果(コアに直接変更を加えるのに比べ)デメリットの方が大きいと思ったので、 LLRBの失敗を全て生かしつつ、今回

    VMに手を加えずRubyを高速化するJITコンパイラ「YARV-MJIT」の話 - k0kubun's blog
    dowhile
    dowhile 2017/10/21
  • 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
  • 1