This project seeks to offer a new solution to Operating System Page Handling, the subject of
page handling has been around since the dawn of computing. This project attempts to bring the
technology into the modern age using Machine Learning.
The Project outlines the problems facing current cache paging algorithms, and why the
necessity for a modern approach is a must. There are several bottlenecks when it comes to
computing, we have designated caching as a major bottleneck, which if solved may enhave
computer performance by several magnitudes.
A major obstacle around our solution, was data extraction. The solution we used was cache flux
tracing, based on uprobes and kprobes in the OS Linux. We did some basic data analysis to the
information siphoned.
After gaining some insight through the analysis. We fed the data into two deep neural
networks. A more shallow network and a deeper model. Each with its pros and cons, boiling
down to power and computation consumption vs. accuracy.
The models received a page with multiple features about the system and the program running
owning the page.
Where the output is a binary, TRUE/FALSE of whether the page will be accessed in the next
timeframe. The timeframe is dictated by the training data. We trained our models for 20
second timeframes.
Our predictions are better than a random “coin toss” and even outperform existing scheduling
algorithm. Even as we complete the project we feel there remain some open ended questions
which would require more time to answer. Yet we feel satisfied with the results we did achieve