Learning to Adapt Policies for uSD card
Abstract
Machine Learning(ML) for Systems is a new and promising research area where performance
of computer systems is optimized using machine learning methods. ML for Systems has outperformed
traditional heuristics methods in various areas like learning memory access patterns
in microarchitecture [9], generating optimization heuristics using deep learning in compilers [3],
avoiding unnecessary writes by efficient SSD caching using machine learning in storage systems
[30] etc. Systems for ML is another research area which is different from ML for Systems. In
Systems for ML, focus is on designing specialized hardware for increasing computing capability
for deep learning networks.
In this work, we apply machine learning to improve the performance and reliability of
NAND
ash based micro-SD(uSD) cards. In present scenario, NAND settings in uSD card are
set heuristically to achieve desired performance. However manually tuning these con figurations
is very hard because of complex interactions between them and changing one can have a large
and unexpected effect on another. This is where machine learning in storage systems is useful:
manually it may not be possible to optimize thousands of NAND settings in uSD, but it's the
type of exercise that machine learning systems excel at. However small storage devices like uSD
cards are resource constrained. Therefore using ML algorithms on uSD card with low memory
and computation power is in itself a challenge.
In comparison to SSDs, no workload characterization studies has been done for uSD cards.
Thus we have no knowledge of existence of new patterns which in turn limits our understanding
of policy space. Lot of research has been done to make SSDs fi rmware adaptive but current
uSD fi rmware is non-adaptive in nature i.e it services all workloads using single policy. Another
major issue is that uSD card is constrained on internal RAM and microprocessor, which restricts
the use of computationally expensive ML algorithms
To tackle these problem, we have proposed a machine learning based framework Optimum
Policy Adaptation Learning(OPAL) to identify novel patterns and formulate targeted policies.
The machine learning model in the controller of NAND
ash will identify the incoming
workload and map it to optimal policy thus making it adaptive for the incoming workloads. To
the best our knowledge we are the fi rst to collect workload data for uSD cards, categorize workloads
into patterns, and design a computationally efficient adaptive fi rmware. Using OPAL
we have achieved signi ficant improvements in real world scenarios like 44 % reduction in le
copy time and 54 % increase in the lifetime of card