FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System
Field-Programmable Array (FPGA) technology is extensively used in Finance. This paper describes a high-throughput key-value store (KVS) for securities trading system applications using an FPGA. The design uses a combination of hashing and B-Tree techniques and supports a large number of keys (40 mil...
Main Authors: | , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2022-12-01
|
Series: | Electronics |
Subjects: | |
Online Access: | https://www.mdpi.com/2079-9292/12/1/183 |
_version_ | 1797625991921664000 |
---|---|
author | Sunil Puranik Mahesh Barve Swapnil Rodi Rajendra Patrikar |
author_facet | Sunil Puranik Mahesh Barve Swapnil Rodi Rajendra Patrikar |
author_sort | Sunil Puranik |
collection | DOAJ |
description | Field-Programmable Array (FPGA) technology is extensively used in Finance. This paper describes a high-throughput key-value store (KVS) for securities trading system applications using an FPGA. The design uses a combination of hashing and B-Tree techniques and supports a large number of keys (40 million) as required by the Trading System. We have used a novel technique of using buckets of different capacities to reduce the amount of Block-RAM (BRAM) and perform a high-speed lookup. The design uses high-bandwidth-memory (HBM), an On-chip memory available in Virtex Ultrascale+ FPGAs to support a large number of keys. Another feature of this design is the replication of the database and lookup logic to increase the overall throughput. By implementing multiple lookup engines in parallel and replicating the database, we could achieve high throughput (up to 6.32 million search operations/second) as specified by our client, which is a major stock exchange. The design has been implemented with a combination of Verilog and high-level-synthesis (HLS) flow to reduce the implementation time. |
first_indexed | 2024-03-11T10:04:16Z |
format | Article |
id | doaj.art-bcabc8c8dd7b4027aead73b10e85aa56 |
institution | Directory Open Access Journal |
issn | 2079-9292 |
language | English |
last_indexed | 2024-03-11T10:04:16Z |
publishDate | 2022-12-01 |
publisher | MDPI AG |
record_format | Article |
series | Electronics |
spelling | doaj.art-bcabc8c8dd7b4027aead73b10e85aa562023-11-16T15:12:14ZengMDPI AGElectronics2079-92922022-12-0112118310.3390/electronics12010183FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading SystemSunil Puranik0Mahesh Barve1Swapnil Rodi2Rajendra Patrikar3Tata Consultancy Services, Pune 411057, IndiaTata Consultancy Services, Pune 411057, IndiaTata Consultancy Services, Pune 411057, IndiaDepartment of Electronics, Visvesvaraya National Institute of Technology, Nagpur 440012, IndiaField-Programmable Array (FPGA) technology is extensively used in Finance. This paper describes a high-throughput key-value store (KVS) for securities trading system applications using an FPGA. The design uses a combination of hashing and B-Tree techniques and supports a large number of keys (40 million) as required by the Trading System. We have used a novel technique of using buckets of different capacities to reduce the amount of Block-RAM (BRAM) and perform a high-speed lookup. The design uses high-bandwidth-memory (HBM), an On-chip memory available in Virtex Ultrascale+ FPGAs to support a large number of keys. Another feature of this design is the replication of the database and lookup logic to increase the overall throughput. By implementing multiple lookup engines in parallel and replicating the database, we could achieve high throughput (up to 6.32 million search operations/second) as specified by our client, which is a major stock exchange. The design has been implemented with a combination of Verilog and high-level-synthesis (HLS) flow to reduce the implementation time.https://www.mdpi.com/2079-9292/12/1/183key-value storeField-Programmable Gate Arrays (FPGA)high-level synthesis (HLS)system performanceB-Treehashing |
spellingShingle | Sunil Puranik Mahesh Barve Swapnil Rodi Rajendra Patrikar FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System Electronics key-value store Field-Programmable Gate Arrays (FPGA) high-level synthesis (HLS) system performance B-Tree hashing |
title | FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System |
title_full | FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System |
title_fullStr | FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System |
title_full_unstemmed | FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System |
title_short | FPGA-Based High-Throughput Key-Value Store Using Hashing and B-Tree for Securities Trading System |
title_sort | fpga based high throughput key value store using hashing and b tree for securities trading system |
topic | key-value store Field-Programmable Gate Arrays (FPGA) high-level synthesis (HLS) system performance B-Tree hashing |
url | https://www.mdpi.com/2079-9292/12/1/183 |
work_keys_str_mv | AT sunilpuranik fpgabasedhighthroughputkeyvaluestoreusinghashingandbtreeforsecuritiestradingsystem AT maheshbarve fpgabasedhighthroughputkeyvaluestoreusinghashingandbtreeforsecuritiestradingsystem AT swapnilrodi fpgabasedhighthroughputkeyvaluestoreusinghashingandbtreeforsecuritiestradingsystem AT rajendrapatrikar fpgabasedhighthroughputkeyvaluestoreusinghashingandbtreeforsecuritiestradingsystem |