Araştırma Makalesi
BibTex RIS Kaynak Göster

Veritabanı Uygulamalarında FPGA Tabanlı Hızlandırıcı Kullanımı

Yıl 2021, Sayı: 22, 146 - 151, 31.01.2021
https://doi.org/10.31590/ejosat.848995

Öz

Yazılım uygulamalarının performansı, sistem düzeyindeki çeşitli özellikler ile ölçülebilir. Sistem performansı iki ana faktör tarafından belirlenir: veri hesaplama ve hareket kapasitesi. Hesaplama performansı için, merkezi işlem birimi (CPU) mimarisi en önemli faktördür. Bir CPU mimarisi, temel hesaplamaları gerçekleştirmek için aritmetik mantık birimlerini (ALU) kullanır. Bu ALU'ların karmaşıklığı, ilkel aritmetik işlemlerin basamak boyutu ile belirlenir. Bir CPU'nun hesaplama performansı, ALU mimarilerinin performansı ile sınırlıdır. Daha yüksek performans için, CPU çekirdek mimarilerinde artan sayıda ALU kullanılır. Ayrıca, CPU üreticileri, belirli bir sürede gerçekleştirilen işlemlerin sayısını artırmak için çok çekirdekli mimariler tasarlamaktadırlar. Bu iki yaklaşım hesaplama birimlerinin miktarını artırsa da, bu yine de bazı işlem-yoğun uygulamalar için yeterli değildir. Bazı problemler doğası gereği paralelleştirilemezler ve birden çok çekirdek arasında dağıtık olarak çalıştırılmaları zordur. Paralelleştirilebilir sorunlar için bile, çok çekirdekli bir çözüm, çekirdekler arasındaki veri giriş/çıkış sınırlamaları nedeniyle tüm CPU mimarisini yüksek bir yüzdeyle kullanamamaktadır. Veri hareketi için, sistemin bellek hiyeararşisinin yapısı baskın faktördür. Farklı düzeydeki önbelleklerin boyutu (L1, L2 ve L3), DDR arayüzünün bant genişliği (DDR4, DDR5, vb.) işlem-yoğun yazılım uygulamalarının performansını belirler. Özellikle veritabanı uygulamaları büyük miktarda veri içerdiğinden, hız için en önemli faktör bellek arayüzü haline gelir. FPGA mimarilerinin hızlandırıcı olarak kullanımı son zamanlarda işlem-yoğun yazılım uygulamalarında popüler hale gelmektedir. Bu makalede, bir FPGA mimarisinde uygulanan basit bir veritabanı sorgulama uygulaması sunulmuştur. Sonuçlar, büyük miktarda veriyle ilgili sorguları içeren veritabanı uygulamaları için önemli bir performans iyileştirmesi elde edilebileceğini göstermektedir.

Destekleyen Kurum

TÜBİTAK

Proje Numarası

118E044

Teşekkür

Bu çalışma, TÜBİTAK tarafından 118E044 numaralı araştırma projesi altında desteklenmiştir. TÜBİTAK'a bu konudaki desteklerinden dolayı teşekkür ederiz.

Kaynakça

  • Alpern, B., Carter, L., Feig, E., & Selker, T. (1994). The uniform memory hierarchy model of computation. Algorithmica, 72.
  • Eigenmann, R., & Lilja, D. J. (1998). Von neumann computers. Wiley Encyclopedia of Electrical and Electronics Engineering, 23, 387-400.
  • Hammarlund, P., Martinez, A. J., Bajwa, A. A., Hill, D. L., Hallnor, E., Jiang, H., . . . Osborne, R. (2014). Hammarlund, Per, et al. "Haswell: The fourth-generation intel core processor. IEEE Micro, 6-20.
  • Hennessy, J. L., & Patterson, D. A. (2011). Computer architecture: a quantitative approach. Elsevier.
  • Jacobsen, M., Richmond, D., Hogains, M., & Kastner, R. (2015). RIFFA 2.1: A reusable integration framework for FPGA accelerators. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 8, 1-23.
  • Jayapandian, M., & Jagadish, H. V. (2008). Automated creation of a forms-based database query interface. Proceedings of the VLDB Endowment 1.1, (s. 695-709).
  • Lam, M. D., Rothberg, E. E., & Wolf, M. E. (1991). The cache performance and optimizations of blocked algorithms. ACM SIGOPS Operating Systems Review, 63-74.
  • Lysaght, P., Blodget, B., Mason, J., Young, J., & Bridgford, B. (2006). Enhanced architectures, design methodologies and CAD tools for dynamic reconfiguration of Xilinx FPGAs. In 2006 International Conference on Field Programmable Logic and Applications (s. 1-6). IEEE.
  • Mert, A. C., Öztürk, E., & Savaş, E. (2019). esign and implementation of encryption/decryption architectures for bfv homomorphic encryption scheme. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 353-362.
  • Molka, D., Hackenberg, D., Schöne, R., & Nagel, W. E. (2015). Cache coherence protocol and memory performance of the intel haswell-ep architecture. 44th International Conference on Parallel Processing (s. 739-748). IEEE.
  • Navathe, S. B., & Elmasri, R. A. (2001). Fundamentals of Database Systems with Cdrom and Book. Addison-Wesley Longman Publishing Co., Inc.
  • XILINX. (2016). 7 Series FPGAs Configurable Logic Block - User Guide. Zazo, J. F., Lopez-Buedo, S., Audzevich, Y., & Moore, A. W. (2015). A PCIe DMA engine to support the virtualization of 40 Gbps FPGA-accelerated network appliances. In 2015 International Conference on ReConFigurable Computing and FPGAs (ReConFig) (s. 1-6). IEEE.

