ĐI H C QU C GIA HÀ N I
TR NG ĐI H C CÔNG NGHƯỜ
Nguy n Hoàng Vũ
A PARALLEL IMPLEMENTATION ON
MODERN HARDWARE FOR GEO-
ELECTRICAL TOMOGRAPHICAL SOFTWARE
KHOÁ LU N T T NGHI P ĐI H C H CHÍNH QUY
Ngành: Công ngh thông tin
HÀ N I – 2010
ĐI H C QU C GIA HÀ N I
TR NG ĐI H C CÔNG NGHƯỜ
Nguy n Hoàng Vũ
A PARALLEL IMPLEMENTATION ON
MODERN HARDWARE FOR GEO-
ELECTRICAL TOMOGRAPHICAL SOFTWARE
KHOÁ LU N T T NGHI P ĐI H C H CHÍNH QUY
Ngành: Công ngh thông tin
Cán b h ng d n: PGS. TSKH. Ph m Huy Đi n ướ
Cán b đng h ng d n: TS. Đoàn Văn Tuy n ướ ế
HÀ N I – 2010
ABSTRACT
Geo-electrical tomographical software plays a crucial role in geophysical
research. However, imported software is expensive and does not provide much
customizability, which is essential for more advanced geophysical study. Besides,
these programs are unable to exploit the full potential of modern hardware, so the
running time is inadequate for large-scale geophysical surveys. It is therefore an
essential task to develop domestic software for overcoming all these problems. The
development of this software is based on our research in using parallel programming
on modern multi-core processors and stream processors for high performance
computing. While this project with its inter-disciplinary aspect poses many challenges,
it has also enabled us to gain valuable insights in making scientific software and
especially the new field of personal supercomputing.
A PARALLEL IMPLEMENTATION ON 1
MODERN HARDWARE FOR GEO-ELECTRICAL TOMOGRAPHICAL
SOFTWARE 1
NGUY N HOÀNG VŨ 2
A PARALLEL IMPLEMENTATION ON 2
MODERN HARDWARE FOR GEO-ELECTRICAL TOMOGRAPHICAL
SOFTWARE 2
ABSTRACT 4
CHAPTER 2. THE FORWARD PROBLEM IN RESISTIVITY
TOMOGRAPHY 33
CHAPTER 3 SOFTWARE IMPLEMENTATION 43
CONCLUSION 52
REFERENCES 53
List of Acronyms
CPU Central Processing Unit
CUDA Compute Unified Device Architecture
GPU Graphical Processing Unit
OpenMP Open Multi Processing
OpenCL Open Computing Language
TBB Intel Threading Building Blocks