Abstract
Emerging applications such as Deep Learning are often data-driven, thus traditional approaches based on auto-tuners are not performance effective across the wide range of inputs used in practice. In the present paper, we start an investigation of predictive models based on machine learning techniques in order to optimize Convolution Neural Networks (CNNs). As a use-case, we focus on the ARM Compute Library which provides three different implementations of the convolution operator at different numeric precision. Starting from a collation of benchmarks, we build and validate models learned by Decision Tree and naive Bayesian classifier. Preliminary experiments on Midgard-based ARM Mali GPU show that our predictive model outperforms all the convolution operators manually selected by the library.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bernaschi, M., Bisson, M., Mastrostefano, E., Vella, F.: Multilevel parallelism for the exploration of large-scale graphs. IEEE Trans. Multi-scale Comput. Syst. 4(3), 204–216 (2018)
Cho, M., Brand, D.: MEC: memory-efficient convolution for deep neural network. CoRR, abs/1706.06873 (2017)
Cianfriglia, M., Vella, F., Nugteren, C., Lokhmotov, A., Fursin, G.: A model-driven approach for a new generation of adaptive libraries. arXiv preprint arXiv:1806.07060 (2018)
Cosenza, B., Durillo, J.J., Ermon, S., Juurlink, B.: Autotuning stencil computations with structural ordinal regression learning. In: 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS), pp. 287–296. IEEE (2017)
Di Girolamo, S., Vella, F., Hoefler, T.: Transparent caching for RMA systems. In: 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS), pp. 1018–1027. IEEE (2017)
Falch, T.L., Elster, A.C.: Machine learning based auto-tuning for enhanced OpenCL performance portability. In: 2015 IEEE International Parallel and Distributed Processing Symposium Workshop (IPDPSW), pp. 1231–1240. IEEE (2015)
Formisano, A., Gentilini, R., Vella, F.: Accelerating energy games solvers on modern architectures. In: Proceedings of the Seventh Workshop on Irregular Applications: Architectures and Algorithms, p. 12. ACM (2017)
Fursin, G., Temam, O.: Collective optimization: a practical collaborative approach. ACM Trans. Archit. Code Optim. (TACO) 7(4), 20 (2010)
Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., Witten, I.H.: The weka data mining software: an update. ACM SIGKDD Explor. Newslett. 11(1), 10–18 (2009)
Hou, K., Feng, W.-c., Che, S.: Auto-tuning strategies for parallelizing sparse matrix-vector (SPMV) multiplication on multi-and many-core processors. In: 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 713–722. IEEE (2017)
Krizhevsky, A., Sutskever, I., Hinton, G.E.: Imagenet classification with deep convolutional neural networks. Adv. Neural Inf. Process. Syst. 25, 1097–1105 (2012)
Lokhmotov, A., Chunosov, N., Vella, F., Fursin, G.: Multi-objective autotuning of mobilenets across the full software/hardware stack. In: Proceedings of the 1st on Reproducible Quality-Efficient Systems Tournament on Co-designing Pareto-efficient Deep Learning, p. 6. ACM (2018)
Maron, M.E.: Automatic indexing: an experimental inquiry. J. ACM (JACM) 8(3), 404–417 (1961)
Nugteren, C., Codreanu, V.: CLTune: a generic auto-tuner for OpenCL kernels. In: 2015 IEEE 9th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC), pp. 195–202 (2015)
Pedregosa, F., et al.: Scikit-learn: machine learning in python. J. Mach. Learn. Res. 12, 2825–2830 (2011)
Safavian, S.R., Landgrebe, D.: A survey of decision tree classifier methodology. IEEE Trans. Syst. Man Cybern. 21(3), 660–674 (1991)
Singer, B., Veloso, M.: Learning to predict performance from formula modeling and training data. In: ICML, pp. 887–894 (2000)
Szegedy, C., Vanhoucke, V., Ioffe, S., Shlens, J., Wojna, Z.: Rethinking the inception architecture for computer vision. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 2818–2826 (2016)
Tasso, S., Gervasi, O., Vella, F., Cuzzocrea, A.: A simulation framework for efficient resource management on hybrid systems. In: 2015 IEEE 18th International Conference on Computational Science and Engineering, pp. 216–223. IEEE (2015)
Vasudevan, A., Anderson, A., Gregg, D.: Parallel multi channel convolution using general matrix multiplication. CoRR, abs/1704.04428 (2017)
Vella, F., Bernaschi, M., Carbone, G.: Dynamic merging of frontiers for accelerating the evaluation of betweenness centrality. J. Exp. Algorithmics (JEA) 23, 1–4 (2018)
Zheng, L., Chen, T.: Optimizing deep learning workloads on arm GPU with TVM. In: Proceedings of the 1st on Reproducible Quality-Efficient Systems Tournament on Co-Designing Pareto-Efficient Deep Learning, p. 3. ACM (2018)
Acknowledgments
We thank Dividiti Inc. for the huge support on CK and NNTest and for providing hardware resources.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Perri, D., Sylos Labini, P., Gervasi, O., Tasso, S., Vella, F. (2019). Towards a Learning-Based Performance Modeling for Accelerating Deep Neural Networks. In: Misra, S., et al. Computational Science and Its Applications – ICCSA 2019. ICCSA 2019. Lecture Notes in Computer Science(), vol 11619. Springer, Cham. https://doi.org/10.1007/978-3-030-24289-3_49
Download citation
DOI: https://doi.org/10.1007/978-3-030-24289-3_49
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-24288-6
Online ISBN: 978-3-030-24289-3
eBook Packages: Computer ScienceComputer Science (R0)