タグ

ブックマーク / kaigai.hatenablog.com (2)

  • 進捗)SSD-to-GPU ダイレクトSQL実行機能 - KaiGaiの俺メモ

    ここ暫くブログでまとめていなかった、SSD-to-GPUダイレクトSQL実行機能の進捗について。 この機能をかいつまんで言うと、NVMe-SSDに格納されているPostgreSQLのデータブロックをGPU RAMに直接転送し、そこでSQLのWHERE句/JOIN/GROUP BYを実行することで見かけ上のI/O量を削減するという代物である。 NVIDIAのTesla/Quadro GPUが対応するGPUDirect RDMA機能を使い、SSD<=>GPU間のデータ転送を仲介するLinux kernel moduleを使えば、CPU/RAMにデータをロードする前にGPU上での処理を行うことができる。 しばらく前からScan系の処理には対応していたが、JOIN/GROUP BYへの対応を加え、さらにPostgreSQL v9.6のCPU並列にも追従したということで、簡単なベンチマークなら取れる

    進捗)SSD-to-GPU ダイレクトSQL実行機能 - KaiGaiの俺メモ
    mongrelP
    mongrelP 2017/04/24
    Vegaは標準でこんなかんじか。
  • しゅとろ〜む、しゅとろ〜む - KaiGaiの俺メモ

    昨年、オタワでTim Child氏の発表を聞いて以来、実装できないものかと思って暖めていたアイデアがある。GPUの処理能力を使って、PostgreSQLの検索処理を高速化できないか?というものである。 特に複雑な計算を含むクエリの場合、Index-Scanに落ちないで、全件スキャンが走ることが往々にしてあるが、こういったケースで有効に作用するのではなかろうか?という着想である。 クリスマス休暇の間、割とまとまった開発時間を取る事ができたので、PostgreSQLのFDW(Foreign Data Wrapper)として動作するモジュールを作成してみた。 モジュールの名前は PG-Strom で、ドイツ風に『しゅとろ〜む』と発音する。 これは GPU の処理単位である Streaming Multiprocessor に由来する。 もちろん、現状のFDWのI/F前提なので、更新は不可能でソー

    しゅとろ〜む、しゅとろ〜む - KaiGaiの俺メモ
    mongrelP
    mongrelP 2012/04/10
    プロトタイプでこのスピードってどういうことだよ…\どうせなら汎用的に使えるようにopenCLに(ry
  • 1