Guidelines for enhancing data locality in selected machine learning algorithms

01/09/2020
by   Imen Chakroun, et al.
0

To deal with the complexity of the new bigger and more complex generation of data, machine learning (ML) techniques are probably the first and foremost used. For ML algorithms to produce results in a reasonable amount of time, they need to be implemented efficiently. In this paper, we analyze one of the means to increase the performances of machine learning algorithms which is exploiting data locality. Data locality and access patterns are often at the heart of performance issues in computing systems due to the use of certain hardware techniques to improve performance. Altering the access patterns to increase locality can dramatically increase performance of a given algorithm. Besides, repeated data access can be seen as redundancy in data movement. Similarly, there can also be redundancy in the repetition of calculations. This work also identifies some of the opportunities for avoiding these redundancies by directly reusing computation results. We start by motivating why and how a more efficient implementation can be achieved by exploiting reuse in the memory hierarchy of modern instruction set processors. Next we document the possibilities of such reuse in some selected machine learning algorithms.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/25/2019

Reviewing Data Access Patterns and Computational Redundancy for Machine Learning Algorithms

Machine learning (ML) is probably the first and foremost used technique ...
research
03/16/2021

Reducing Redundancy in Data Organization and Arithmetic Calculation for Stencil Computations

Stencil computation is one of the most important kernels in various scie...
research
02/21/2019

Locality

The performance of modern computation is characterized by locality of re...
research
03/19/2018

Towards Memory Prefetching with Neural Networks: Challenges and Insights

Accurate memory prefetching is paramount for processor performance, and ...
research
02/05/2018

A Measurement Theory of Locality

Locality is a fundamental principle used extensively in program and syst...
research
03/16/2021

An Efficient Vectorization Scheme for Stencil Computation

Stencil computation is one of the most important kernels in various scie...
research
06/07/2021

Launchpad: A Programming Model for Distributed Machine Learning Research

A major driver behind the success of modern machine learning algorithms ...

Please sign up or login with your details

Forgot password? Click here to reset