{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,21]],"date-time":"2026-02-21T07:33:24Z","timestamp":1771659204223,"version":"3.50.1"},"reference-count":27,"publisher":"MDPI AG","issue":"8","license":[{"start":{"date-parts":[[2019,7,27]],"date-time":"2019-07-27T00:00:00Z","timestamp":1564185600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Algorithms"],"abstract":"<jats:p>Intel recently introduced the Heterogeneous Architecture Research Platform, HARP. In this platform, the Central Processing Unit and a Field-Programmable Gate Array are connected through a high-bandwidth, low-latency interconnect and both share DRAM memory. For this platform, Open Computing Language (OpenCL), a High-Level Synthesis (HLS) language, is made available. By making use of HLS, a faster design cycle can be achieved compared to programming in a traditional hardware description language. This, however, comes at the cost of having less control over the hardware implementation. We will investigate how OpenCL can be applied to implement a real-time guided image filter on the HARP platform. In the first phase, the performance-critical parameters of the OpenCL programming model are defined using several specialized benchmarks. In a second phase, the guided image filter algorithm is implemented using the insights gained in the first phase. Both a floating-point and a fixed-point implementation were developed for this algorithm, based on a sliding window implementation. This resulted in a maximum floating-point performance of 135 GFLOPS, a maximum fixed-point performance of 430 GOPS and a throughput of HD color images at 74 frames per second.<\/jats:p>","DOI":"10.3390\/a12080149","type":"journal-article","created":{"date-parts":[[2019,7,29]],"date-time":"2019-07-29T03:06:58Z","timestamp":1564369618000},"page":"149","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Mapping a Guided Image Filter on the HARP Reconfigurable Architecture Using OpenCL"],"prefix":"10.3390","volume":"12","author":[{"given":"Thomas","family":"Faict","sequence":"first","affiliation":[{"name":"Department of Electronics and Information Systems, Ghent University, 9052 Ghent, Belgium"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Erik H.","family":"D\u2019Hollander","sequence":"additional","affiliation":[{"name":"Department of Electronics and Information Systems, Ghent University, 9052 Ghent, Belgium"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1666-5483","authenticated-orcid":false,"given":"Bart","family":"Goossens","sequence":"additional","affiliation":[{"name":"Department of Telecommunications and Information Processing, imec-IPI-Ghent University, 9000 Ghent, Belgium"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2019,7,27]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","first-page":"256","DOI":"10.1109\/JSSC.1974.1050511","article-title":"Design of ion-implanted MOSFET\u2019s with very small physical dimensions","volume":"9","author":"Dennard","year":"1974","journal-title":"IEEE J. Solid-State Circuits"},{"key":"ref_2","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1145\/3282307","article-title":"A new golden age for computer architecture","volume":"62","author":"Hennessy","year":"2019","journal-title":"Commun. ACM"},{"key":"ref_3","doi-asserted-by":"crossref","unstructured":"Oliver, N., Sharma, R.R., Chang, S., Chitlur, B., Garcia, E., Grecco, J., Grier, A., Ijih, N., Liu, Y., and Marolia, P. (December, January 30). A Reconfigurable Computing System Based on a Cache-Coherent Fabric. Proceedings of the 2011 International Conference on Reconfigurable Computing and FPGAs (ReConFig), Cancun, Mexico.","DOI":"10.1109\/ReConFig.2011.4"},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Rahamneh, S., and Sawalha, L. (May, January 28). An OpenCL-Based Acceleration for Canny Algorithm Using a Heterogeneous CPU-FPGA Platform. Proceedings of the 2019 IEEE 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), San Diego, CA, USA.","DOI":"10.1109\/FCCM.2019.00063"},{"key":"ref_5","unstructured":"Gupta, P. (Accelerating Datacenter Workloads, 2016). Accelerating Datacenter Workloads, Keynote at FPL 2016."},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"513","DOI":"10.1109\/TCSVT.2013.2278145","article-title":"VLSI Architecture Design of Guided Filter for 30 Frames\/s Full-HD Video","volume":"24","author":"Kao","year":"2014","journal-title":"IEEE Trans. Circuits Syst. Video Technol."},{"key":"ref_7","doi-asserted-by":"crossref","first-page":"67","DOI":"10.1145\/234313.234345","article-title":"Parallel Architectures","volume":"28","author":"Flynn","year":"1996","journal-title":"ACM Comput. Surv."},{"key":"ref_8","doi-asserted-by":"crossref","unstructured":"Stitt, G., Gupta, A., Emas, M.N., Wilson, D., and Baylis, A. (2018, January 25\u201327). Scalable Window Generation for the Intel Broadwell+Arria 10 and High-Bandwidth FPGA Systems. Proceedings of the 2018 ACM\/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA \u201918), Monterey, CA, USA.","DOI":"10.1145\/3174243.3174262"},{"key":"ref_9","unstructured":"Intel (2009). An Introduction to the Intel QuickPath Interconnect, Intel. Technical report 320412\u2013001US."},{"key":"ref_10","unstructured":"Intel (2018). Acceleration Stack for Intel Xeon CPU with FPGAs Core Cache Interface (CCI-P) Reference Manual MNL-1092, Intel. Technical report."},{"key":"ref_11","unstructured":"Khronos (2019, July 27). Available online: https:\/\/www.khronos.org\/registry\/OpenCL\/specs\/opencl-1.2.pdf."},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Munshi, A. (2009, January 23\u201325). The OpenCL specification. Proceedings of the 2009 IEEE Hot Chips 21 Symposium (HCS), Stanford, CA, USA.","DOI":"10.1109\/HOTCHIPS.2009.7478342"},{"key":"ref_13","unstructured":"Intel (2017). FPGA SDK for OpenCL\u2122 Programming Guide, Intel. Technical report UG-OCL002."},{"key":"ref_14","unstructured":"Intel (2018). FPGA SDK for OpenCL\u2122 Pro Best Practices Guide UG-OCL003, Intel. Technical report."},{"key":"ref_15","doi-asserted-by":"crossref","first-page":"1397","DOI":"10.1109\/TPAMI.2012.213","article-title":"Guided Image Filtering","volume":"35","author":"He","year":"2013","journal-title":"IEEE Trans. Pattern Anal. Mach. Intell."},{"key":"ref_16","unstructured":"Jawahar, C.V., Li, H., Mori, G., and Schindler, K. (2019). Fast Light Field Disparity Estimation via a Parallel Filtered Cost Volume Approach. Computer Vision\u2014ACCV 2018, Springer International Publishing. Lecture Notes in Computer Science."},{"key":"ref_17","doi-asserted-by":"crossref","first-page":"65","DOI":"10.1145\/1498765.1498785","article-title":"Roofline: An insightful visual performance model for multicore architectures","volume":"52","author":"Williams","year":"2009","journal-title":"Commun. ACM"},{"key":"ref_18","unstructured":"Parker, M. (2017). Understanding Peak Floating-Point Performance Claims, Intel. White Paper WP-01222-1.1."},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Kareem, P., Khan, A., and Kyung, C. (2017, January 5\u20138). Memory efficient self guided image filtering. Proceedings of the 2017 International SoC Design Conference (ISOCC), Seoul, Korea.","DOI":"10.1109\/ISOCC.2017.8368910"},{"key":"ref_20","doi-asserted-by":"crossref","unstructured":"Chang, C., Huang, I., Lin, M., and Kuang, S. (2017, January 7\u201310). Design and implementation of a low-cost guided image filter for underwater image enhancement. Proceedings of the 2017 IEEE Conference on Dependable and Secure Computing, Taipei, Taiwan.","DOI":"10.1109\/DESEC.2017.8073850"},{"key":"ref_21","doi-asserted-by":"crossref","first-page":"2678","DOI":"10.1109\/TC.2015.2506567","article-title":"A Low-Cost Real-Time Embedded Stereo Vision System for Accurate Disparity Estimation Based on Guided Image Filtering","volume":"65","author":"Ttofis","year":"2016","journal-title":"IEEE Trans. Comput."},{"key":"ref_22","doi-asserted-by":"crossref","unstructured":"Ishikawa, A., Fukushima, N., Maruoka, A., and Iizuka, T. (2019, January 26\u201329). Halide and GENESIS for Generating Domain-Specific Architecture of Guided Image Filtering. Proceedings of the 2019 IEEE International Symposium on Circuits and Systems (ISCAS), Sapporo, Japan.","DOI":"10.1109\/ISCAS.2019.8702260"},{"key":"ref_23","doi-asserted-by":"crossref","unstructured":"Wang, Z., He, B., Zhang, W., and Jiang, S. (2016, January 12\u201316). A performance analysis framework for optimizing OpenCL applications on FPGAs. Proceedings of the 2016 IEEE International Symposium on High Performance Computer Architecture (HPCA), Barcelona, Spain.","DOI":"10.1109\/HPCA.2016.7446058"},{"key":"ref_24","doi-asserted-by":"crossref","first-page":"52","DOI":"10.1145\/2927964.2927974","article-title":"Exploring the Efficiency of the OpenCL Pipe Semantic on an FPGA","volume":"43","author":"Momeni","year":"2016","journal-title":"ACM SIGARCH Comput. Archit. News"},{"key":"ref_25","doi-asserted-by":"crossref","unstructured":"Zohouri, H.R., Podobas, A., and Matsuoka, S. (2018, January 25\u201327). Combined Spatial and Temporal Blocking for High-Performance Stencil Computation on FPGAs Using OpenCL. Proceedings of the 2018 ACM\/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA \u201918), Monterey, CA, USA.","DOI":"10.1145\/3174243.3174248"},{"key":"ref_26","unstructured":"Fan, Q., Chen, D., Yuan, L., Hua, G., Yu, N., and Chen, B. (2019). A General Decoupled Learning Framework for Parameterized Image Operators. IEEE Trans. Pattern Anal. Mach. Intell."},{"key":"ref_27","doi-asserted-by":"crossref","unstructured":"Wu, X., Wang, R., Li, Y., and Liu, K. (2018, January 28\u201330). Parallel Computing Implementation for Real-Time Image Dehazing Based on Dark Channel. Proceedings of the 2018 IEEE 20th International Conference on High Performance Computing and Communications; IEEE 16th International Conference on Smart City; IEEE 4th International Conference on Data Science and Systems (HPCC\/SmartCity\/DSS), Exeter, UK.","DOI":"10.1109\/HPCC\/SmartCity\/DSS.2018.00032"}],"container-title":["Algorithms"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1999-4893\/12\/8\/149\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T13:10:21Z","timestamp":1760188221000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1999-4893\/12\/8\/149"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,7,27]]},"references-count":27,"journal-issue":{"issue":"8","published-online":{"date-parts":[[2019,8]]}},"alternative-id":["a12080149"],"URL":"https:\/\/doi.org\/10.3390\/a12080149","relation":{},"ISSN":["1999-4893"],"issn-type":[{"value":"1999-4893","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019,7,27]]}}}