Profiling and Optimizing a Seismic Application on Modern Architectures: Profiling for performance
MetadataVis full innførsel
In this thesis, we discuss several profilers and use selected ones to optimize a seismic application for StatoilHydro, Norway's main oil company. Paralellization techniques are also discussed. The application scans multiple traces of seismic data and removes unwanted multiples(noise). Seismic applications are central in simulations aiding geophysicists in finding oil reservoirs. The motivation for selecting this particular application, Adafil, is that it needs to be faster to be useful in practice. Abstract Our work gives several useful general hints for how to parallelize and optimize such applications for modern architectures. Abstract The application is profiled using several tools, singeling out three hotspots. This thesis will show that this application has some L2 cache misses. which can be avoided with prefetching. The work also shows that specific parts of the code, among others one containing a convolution algorithm, can benefit greatly by using FFT to lower complexity from O(n^2) to O(n log n) for these parts, and by leveraging the adaptive implementations of FFTW leads to a significant speedup of the application.