This paper presents a pragmatic approach to the implementation of artificial neural networks, prioritizing maximum efficiency. The proposed methodology leverages the Advanced Vector Extensions (AVX). While AVX instructions offer a considerable performance boost, their utilization entails several prerequisites, including memory allocation alignment and data size padding, which necessitate careful consideration before implementation. The focus of our study revolves around the universal approach to high-performance neural network implementation. To facilitate comparative analysis, we also incorporate AVX-accelerated versions of Stochastic Gradient Descent (SGD) and Adam optimization algorithms, employing them as benchmarks for evaluation. Our findings demonstrate a substantial performance improvement achieved through AVX implementations when contrasted with conventional approaches.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Practical Considerations in Implementing Neural Network Training with Vector Instructions

  • Jarosław Bilski,
  • Bartosz Kowalczyk

摘要

This paper presents a pragmatic approach to the implementation of artificial neural networks, prioritizing maximum efficiency. The proposed methodology leverages the Advanced Vector Extensions (AVX). While AVX instructions offer a considerable performance boost, their utilization entails several prerequisites, including memory allocation alignment and data size padding, which necessitate careful consideration before implementation. The focus of our study revolves around the universal approach to high-performance neural network implementation. To facilitate comparative analysis, we also incorporate AVX-accelerated versions of Stochastic Gradient Descent (SGD) and Adam optimization algorithms, employing them as benchmarks for evaluation. Our findings demonstrate a substantial performance improvement achieved through AVX implementations when contrasted with conventional approaches.