Tuesday 31 January 2017

Fpga Handelssystem

Ich habe über verschiedene Implementierungen von HFT-Systemen auf FPGAs gelesen. Meine Frage ist, welchen Teil von HFT-Systemen heute überwiegend auf FPGAs implementiert sind FPGAs immer noch sehr beliebt Ist nur der Feed-Handler auf den FPGAs implementiert? Weil einige dieser oben beschriebenen Systeme nur einen auf dem FPGA implementierten Feed-Handler haben, weil sich die Strategie ändert Zu viel, oder ist zu schwer zu implementieren auf FPGAs. Andere behaupten, dass sie auch Handelsstrategien auf FPGAs implementiert haben oder Hochleistungs-NICs anstelle von FPGAs zum Aufbau von HFT-Systemen verwenden. Ive gelesen über verschiedene Annäherungen, aber ich finde es schwer zu vergleichen, da die meisten Resultate auf verschiedenen Eingangssätzen geprüft werden. Ich glaube, Sie können etwas in einem ASIC (d. H. Direkt in der Hardware) zu tun. Allerdings ist der Prozess der Fertigung an sich teuer, und man bekommt ein Design, das man nachher nicht ändern kann. ASICs sind für vordefinierte Aufgaben wie Bitcoin-Mining, bekannte Datenverarbeitungsalgorithmen usw. sinnvoll. Auf der anderen Seite haben wir gewöhnliche CPUs (sowie Coprozessor-CPUs und GPUs), die allgemeingültig sind Von gleichzeitigen Befehlen) Befehlssatz mit einer sehr hohen Geschwindigkeit. FPGAs sind der Mittelweg. Sie sind Hardware-Emulatoren und als solche kann als 10x langsamer als tatsächliche Hardware betrachtet werden, aber immer noch leistungsfähiger für gleichzeitige Operationen als CPUs vorausgesetzt, Sie sind in der Lage, die Matrix verwenden, um Ihre Logik entsprechend zu verbreiten. Einige Anwendungen von FPGAs sind: Videotranskodierung (zB HD-Videodecodierung in Fernsehgeräten) sowie verschiedene Datenerfassungskarten Festgelegte Datenstrukturanalyse (Regex-Parsing) Diskrete System-Simulation (zB Simulation des Spiels) Vieles richtig eingebettet Anwendungen wie z In der Luft - und Raumfahrt oder in der wissenschaftlichen Forschung Das Problem mit FPGAs für Quant-Anwendungen ist, dass es nicht so gut für Gleitkomma-Berechnungen ist, zumal herkömmliche CPUs bereits mit Dingen wie SIMD optimiert sind. Für alle Datenstrukturen mit festem oder festem Format können Sie das FPGA-Design jedoch so konfigurieren, dass gleichzeitig viel Verarbeitung ausgeführt wird. Manche Dinge, die im Handel getätigt werden, nutzen FPGA für Feedhandler (direkt aus dem Netzwerkstrom analysieren) sowie bestimmte Teile der Handelsstruktur (zB Orderbücher) in der Hardware aufbauen, um mit der sich schnell verändernden Datenstruktur umgehen zu können Laden der CPU. FPGAs zielen hauptsächlich darauf ab, das Anliegen der schnellen Datenverarbeitung zu berücksichtigen, ohne die Ausbreitungskosten zu bezahlen. Dies ist besonders im Gegensatz zu Geräten wie GPGPU (oder jeder PCI-Wohnung Karte wie Xeon Phi), die Leistung Strafen für das Erhalten von Daten aus dem Gerät bezahlen. Das heißt, DMA-Optionen sind in dieser Hinsicht zu verbessern. FPGAs sind wirklich nichts weiter als die gleichen Logikblöcke, die immer wieder im gesamten Silizium wiederholt werden, mit konfigurierbaren Schaltern, um die Logikblöcke miteinander zu verbinden. Dies macht FPGAs sehr gut - und schnell - im Umgang mit repetitiven Problemen, die in einer Hardware-Schaltung beschrieben werden können, die sich nicht während des Betriebs ändert. Und Sie können buchstäblich Tausende oder Zehntausende dieser Schaltungen, die alle parallel in der gleichen Zeit, in nur einem FPGA. CPUs auf der anderen Seite basieren auf der ALU, die Befehle lädt, Daten lädt, auf die Daten arbeitet, die Ergebnisse speichert und dann wieder von vorn anfängt. CPUs sind dann sehr gut - und schnell - im Umgang mit Problemen, die sich ständig verändern - sowohl in der Größe als auch im Umfang und beim Umschalten zwischen verschiedenen Aufgaben. Die heutige CPU oder Kern wird Zehn bis Hunderte von ALUs mit parallelen Pipelines für Daten und Anweisungen, die sie sehr schnell bei komplexen Problemen, die parallel bearbeitet werden können, macht. Diese Entwürfe machen FPGAs schneller bei einfacheren Problemen, die mit einer großen parallelen Architektur angegriffen werden können - wie zum Beispiel das Vervielfachen von mehreren Daten-Feeds in weniger als Mikrosekunden, Draht zu Draht oder das Auslösen eines vorberechneten Kaufs, Verkaufs oder Abbruchs Auf einen Preis, der zu einem bestimmten Muster passt. CPUs sind schneller bei komplexeren Problemen, die weniger Parallelität erfordern, wie die Berechnung der Korb von Käufen, verkauft und storniert erforderlich, um ein Portfolio risikoadjustiert oder Integration einer Reihe von Preis-und Nachrichtenquellen mit unterschiedlichem Alter und Qualität in den Handel Indikatoren verwendet werden Händler und Management zu entscheiden, welche Anpassungen sie an das Handelssystem zu machen. Wo FPGAs in HFT verwendet werden, hängt stark von der Architektur des jeweiligen Shops ab. Sie werden am besten verwendet, um einfache, sich wiederholende, breite Aufgaben durchzuführen und schnell durchzuführen. CPUs sind ein Schweizer Messer, das die meisten Dinge tun kann, vor allem, wenn sich die Anforderungen ändern und die Dimensionen des Problems nicht vollständig am Anfang verstanden werden. Beantwortet Ihre Frage wirklich macht nicht viel Sinn. Seine wie fragen, wie viel der Verkabelung in der Handelsinfrastruktur verwendet Faser und wie viel davon Kupfer verwendet. Die beste Antwort, die wir Ihnen geben können ist, dass ein FPGA nicht eine magische Kugel ist. Dies ist eine falsche Interpretation von Ciscos Weißbuch. Es gibt sehr wenig Überlappung zwischen den Anwendungsfällen des Switching-Gewebes und denen eines FPGAs. Welche Teile von HFT-Systemen heute überwiegend auf FPGAs implementiert werden Derzeit werden FPGAs häufig in unseren Druckern und TV-Set-Top-Boxen eingesetzt. Ich möchte den digitalen Signalverarbeitung (DSP) Block mit ALUs hervorheben. Die heutigen FPGAs verfügen über Hunderte von programmierbaren DSP-Blöcken, die größten Tausende. Jetzt haben Sie plötzlich Tausende von kleinen Prozessoren zu Ihrer Verfügung, die alle in der Lage, Berechnungen parallel durchzuführen. Dies ist weit über die Parallelität der Xeon Phi oder GPUs. In der Tat, wenn youre Möglichkeiten Preismodellierung oder stochastische Risikomodellierung auf FPGA, können Sie mehr als 100-fache Leistungssteigerung im Vergleich zu den neuesten GPUs und noch mehr im Vergleich zu den neuesten CPUs. Zusammen mit den DSP-Blöcken ist der andere Hauptfaktor in diesem Leistungsgewinn der Speicher-Cache. FPGA verfügt über integrierte verteilte RAM, die extrem schnell, so dass eine Bandbreite von 100 TB s auf Datapath-Ebene erreicht werden kann. Mit heutigen FPGAs für Algo-Strategien gibt große und massiv gleichzeitige Compute-Ressource, die in der Lage ist, 100 bis 1000-fache Leistungssteigerung im Vergleich zu GPUs oder CPUs zu geben. Die wichtigsten Vorbehalte ist, dass Sie in schriftlicher Form in Verilog oder VHDL werden müssen :) Sanjay Shah CTO Nanospeed beantwortet eine Vielzahl von leistungsfähigen, viele Core-Prozessoren beginnen, ihren Weg in die Hardware zu machen Beschleunigungsraum, der zuvor vollständig von FPGAs besessen wurde. Unternehmen wie Tilera, Adapteva und Coherent Logix stellen alle diese Prozessoren hier in den USA zur Verfügung, wobei auch Enyx aus Frankreich Einzug hält. Das wahre Maß der Effektivität dieser massiv parallelen Prozessoren liegt in der Reife ihrer Software-Tools. Das ist, wo der potenzielle Nutzer sollte ihre Aufmerksamkeit. Keiner will mit manuellen Techniken Zehner oder Hunderte von Kernen programmieren oder debuggen. Natürlich versteht es sich von selbst, dass die I O-Bandbreite ebenso wichtig ist. In meiner persönlichen Erfahrung in diesem Raum Im sehen Kunden Annahme von Coherent Logix Prozessoren als Co-Prozessoren oder Hardware-Beschleuniger für C-Sprache Algo-Beschleunigung. Durch den schnellen Designzyklus einer C-basierten Umgebung können Algo-Programmierer den Code nach Herzenslust optimieren und sich nicht um teure und zeitintensive HDL-Codierungen für FPGAs kümmern. Die optimale Partitionierung besteht darin, dass FPGAs das tun, was sie am besten können - feste repetitive Operationen - und viele Core-Prozessoren tun, was sie am besten können: Beschleunigung der Produktivität der Entwickler und der Ausführungsgeschwindigkeit. John Irza, Business Development Manager, Coherent Logix, Inc. beantwortet Aug 6 14 at 0:42 Fast alle HFT-Shops verwenden FPGA-Architektur. Diese Geräte müssen häufig ersetzt werden, da die schnell von den neuesten Verbesserungen in Geschwindigkeit, Pipelines, Parallelität, etc. überholt werden. Wenn Sie nicht bereit sind, 2M pro Jahr investieren, herauszufinden, eine andere Strategie. Lot von Jungs, die tägliche Preisbewegungen mit Feder und Papier tun, bilden Milliarden in Omaha, NB. Antwort # 1 am: August 20, 2010, 07:48:49 pm »Ihre Antwort 2016 Stack Exchange, IncFramework beschleunigt Anwendung Entwicklung von ultra-low-Latency-Finanzsysteme. Seit dem Aufkommen des elektronischen Handels, hat ein Rennen für Geschwindigkeit folgte, um die schnellsten und intelligentesten Handelsplattformen zu bauen. Die Ansprechzeit ist von Sekunden auf Millisekunden und Mikrosekunden gesunken. Der Antrieb für die Mikrosekunden - und Submikrosekunden-Ansprechzeit ist mit herkömmlichen Software - oder einfachen Hardwarearchitekturen einfach nicht möglich, was die Einführung der FPGA-Technologie in Ultralow-Latency-Systemen vorantreibt. Um das Risiko bei der Entwicklung von Hardwarebeschreibungssprache (HDL) nativ auf einer FPGA-Ethernetkarte zu reduzieren und gleichzeitig die Entwicklungszeit zu verkürzen, hat AdvancedIO den Einsatz von FPGA-Frameworks für 10-Gigabit-Ethernet (10GE) - Kommunikation vorangetrieben. Das AdvancedIO expressXG Development Framework Tool Set stellt die notwendige Infrastruktur zur Verfügung, um eine schnelle Bereitstellung von Finanzdienstleistungen zu gewährleisten und eine nahtlose Portierung auf die neueste Generation von FPGA-Karten zu ermöglichen. - Rafeh Hulays, PhD, Vice President, Geschäftsentwicklung, AdvancedIO Systems Inc. Zusätzliche Informationen


No comments:

Post a Comment