Xilinxの日本法人であるザイリンクスは9月18日に記者説明会を開催、本社のAlastair Richardson氏(Photo01)が自社のFintechに関する取り組みについて説明を行った。

  • Xilinx

    Photo01:Alastair Richardson氏(Business Development Manager - Fintech)。2018年のXilinx入社以前はHuaying Technologies、Fixnetix、Barclays Capital、Credit Suisseなどの金融機関やFintech企業で15年以上の経験を積んできたとの事

さて、XilinxとFintechの関係性だが、金融業界でFPGAが使われる、という話は10年ほど前からあった。具体的に言えば、最初に同業界でFPGAが採用されたのは超高速取引(Photo02で言うところの高頻度取引)であった。これはそれほど複雑なアルゴリズムは実装されないものの、その代わりに最近では処理時間がナノ秒オーダーに高速化されているそうである。次いで、いわゆる電子取引に利用されるようにもなった。以前はこれも超高速取引の中に分類されていたと思うが、こちらは高頻度取引ほどのレスポンスタイムは要求されない(それでもマイクロ秒のオーダー)が、その代わりに処理することがかなり増加したという。特に、さまざまな規制を満たしているどうか、といったチェックがかなり厳しくなっているそうで、最近の動向で言えばバーゼルIIIに絡んで2021年(TLAC規制)とか2022年(バーゼルIIIの最終合意の実施)などに新しい規制項目が増える事になる。こうしたものを限られた時間の中で処理する必要があるために、FPGAが活用されることとなる。

  • Xilinx

    Photo02:このスライドは本来、それぞれの用途にどんなソリューションが適しているかを説明するためのものである

これらの使い方に比べて最近、新たなアプリケーションとして注目され始めたのは「クオンツ(以前はロケットエンジニアなどと呼ばれていた、高度な数理分析が可能な金融工学の専門家)」向けに、さまざまな数理モデルを構築したりシミュレーションを行ったり、といった分析を行うための用途である。以前はこれをCPUで行っていたが、昨今ではより高速性(分単位でのレスポンスが要求されるようになってきた)を求めて、FPGAが利用されるようになってきたとする。

そしてもっとも直近では、最新のAIやビッグデータなどの処理用途としての活用である。具体的な例としてRichardson氏が挙げたのは、インデックスされていない、非構造化データの分析である。例えば銀行や証券のトレーダーの席には、ニュースを常に流す画面が置かれている(この画面にデータを流しているのがロイターやブルームバーグである)。トレーダーはそのニュースを常に監視しながら、何か起きた場合には直ちに取引を行うといった事を行っている(例えば円が下がりそうなら売り、代わりに米ドルを買うとか、ある会社の不祥事が発覚したら直ちにそこの株の現物を売るor空売りするなどだ)。これをトレーダーではなくマシンに行わせようとすると、まずニュース番組を画像認識や音声認識を使って解析し、次いでそのニュースの意味するところをAIを利用して分析、その結果に応じて取引を行うといった実装が必要になってくる。現時点でどこまでこれが利用できるかはハッキリ判らない(実際にどこの金融機関や証券会社にどのようなシステムが入っているか、は当然ながら極秘情報なのでそもそも情報が少ないそうだ)が、例えば2017年2月にMIT Technology Reviewは米ゴールドマンサックスが約600人のトレーダーを解雇、その代わり9000人あまりのエンジニアを抱えていると報じていることからも、決して空絵事ではない。

こうしたシステムを実装するにあたっては、CPUをベースとしたシステムでももちろん構わないが、求められる性能を満たすのが難しくなってきているのが実情で、その性能を実現するための存在がFPGAという事になる。

FPGAに求められる機能が増えてきた結果として、あるアプリケーションを構築するのに2年を要する、といったケースも出てきた。ところが金融の業界では要件や規制がそれよりも早く変化する事も珍しくないことから、2年も開発時間を掛けたものの、結局はお倉入りという事もありえる。

こうした事に対応するのがSDAccelであると同社では主張している。Photo02で言えば、高頻度取引などは性能最優先になるため、Xilinxの開発スイート「VIVADO」を使ってVerilogで回路を書いていくしかない(そのため大規模の選任FPGAチームが要求される)が、電子取引であればVivado HLS経由で高位言語で記述することで生産性を改善できる。そしてクオンツ向けのアプリケーションは、VerilogではなくSDAccel経由でOpenCLで記述することで、ソフトウェアエンジニアでも利用できる様にすることで、生産性の改善を図れる、というのが同社のメッセージである。特にSDAccelを利用する場合、オンプレミス/クラウド関係なく、一度記述すればどこでも利用できる、という点もメリットになるとしていた(Photo03)。

  • Xilinx

    Photo03:実際のところ、同じVirtex Ultrascale+であってもピンやロジックセル数が異なるとBitstreamの生成し直しが必要になるが、SDAccel経由であればそうした事は全部SDAccelの側が行ってくれるので、エンジニアがそうした事に悩む必要がなくなることもメリットの1つとされた

ここまで説明してきた内容は、すでに実際に利用されているものであるということで、いくつかのベンチマーク結果も同時に示された(Photo04~09)。

  • Xilinx

    Photo04:これはSTAC-T0 Benchmarkを行ったケース。Kintex UltrascaleとSolarframeのNICなどを組み合わせる事で、98nsで取引が行えることが示されたとしている

  • Xilinx

    Photo05:クオンツ向けともいえるモンテカルロのシミュレーション性能を、Xeon E5-2697 v4およびNVIDIA Tesla V100と比較した結果。消費電力あたりの性能であることに注意が必要

  • Xilinx

    Photo06:同じくクオンツ向けのシミュレーションを利用したモデル計算。価格および消費電力あたりの性能の比較となっている

このほか、同氏は2019年4月に買収したSolarflare Communicationsについても言及した。SolarflareはSmartNICやAccleratorを提供するベンダーだが、同社のSmartNICは金融機関200社以上に採用されており、「金融機関向けのデファクトスタンダード」(同)という位置づけにあるとする。特に同社のOnloadは、アプリケーションからドライバを経由せずに直接SmartNICを叩ける(ためにLatencyが劇的に少なくなる)という特殊な技術である。同社としては、このSmartNICとAlveo、それとSDAccelを組み合わせたソリューションで、さらにFintech分野における採用事例を増やしていきたい、としている。