Wie Banken FPGAs einspannen können, um Monte-Carlo-Algorithmen zu bezwingen

Mit ihrer geringen Latenz und hohen Flexibilität spielen Intel® FPGAs eine wichtige Rolle im datengesteuerten Banking von heute.

CPUs sind zwar als „Gehirn“ gut geeignet, aber FPGAs sind die echten Arbeitstiere.

Von Alice Hodgson, Technikjournalistin

In der schnelllebigen Bankenwelt ist Zeit fast buchstäblich Geld.

Da Banken und andere Finanzinstitute nach jedem möglichen Vorteil gegenüber ihren Mitbewerbern suchen, kann Technologie eine entscheidende Rolle bei der Bewältigung ihrer täglichen Herausforderungen spielen.

Ein Großteil der Möglichkeiten, die Technologie einer Bank bieten kann, liegt in den Bereichen Risikoanalyse und Hochfrequenzhandel. Im ersten Fall wird das Risiko bemessen – allgemein bekannt als VaR oder Value at Risk – und die Risikoverteilung, basierend auf der Position der Bank und anderer Marktvariablen. Der zweite Fall erfordert, dass Daten so schnell wie möglich decodiert werden, um Handelsentscheidungen zu treffen – in Zehntelnanosekunden, was viel schneller ist als ein Mensch.

Weitere wichtige Vorteile sind der Handel mit extrem niedriger Latenz, der Algorithmushandel und verschiedene Anwendungsbeispiele für die Datenanalyse wie die Netzwerkbeschleunigung.

Dies alles sind Bereiche, in denen Intel® FPGAs helfen können. Grundsätzlich ist ein FPGA (Field Programmable Gate Array) ein Chip, der für verschiedene Funktionen neu programmiert werden kann, aber FPGAs bieten eine Reihe von Vorteilen, die sie perfekt für die oben genannten Situationen machen.

„FPGAs sind auf hohe Flexibilität ausgelegt, nicht nur in der Art und Weise, wie Sie Ihre Rechenleistung implementieren können, sondern auch in der E/A“, so Ronak Shah, Director of Marketing, AI and Market Analytics bei Intel. „FPGAs verfügen über Hunderte oder Tausende von Hochgeschwindigkeits-E/A, die mit sehr hohen Raten betrieben werden können, sodass sie für viele verschiedene Schnittstellentypen konfiguriert werden können.“

CPUs (Central Processing Units) sind zwar ein gutes Gehirn, aber FPGAs sind die echten Arbeitstiere und entlasten die CPUs, indem sie einen einzigen Algorithmus schnell und effizient ausführen. Einer der am häufigsten verwendeten Algorithmen im Bereich der Risikoanalyse heißt Monte Carlo.

Die Monte-Carlo-Algorithmen werden seit mehreren Jahren von Banken für Modellkalibrierung, Wert- und Hedging-Aktivitäten, Risikomanagement und Portfoliooptimierung verwendet. Sie verwenden statistische Informationen wie den Mittelwert der Standardabweichung und versuchen dann, das Modell für mehrere Millionen von Iterationen zu erzeugen, um die schlimmstmöglichen Fälle abzubilden, die eintreten könnten. Auf einer CPU können diese Prozesse bis zu vier Stunden dauern, sodass sie normalerweise über Nacht durchgeführt werden, aber mit der FPGA-Beschleunigung kann diese Zeit deutlich reduziert werden.

Der Vorteil der Verwendung von FPGAs liegt jedoch zunehmend in anderen Bereichen als der Geschwindigkeit. Mit der nächsten Generation von FPGAs von Intel, die eine cache-kohärente Schnittstelle namens CXL implementiert, kann der Algorithmus aufgeteilt werden, wobei verschiedene Teile davon auf der CPU (Hostprozessor) und dem FPGA (Offload Accelerator) ausgeführt werden können. Beide Produkte greifen immer noch auf denselben Arbeitsspeicher zu, sodass Sie die Daten nicht vom DDR-Speicher (Double Data Rate) des Hosts nach unten in den DDR-Speicher des Beschleunigers verschieben müssen. So können Sie herausfinden, wo der Algorithmus aufgeteilt werden sollte und wie er am besten funktioniert.

„Obwohl FPGAs eine hohe Leistung aufweisen, hatten sie bisher den Ruf, dass es schwierig ist, mit ihnen zu arbeiten“, erklärt Shah, „also entwickeln wir softwarebasierte Datenflüsse, um den Zugriff über heterogene Programmiersprachen wie OpenCL zu ermöglichen. Wir bauen außerdem eine Reihe von Bibliotheken auf, in denen wir viele dieser Bausteinfunktionen optimiert haben, damit der Endbenutzer in einer C++-basierten Sprache bleiben und auf diese Bibliotheken zugreifen kann, um die Algorithmen noch viel mehr zu beschleunigen.“

Monte Carlo ist im Vergleich zu anderen Ansätzen, wie z. B. partiellen Differentialgleichungen (PDE) und Quadratur, ggf. ineffizient – diese lösen jedoch nicht so viele Probleme wie die Monte-Carlo-Algorithmen. Da die Pläne für die nächsten zwölf Monate in vollem Gange sind, konzentriert sich Intel darauf, diese FSI-Herausforderung zu lösen.

Weitere Informationen: