2017-01-01から1年間の記事一覧

PostgreSQL v11新機能先取り:Hash-PartitioningとParallel-Append

今回のエントリーは PostgreSQL Advent Calendar 2017 - Qiita に参加しています。PG-Stromの視点からも、PostgreSQL v11には首を長くして待っていた機能が2つ入っている。その1:Hash-Partitioning github.comその2:Parallel-Append github.comHash-Part…

GTCJapan雑感と、ちょっとした思い付き。

12月12日(火)~13日(水)にかけて、お台場のヒルトンホテルでGPU Technology Conference Japanが開催された。(関係者の皆様、お疲れさまでした!) www.gputechconf.jp当方の出番は、初日夕方の INCEPTION AI Startup Summit というスタートアップ19社のプレ…

gstore_fdw: GPUメモリをSQLで読み書き、そして…。

昨年、PGconf.ASIAで発表したPL/CUDAによる創薬ワークロードの高速化実験のテーマであるが、 kaigai.hatenablog.com 実測したベンチマークを見ると、奇妙な傾向が見てとれる。 このワークロードにおける計算量は「Qの行数×Dの行数」であるので、Dの行数が同…

カスタムロジックをWHERE句で使う

しばらくSSD-to-GPUダイレクトSQL実行の開発にどっぷり時間を突っ込んでいたので、久々にPL/CUDAネタ。この辺のネタや、 kaigai.hatenablog.comこの辺のネタで kaigai.hatenablog.com紹介したように、PG-Stromはユーザ定義関数をCUDA Cで記述するための機能…

スキャン速度10GB/sへの挑戦~その②~

一年半ほど前、次のようなエントリーを書いた。kaigai.hatenablog.comかいつまんで言うと、多段JOINのように、実際に実行してみないと結果行数が明らかではなく、かつ、ステップ(k+1)の最適な問題サイズがステップkの結果に依存する場合、Kepler以降のGPUで…

GpuJoinの結果バッファ問題を考える。

GPUでSQLのJOIN処理を実装する場合、一つ悩ましい問題は、JOINの結果生成されるレコード数は実際に実行してみなければ正確には分からないという点である。 JOINを処理した結果、行数が減る事もあれば増える事もある。減るパターンはまだ良いとして、時として…

GpuJoin + GpuPreAgg combined kernel

以下のクエリは、t0とt1の2つのテーブルをJOINし、その結果をGROUP BYして出力するものである。 しかし、EXPLAIN ANALYZEの出力には奇妙な点がある。 postgres=# explain analyze select cat,count(*),avg(ax) from t0 natural join t1 group by cat; QUERY …

Pascal以降のUnified Memoryを使いたおす。

今でこそTESLA P40に24GBのRAMが載り、コンシューマ向けでもGTX1080Tiに11GBのRAMが搭載されてたりと、GPU側でも10GBを越えるメモリを積むことは珍しくなくなってきた*1。 長らく自分の開発環境で頑張ってくれたGTX980は(当時のハイエンド製品だったにも関…

NECを退職し、新会社を立ち上げました。

ご報告が遅れましたが、6月30日付で新卒の2003年から14年あまり勤務したNECを退職しました。 また、本日、東京法務局品川出張所においてヘテロDB株式会社の登記申請を行い、また、併せて新会社のチーフアーキテクト兼代表取締役社長に就任しました。今後は、…

スキャン速度 10GB/s への挑戦~その①~

PCIe直結のNVMe-SSDは、コントローラの性能にもよるものの、PCIe x4接続のコンシューマ製品であれば一枚あたり1.8GB/s~3.5GB/s、PCIe x8接続のエンタープライズ製品であれば一枚あたり5.0GB/s~6.0GB/sものスループットを出すことができる。ただ、実際には…

GTC2017 - 個人的トピック

個人的トピックまとめ。 ポスター発表 今回、急遽渡米することを決めた理由がこのポスター発表。セッションやトレーニングと並行して、GTCではGPUを用いた研究開発ネタのポスター展示が行われており、今年は約140件のポスター展示が採択されている。 このう…

GTC2017 - Tesla V100 と CUDA9.0

今年のGTCはジェンスン・ファンCEOの基調講演が3日目に設定されており、そこでVolta世代の新製品 Tesla V100 と、それを搭載するDGX-1などサーバ製品とGPUクラウドが発表された。 4日間の日程のうち、情報の解禁が3日目の正午なので、その後は慌ただしくVolt…

Posters flying on GTC2017

I'm on GTC(GPU Technology Conference) this year again. I didn't plan to trip because of travel budget, so only posters are submitted and approved. (Posters are shown regardless of the attendance of the presenter.)But I got an e-mail below.…

進捗)SSD-to-GPU ダイレクトSQL実行機能

ここ暫くブログでまとめていなかった、SSD-to-GPUダイレクトSQL実行機能の進捗について。この機能をかいつまんで言うと、NVMe-SSDに格納されているPostgreSQLのデータブロックをGPU RAMに直接転送し、そこでSQLのWHERE句/JOIN/GROUP BYを実行することで見か…

PCIeスロット接続型NVMe-SSDまとめ(2017年4月時点)

SSD

PCIeスロット接続型のNVMe-SSDのスペック等、各社どうだったけな~と探すものの、案外まとまった情報がないので自分でまとめてみた。ブックマーク代わりです。 基本的に各社のWebに掲載されているカタログスペックを転記。手作業なので内容の正確さに関して…

AWSのP2.*インスタンスで PG-Strom を試す

従前、AWSの提供するGPUインスタンス g2.* に搭載されているGPUはGRID K520というちょっと古いモデルで、PG-Stromは非対応だった。 理由は、一年ほど前にComputing Capability 3.5以降で対応のDynamic Parallelism機能を使うように全面的に作り直したからで…

2017年の開発ロードマップについて考える

あけましておめでとうございました。(やや出遅れ感)新年という事で、この一年、どういった技術開発に取り組んでいきたいかをざーっと書き出してみる事にする。 これらのうち、いくつかはPostgreSQL本体機能の強化を伴うものであったりするので、ある程度計…