Accelerating Template-Matching Method Via Peer-to-Peer Grid Computing Ahmed Ibrahim * * Department of Computer Sciences, College of Computer and Information Sciences, Princess Nourah bint Abdulrahman University, Kingdom of Saudi Arabia. 1 E-Mail: azibrahim@pnu.edu.sa Abstract: Template matching is one of the resource-intensive applications, especially when working with source images of larger resolution and it is considered as more CPU-bound than I/O-bound. Meta- computing offers a good solution to reduce the processing time of both CPU-bound and I/O-bound tasks as well. It enables using independent nodes of any network as if they were a supercomputer. The performance of template matching can be improved and speeded up by deploying the computing process over the available computer nodes or components of a peer-to-peer grid. The current paper discusses the possibility of portioning the template-matching computing process to multiple portions and assign each portion to one of the available machines of a peer-to-peer grid. The load-balancing problem or the appropriate distribution of the application is addressed as well by fragmenting the main task into a queue of equal sub-tasks and assign one of them to the node, which just finished its current task. The primary outcome of this paper is decreasing the entire time of processing by increasing the fragmentation factor, which is shown. The proposed approach is designed and implemented on Windows-based machines and the obtained measurements show distinct exploitation of the available node's resources yielding a very good overall throughput. Keywords: Grid computing, Parallel computing, Template matching, Object recognition, image processing, Fragmentation factor. I. INTRODUCTION The general idea of splitting specific tasks into n subtasks to implement them on n devices in multiple locations is a common solution to accomplish a job in a short period of time, and with a little amount of effort consumption. This concept is called distribution. In fact, the development of this idea is associated with evolving the network communications and network resources usage. That is what led us to the use of grid computing. Grid computing means that each computer’s resources could be shared with every other computer in the system to accomplish a single or multiple tasks. Therefore, grid computing can be presented as one of the many popular solutions for template-matching computing process. Actually, there are many problems that require implementing various tasks in various systems. One of the main problems to achieve a task(s) in a short period of time, and with a little amount of effort and resource International Journal of Computer Science and Information Security (IJCSIS), Vol. 15, No. 6, June 2017 124 https://sites.google.com/site/ijcsis/ ISSN 1947-5500