This project addresses several basic research issues related to solid state device (SSD) based flash memory to lay out a foundation and technical basis for efficiently integrating SSDs into the storage hierarchy. The research will be done in a sequence of three steps. First, the PI will conduct intensive experiments and measurements on different types of state-of-the-art SSDs, from low-end to high-end devices aiming at providing insights into unexpected performance dynamics and uncertain behavior. Second, the investgation will collect and place dynamic information of applications, SSDs, and hard disks, including data access patterns and their localities, onto the map of operating systems, and consider their inherent features (both merits and limits) for systems design and implementation. A set of caching algorithms and storage management policies will be designed. Finally, implemention, testing, and evaluation of a hybrid storage prototype will be done by using the profiled and monitored information and developed algorithms.
The broader and transformative impact of the project can be significant: (1) It can provide critical guidance to system designers and data-intensive application users; (2) The research can provide technical solutions to narrow the speed gap between CPU operations and storage accesses;(3) The developed techniques and source code will be available online for other researchers; and (4) The research will facilitate undergraduate and graduate student traing to prepare future computer science talents in academia and industries.