Massively Parallel Graph Drawing and Representation Learning
This work addresses the need for efficient graph embedding algorithms to handle large-scale data in machine learning and data mining, though it appears incremental as it builds on existing parallelism techniques.
The authors tackled the challenge of parallelizing graph embedding for big data on modern multi-core CPUs, proposing MulticoreGEMPE, which combines MIMD and SIMD parallelism to generate both low and high-dimensional vectors, and demonstrated its superiority in experimental evaluations.
To fully exploit the performance potential of modern multi-core processors, machine learning and data mining algorithms for big data must be parallelized in multiple ways. Today's CPUs consist of multiple cores, each following an independent thread of control, and each equipped with multiple arithmetic units which can perform the same operation on a vector of multiple data objects. Graph embedding, i.e. converting the vertices of a graph into numerical vectors is a data mining task of high importance and is useful for graph drawing (low-dimensional vectors) and graph representation learning (high-dimensional vectors). In this paper, we propose MulticoreGEMPE (Graph Embedding by Minimizing the Predictive Entropy), an information-theoretic method which can generate low and high-dimensional vectors. MulticoreGEMPE applies MIMD (Multiple Instructions Multiple Data, using OpenMP) and SIMD (Single Instructions Multiple Data, using AVX-512) parallelism. We propose general ideas applicable in other graph-based algorithms like \emph{vectorized hashing} and \emph{vectorized reduction}. Our experimental evaluation demonstrates the superiority of our approach.