Abstract
When file system metadata is corrupted, missing, or otherwise unreliable, file carving is the strategy used to recover files from a data volume. Difficulties arise when files within the data volume are stored in more than one fragment. These difficulties are compounded by the very large data volumes which are common today. This project shows how the methods used to address these difficulties can be greatly accelerated using parallel algorithms executed on a Graphics Processing Unit (GPU) which has a massively parallel architecture. The work of previous researchers on the same problem, largely conducted in the context of sequential algorithms and hardware, is used to guide the parallel implementation. Functions for pattern search, histogram, normalization, and statistical calculations are evaluated. With little to no optimization effort speedups of 11X - 82X are achieved by parallel implementations over sequential implementations in these functions which are used during file carving operations. Data sets containing fragmented files authored specifically for evaluating file carving tools are used to evaluate and compare implementations.