This project proposes a Machine Learning-based Load Value Approximator (ML-LVA) to address the the growing gap between processor speed and memory latency known as the memory wall by combining Approximate Computing with predictive modeling. The ML-LVA uses a static, pre-trained model to estimate the values of load instructions, effectively reducing memory access frequency in error-tolerant multimedia applications without significantly compromising output quality. The ML-LVA was deployed in a software-based implementation as a subroutine and was tested in GEM5 using an x86 processor. Additionally, the ML-LVA was implemented in hardware as an accelerator in a RISC-V processor, the CVA6. The proposed ML-LVA was tested across six multimedia tasks to demonstrate the framework's broad applicability and efficiency, while outperforming existing techniques. By avoiding runtime overhead and enabling deployment on resource-constrained systems, the ML-LVA offers a practical and scalable path toward overcoming memory bottlenecks, paving the way for energy-efficient and high-performance architectures in future computing systems.

Publications
Journal Papers
[1] A. Aoun, M. Masadeh and S. Tahar: ML-based Load Value Approximator for Efficient Multimedia Processing; ACM Transactions on Multimedia Computing, Communications, and Applications, May 2025, pages 1-18.[2] A. Aoun, M. Masadeh and S. Tahar: A RISC-V with a ML-LVA Accelerator for Efficient Multimedia Processing; IEEE Transactions on Very Large Scale Integration (VLSI) Systems, pages 1-11 [Under Review].
Conference Papers
[1] A. Aoun, M. Masadeh and S. Tahar: Machine Learning Based Memory Load Value Predictor for Multimedia Applications; Proc. IEEE International Conference on Microelectronics (ICM’24), Doha, Qatar, December 2024, pp. 1-6.
[2] A. Aoun, M. Masadeh and S. Tahar: On the Implementation of Approximate Load Value using Machine Learning; Design Automation Conference (DAC'23), San Francisco, California, USA, July 2023. [Poster Presentation]
[3] A. Aoun, M. Masadeh and S. Tahar: A Machine Learning based Load Value Approximator guided by the Tightened Value Locality; Proc. ACM 33th Great Lakes Symposium on VLSI (GLS-VLSI’23), Knoxville, Tennessee, USA, June 2023, ACM Publications, pp. 679-684.
Applications
A - Image Processing
1) Image Blending
Image blending combines two images by multiplying their corresponding pixel values, optionally scaled by a blending factor. This operation is commonly used in graphic design, augmented reality, and visual effects to create composite visuals. It emphasizes the interaction between pixel intensities and is sensitive to fine-grained variations, making it a relevant candidate for testing approximation. In image pipelines, blending is often used for overlays, transparency effects, and light simulations.

2) Image Inversion
Image inversion transforms an image into its negative by subtracting each pixel value from the maximum intensity. This results in a visually inverted image where dark regions become bright and vice versa. The operation is straightforward yet powerful, often used in medical imaging, art effects, and preprocessing. Its simplicity, involving only a subtraction per pixel, makes it computationally lightweight and ideal for evaluating approximation hardware like the proposed LVA.

3) Image Binarization
Image thresholding, or binarization, reduces an image to two intensity levels by comparing each pixel against a set threshold. While commonly applied to grayscale images, the technique can also be extended to color images by evaluating individual channels or luminance. This operation is vital in tasks like document segmentation, edge detection, and pattern recognition. Its per-pixel thresholding logic makes it a suitable application for assessing approximation techniques such as LVA, where branch-dependent operations can still tolerate minor inaccuracies without severely impacting the output.

B - Audio Processing
1) Audio Blending
Multiplication-based audio blending, also known as ring modulation, blends two audio signals by multiplying their sample values pointwise. Each signal is represented as 8-bit unsigned samples ranging from 0 to 255. This technique introduces frequency components from both input signals and is widely used in synthesizers and audio effects. Its reliance on direct multiplications makes it computationally intensive and suitable for evaluating approximate arithmetic approaches.

2) Audio Polarity Inversion
Audio polarity inversion flips an audio waveform around its midpoint. For 8-bit unsigned audio samples, this is achieved by inverting each value around 128, effectively reversing the signal’s phase. While the result sounds indistinguishable from the original to the human ear, its impact becomes significant in multi-source playback or active noise cancellation (ANC) systems, where phase relationships matter. The simplicity of the operation—based on a consistent arithmetic transformation—makes it a strong candidate for evaluating the LVA, particularly due to its tolerance for minor numerical variation without altering perceptual quality.

3) Audio Binarization
Audio binarization, or infinite clipping, simplifies an audio signal by reducing each sample to a binary value based on its polarity. Samples greater than a midpoint threshold (e.g., 128) are assigned a high value (255), and those below are assigned a low value (0). This process creates a square wave with a harsh timbre and is occasionally used in digital distortion effects. Audio binarization can be used Sound Event Detection (SED) among many other usages. From a computational perspective, the logic is simple yet conditional, making it ideal for evaluating the LVA. The harshness of the transformation means the output is already highly distorted and thus making it an ideal error-tolerant application.
