  In this work, we propose MUSTACHE, a new page cache replacement algorithm
whose logic is learned from observed memory access requests rather than fixed
like existing policies. We formulate the page request prediction problem as a
categorical time series forecasting task. Then, our method queries the learned
page request forecaster to obtain the next $k$ predicted page memory references
to better approximate the optimal B\'el\'ady's replacement algorithm. We
implement several forecasting techniques using advanced deep learning
architectures and integrate the best-performing one into an existing
open-source cache simulator. Experiments run on benchmark datasets show that
MUSTACHE outperforms the best page replacement heuristic (i.e., exact LRU),
improving the cache hit ratio by 1.9% and reducing the number of reads/writes
required to handle cache misses by 18.4% and 10.3%.
