|
Computer modelling
Parallel algorithm of geometrical hashing based on NumPy package and processes pool
V. A. Klyachin Volgograd State University
Abstract:
The article considers the problem of multi-dimensional geometric hashing. The paper describes a mathematical model of geometric hashing and considers an example of its use in localization problems for the point. A method of constructing the corresponding hash matrix by parallel algorithm is considered. In this paper an algorithm of parallel geometric hashing using a development pattern “pool processes” is proposed. The implementation of the algorithm is executed using the Python programming language and NumPy package for manipulating multidimensional data. To implement the process pool it is proposed to use a class Process Pool Executor imported from module concurrent.futures, which is included in the distribution of the interpreter Python since version 3.2. All the solutions are presented in the paper by corresponding UML class diagrams. Designed GeomNash package includes classes Data, Result, GeomHash, Job.
The results of the developed program presents the corresponding graphs. Also, the article presents the theoretical justification for the application process pool for the implementation of parallel algorithms. It is obtained condition
$$
t_2 > \frac{p}{p-1} t_1
$$
of the appropriateness of process pool. Here $t_1$—the time of transmission unit of data between processes, and $t_2$—the time of processing unit data by one processor.
Keywords:
hashing, process pool, package NumPy, computational geometry, parallel algorithm.
Citation:
V. A. Klyachin, “Parallel algorithm of geometrical hashing based on NumPy package and processes pool”, Vestnik Volgogradskogo gosudarstvennogo universiteta. Seriya 1. Mathematica. Physica, 2015, no. 4(29), 13–23
Linking options:
https://www.mathnet.ru/eng/vvgum71 https://www.mathnet.ru/eng/vvgum/y2015/i4/p13
|
|