Logo

Machine Learning & Computing Projects Overview

Image Transformation and Locality Analysis

Working in tandem in a pair programming setup, we delved into the efficiency of various data blocking techniques on the execution time of complex large-image transformations. Our journey involved crafting an image transformation tool, employing automated bash scripts for runtime data collection, and uncovering the intricate relationship between runtime efficiency and cache memory utilization.

Lossy Image Compression

Through collaborative pair programming, we ventured into the realm of lossy image compression, engineering a set of modular algorithms tailored for compressing and decompressing images. Extensive tests revealed our method's superior capability in preserving information over multiple compression cycles, outperforming standard course algorithms.

Universal Machine Emulator

In a challenging pair programming endeavor, we conceptualized and executed a universal machine emulator, supporting a minimalistic instruction set across a segmented memory architecture. Our hallmark achievement was 'fastum.c', a rendition that set new benchmarks for single-threaded emulation speed within our academic cohort.

RPN Calculator in Assembly

Our collaborative effort in pair programming led to the creation of a reverse polish notation (RPN) calculator, meticulously coded in UMASM, a pedagogical assembly language. This project was a direct extension of our work on the universal machine, showcasing our deepened understanding of low-level computing and instruction set architecture.