Full Text

Massive Threading: Using GPUs to Increase the Performance of Digital Forensics Tools, DFRWS 2007


The current generation of Graphics Processing Units (GPUs) contain a large number of general purpose processors, in sharp contrast to previous generation designs, where special-purpose hardware units (such as texture and vertex shaders) were commonly used. This fact, combined with the prevalence of multicore generalpurpose CPUs in modern workstations, suggests that performance-critical software such as digital forensics tools
be “massively” threaded to take advantage of all available computational resources.

Several trends in digital forensics make the availability of more processing power very important. These trends include a large increase in the average size (measured in bytes) of forensic targets, an increase in the number of digital forensics cases, and the development of “nextgeneration” tools that require more computational resources. This paper presents the results of a number of experiments that evaluate the effectiveness of offloading processing common to digital forensics tools to a GPU, using “massive” numbers of threads to parallelize the computation. These results are compared to speedups obtainable by simple threading schemes appropriate for multicore CPUS. Our results indicate that in many cases, the use of GPUs can substantially increase the performance of digital forensics tools.