ConvBench: A Comprehensive Benchmark for 2D Convolution Primitive Evaluation

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Alvarenga, Lucas, Ferrari, Victor, Souza, Rafael, Pereira, Marcio, Araujo, Guido
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866929421349289984
author Alvarenga, Lucas
Ferrari, Victor
Souza, Rafael
Pereira, Marcio
Araujo, Guido
author_facet Alvarenga, Lucas
Ferrari, Victor
Souza, Rafael
Pereira, Marcio
Araujo, Guido
contents Convolution is a compute-intensive operation placed at the heart of Convolution Neural Networks (CNNs). It has led to the development of many high-performance algorithms, such as Im2col-GEMM, Winograd, and Direct-Convolution. However, the comparison of different convolution algorithms is an error-prone task as it requires specific data layouts and system resources. Failure to address these requirements might lead to unwanted time penalties. Thus, considering all processing steps within convolution algorithms is essential to comprehensively evaluate and fairly compare their performance. Furthermore, most known convolution benchmarking adopts ad-hoc testing suites with limited coverage and handmade operations. This paper proposes ConvBench, a primitive-level benchmark for the evaluation and comparison of convolution algorithms. It assesses 9243 convolution operations derived from 1097 real-world deep learning models, resulting in performance and execution breakdown graphs for a detailed evaluation. ConvBench capability is evaluated across the Sliced Convolution (SConv) algorithm. The experiments showed results faster than Im2col-GEMM in 93.6% of the convolutions. However, the use of ConvBench allowed the delving into the remaining 6.4% underperforming convolutions, uncovering a critical slowdown of 79.5% on average of SConv's packing step. This analysis underscores a potential source of optimization for SConv, opening up new paths for convolution designers to improve their algorithms.
format Preprint
id arxiv_https___arxiv_org_abs_2407_10730
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle ConvBench: A Comprehensive Benchmark for 2D Convolution Primitive Evaluation
Alvarenga, Lucas
Ferrari, Victor
Souza, Rafael
Pereira, Marcio
Araujo, Guido
Computer Vision and Pattern Recognition
Performance
Convolution is a compute-intensive operation placed at the heart of Convolution Neural Networks (CNNs). It has led to the development of many high-performance algorithms, such as Im2col-GEMM, Winograd, and Direct-Convolution. However, the comparison of different convolution algorithms is an error-prone task as it requires specific data layouts and system resources. Failure to address these requirements might lead to unwanted time penalties. Thus, considering all processing steps within convolution algorithms is essential to comprehensively evaluate and fairly compare their performance. Furthermore, most known convolution benchmarking adopts ad-hoc testing suites with limited coverage and handmade operations. This paper proposes ConvBench, a primitive-level benchmark for the evaluation and comparison of convolution algorithms. It assesses 9243 convolution operations derived from 1097 real-world deep learning models, resulting in performance and execution breakdown graphs for a detailed evaluation. ConvBench capability is evaluated across the Sliced Convolution (SConv) algorithm. The experiments showed results faster than Im2col-GEMM in 93.6% of the convolutions. However, the use of ConvBench allowed the delving into the remaining 6.4% underperforming convolutions, uncovering a critical slowdown of 79.5% on average of SConv's packing step. This analysis underscores a potential source of optimization for SConv, opening up new paths for convolution designers to improve their algorithms.
title ConvBench: A Comprehensive Benchmark for 2D Convolution Primitive Evaluation
topic Computer Vision and Pattern Recognition
Performance
url https://arxiv.org/abs/2407.10730