Skip to main content

2020 | OriginalPaper | Buchkapitel

Systematic Optimization of Image Processing Pipelines Using GPUs

verfasst von : Peter Roch, Bijan Shahbaz Nejad, Marcus Handte, Pedro José Marrón

Erschienen in: Advances in Visual Computing

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Real-time computer vision systems require fast and efficient image processing pipelines. Experiments have shown that GPUs are highly suited for image processing operations, since many tasks can be processed in parallel. However, calling GPU-accelerated functions requires uploading the input parameters to the GPU’s memory, calling the function itself, and downloading the result afterwards. In addition, since not all functions benefit from an increase in parallelism, many pipelines cannot be implemented exclusively using GPU functions. As a result, the optimization of pipelines requires a careful analysis of the achievable function speedup and the cost of copying data. In this paper, we first define a mathematical model to estimate the performance of an image processing pipeline. Thereafter, we present a number of micro-benchmarks gathered using OpenCV which we use to validate the model and which quantify the cost and benefits for different classes of functions. Our experiments show that comparing the function speedup without considering the time for copying can overestimate the achievable performance gain of GPU acceleration by a factor of two. Finally, we present a tool that analyzes the possible combinations of CPU and GPU function implementations for a given pipeline and computes the most efficient composition. By using the tool on their target hardware, developers can easily apply our model to optimize their application performance systematically.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Asano, S., Maruyama, T., Yamaguchi, Y.: Performance comparison of FPGA, GPU and CPU in image processing. In: 2009 FPL, pp. 126–131, August 2009 Asano, S., Maruyama, T., Yamaguchi, Y.: Performance comparison of FPGA, GPU and CPU in image processing. In: 2009 FPL, pp. 126–131, August 2009
2.
Zurück zum Zitat Beymer, D., McLauchlan, P., Coifman, B., Malik, J.: A real-time computer vision system for measuring traffic parameters. In: Proceedings of IEEE CVPR, pp. 495–501, June 1997 Beymer, D., McLauchlan, P., Coifman, B., Malik, J.: A real-time computer vision system for measuring traffic parameters. In: Proceedings of IEEE CVPR, pp. 495–501, June 1997
3.
Zurück zum Zitat Coifman, B., Beymer, D., McLauchlan, P., Malik, J.: A real-time computer vision system for vehicle tracking and traffic surveillance. Transp. Res. Part C Emerg. Technol. 6(4), 271–288 (1998)CrossRef Coifman, B., Beymer, D., McLauchlan, P., Malik, J.: A real-time computer vision system for vehicle tracking and traffic surveillance. Transp. Res. Part C Emerg. Technol. 6(4), 271–288 (1998)CrossRef
4.
Zurück zum Zitat Gil, J., Werman, M.: Computing 2-d min, median, and max filters. IEEE PAMI 15(5), 504–507 (1993)CrossRef Gil, J., Werman, M.: Computing 2-d min, median, and max filters. IEEE PAMI 15(5), 504–507 (1993)CrossRef
6.
Zurück zum Zitat Hangün, B., Eyecioğlu, Ö.: Performance comparison between OpenCV built in CPU and GPU functions on image processing operations. IJESA 1, 34–41 (2017) Hangün, B., Eyecioğlu, Ö.: Performance comparison between OpenCV built in CPU and GPU functions on image processing operations. IJESA 1, 34–41 (2017)
7.
Zurück zum Zitat van Herk, M.: A fast algorithm for local minimum and maximum filters on rectangular and octagonal kernels. Pattern Recognit. Lett. 13(7), 517–521 (1992)CrossRef van Herk, M.: A fast algorithm for local minimum and maximum filters on rectangular and octagonal kernels. Pattern Recognit. Lett. 13(7), 517–521 (1992)CrossRef
8.
Zurück zum Zitat Kurzyniec, D., Sunderam, V.: Efficient cooperation between Java and native codes - JNI performance benchmark. In: 2001 PDPTA (2001) Kurzyniec, D., Sunderam, V.: Efficient cooperation between Java and native codes - JNI performance benchmark. In: 2001 PDPTA (2001)
9.
Zurück zum Zitat Marengoni, M., Stringhini, D.: High level computer vision using OpenCV. In: 2011 24th SIBGRAPI Conference on Graphics, Patterns, and Images Tutorials, pp. 11–24, August 2011 Marengoni, M., Stringhini, D.: High level computer vision using OpenCV. In: 2011 24th SIBGRAPI Conference on Graphics, Patterns, and Images Tutorials, pp. 11–24, August 2011
11.
Zurück zum Zitat Oliver, N.M., Rosario, B., Pentland, A.P.: A Bayesian computer vision system for modeling human interactions. IEEE PAMI 22(8), 831–843 (2000)CrossRef Oliver, N.M., Rosario, B., Pentland, A.P.: A Bayesian computer vision system for modeling human interactions. IEEE PAMI 22(8), 831–843 (2000)CrossRef
13.
Zurück zum Zitat Park, S.I., Ponce, S.P., Huang, J., Cao, Y., Quek, F.: Low-cost, high-speed computer vision using NVIDIA’s CUDA architecture. In: 2008 37th IEEE AIPR Workshop, pp. 1–7, October 2008 Park, S.I., Ponce, S.P., Huang, J., Cao, Y., Quek, F.: Low-cost, high-speed computer vision using NVIDIA’s CUDA architecture. In: 2008 37th IEEE AIPR Workshop, pp. 1–7, October 2008
14.
Zurück zum Zitat Park, S.I., Ponce, S.P., Huang, J., Cao, Y., Quek, F.: Low-cost, high-speed computer vision using NVIDIA’s CUDA architecture. In: 2008 37th IEEE AIPR Workshop, pp. 1–7, October 2008 Park, S.I., Ponce, S.P., Huang, J., Cao, Y., Quek, F.: Low-cost, high-speed computer vision using NVIDIA’s CUDA architecture. In: 2008 37th IEEE AIPR Workshop, pp. 1–7, October 2008
15.
Zurück zum Zitat Phipps, G.: Comparing observed bug and productivity rates for Java and C++. Softw. Pract. Exper. 29(4), 345–358 (1999)CrossRef Phipps, G.: Comparing observed bug and productivity rates for Java and C++. Softw. Pract. Exper. 29(4), 345–358 (1999)CrossRef
16.
Zurück zum Zitat Pulli, K., Baksheev, A., Kornyakov, K., Eruhimov, V.: Real-time computer vision with OpenCV. Commun. ACM 55(6), 61–69 (2012)CrossRef Pulli, K., Baksheev, A., Kornyakov, K., Eruhimov, V.: Real-time computer vision with OpenCV. Commun. ACM 55(6), 61–69 (2012)CrossRef
19.
Zurück zum Zitat Shehu, V., Dika, A.: Using real time computer vision algorithms in automatic attendance management systems. Proc. ITI 2010, 397–402 (2010) Shehu, V., Dika, A.: Using real time computer vision algorithms in automatic attendance management systems. Proc. ITI 2010, 397–402 (2010)
20.
Zurück zum Zitat Thomas, D.B., Howes, L., Luk, W.: A comparison of CPUs, GPUs, FPGAs, and massively parallel processor arrays for random number generation. In: Proceedings of the ACM/SIGDA FPGA, FPGA 2009, pp. 63–72. Association for Computing Machinery, New York (2009) Thomas, D.B., Howes, L., Luk, W.: A comparison of CPUs, GPUs, FPGAs, and massively parallel processor arrays for random number generation. In: Proceedings of the ACM/SIGDA FPGA, FPGA 2009, pp. 63–72. Association for Computing Machinery, New York (2009)
21.
Zurück zum Zitat Thurley, M.J., Danell, V.: Fast morphological image processing open-source extensions for GPU processing with CUDA. IEEE JSTSP 6(7), 849–855 (2012) Thurley, M.J., Danell, V.: Fast morphological image processing open-source extensions for GPU processing with CUDA. IEEE JSTSP 6(7), 849–855 (2012)
22.
Zurück zum Zitat Yan, X., Shi, X., Wang, L., Yang, H.: An OpenCL micro-benchmark suite for GPUs and CPUs. J. Supercomput. 69(2), 693–713 (2014)CrossRef Yan, X., Shi, X., Wang, L., Yang, H.: An OpenCL micro-benchmark suite for GPUs and CPUs. J. Supercomput. 69(2), 693–713 (2014)CrossRef
Metadaten
Titel
Systematic Optimization of Image Processing Pipelines Using GPUs
verfasst von
Peter Roch
Bijan Shahbaz Nejad
Marcus Handte
Pedro José Marrón
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-64559-5_50

Premium Partner