FPGA Accelerator Utilization in Database Applications

Yıl 2021, Sayı: 22, 146 - 151, 31.01.2021
https://doi.org/10.31590/ejosat.848995

Öz

Performance of software applications is determined by various system-level properties. System performance is determined by two major factors: data movement and computational bandwidth. For computational performance, central processing unit (CPU) architecture is the most important factor. A CPU architecture utilizes arithmetic logic units (ALU) to realize basic computations. Complexity of these ALUs is determined by the digit size of primitive arithmetic operations. Computational performance of a CPU is limited by the performance of its ALU architectures. For increased performance, CPU architectures utilize increased number of ALUs in their core architectures. Also, CPU manufacturers build multi-core architectures to increase number of operations realized in a given time. Although these two approaches increase the amount of computational units, this is still not enough for some compute-intensive applications. Some problems are inherently sequential and difficult to schedule amongst multiple cores. Even for parallelizable problems, a multi-core solution is not utilizing the entire CPU architecture with a high percentage, due to data i/o limitations between cores. For data movement, the structure of memory hieararchy of the system is the dominant factor. Size of different level caches (L1, L2 and L3), bandwidth of the DDR interface (DDR4, DDR5, etc.) determine the performance of compute-intensive software applications. Especially for database applications, since there is a large amount of data involved, the most important factor for speed becomes the memory interface. Usage of FPGA architectures as accelerators recently gained attention for compute-intensive software applications. In this paper, a simple database query application implemented on an FPGA architecture is presented. The results show that a significant performance improvement can be achieved for database applications involving queries on large amount of data. 

Proje Numarası

118E044

Kaynakça

  • Alpern, B., Carter, L., Feig, E., & Selker, T. (1994). The uniform memory hierarchy model of computation. Algorithmica, 72.
  • Eigenmann, R., & Lilja, D. J. (1998). Von neumann computers. Wiley Encyclopedia of Electrical and Electronics Engineering, 23, 387-400.
  • Hammarlund, P., Martinez, A. J., Bajwa, A. A., Hill, D. L., Hallnor, E., Jiang, H., . . . Osborne, R. (2014). Hammarlund, Per, et al. "Haswell: The fourth-generation intel core processor. IEEE Micro, 6-20.
  • Hennessy, J. L., & Patterson, D. A. (2011). Computer architecture: a quantitative approach. Elsevier.
  • Jacobsen, M., Richmond, D., Hogains, M., & Kastner, R. (2015). RIFFA 2.1: A reusable integration framework for FPGA accelerators. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 8, 1-23.
  • Jayapandian, M., & Jagadish, H. V. (2008). Automated creation of a forms-based database query interface. Proceedings of the VLDB Endowment 1.1, (s. 695-709).
  • Lam, M. D., Rothberg, E. E., & Wolf, M. E. (1991). The cache performance and optimizations of blocked algorithms. ACM SIGOPS Operating Systems Review, 63-74.
  • Lysaght, P., Blodget, B., Mason, J., Young, J., & Bridgford, B. (2006). Enhanced architectures, design methodologies and CAD tools for dynamic reconfiguration of Xilinx FPGAs. In 2006 International Conference on Field Programmable Logic and Applications (s. 1-6). IEEE.
  • Mert, A. C., Öztürk, E., & Savaş, E. (2019). esign and implementation of encryption/decryption architectures for bfv homomorphic encryption scheme. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 353-362.
  • Molka, D., Hackenberg, D., Schöne, R., & Nagel, W. E. (2015). Cache coherence protocol and memory performance of the intel haswell-ep architecture. 44th International Conference on Parallel Processing (s. 739-748). IEEE.
  • Navathe, S. B., & Elmasri, R. A. (2001). Fundamentals of Database Systems with Cdrom and Book. Addison-Wesley Longman Publishing Co., Inc.
  • XILINX. (2016). 7 Series FPGAs Configurable Logic Block - User Guide. Zazo, J. F., Lopez-Buedo, S., Audzevich, Y., & Moore, A. W. (2015). A PCIe DMA engine to support the virtualization of 40 Gbps FPGA-accelerated network appliances. In 2015 International Conference on ReConFigurable Computing and FPGAs (ReConFig) (s. 1-6). IEEE.
Toplam 12 adet kaynakça vardır.

Ayrıntılar

Birincil Dil Türkçe
Konular Mühendislik
Bölüm Makaleler
Yazarlar

Erdinç Öztürk 0000-0003-0456-9213

Proje Numarası 118E044
Yayımlanma Tarihi 31 Ocak 2021
Yayımlandığı Sayı Yıl 2021 Sayı: 22

Kaynak Göster

APA Öztürk, E. (2021). Veritabanı Uygulamalarında FPGA Tabanlı Hızlandırıcı Kullanımı. Avrupa Bilim Ve Teknoloji Dergisi(22), 146-151. https://doi.org/10.31590/ejosat.848995