High-performance pseudo-anonymization of virtual power plant data on a CPU cluster - Abbasi, Mahdi; Najafabadi, Azam Fazel; Elghali, Seifeddine Ben; Zerrougui, Mohamed; Khosravi, Mohammad R.; Nasser, Habib (Cluster computing, 2023)
The considerable move towards the use of renewable energy resources has been provided by the digitization of energy systems with the help of virtual power plants (VPPs). However, due to the coincidence of this move with the introduction of new technologies in information and communications, joining these systems raises concerns about the privacy of personal data. The only real-world approach widely used in this case is to anonymize or pseudonymize the information associated with individuals in data received from distributed measurement devices. In this paper, we propose the method of classifying received data packets into different flows and assigning different access levels for each flow. This method makes data pseudonymous. Before this step, the received data, which has a different format, is unionized. To implement this idea, a tuple space flow classification algorithm is parallelized on a CPU cluster using MPI and OpenMP according to different scenarios. The CPU cluster consists of one head node and two computational nodes for packet classification operations. In this research, two scenarios have been used to run the CPU algorithm in parallel. The first scenario uses MPI and the second scenario uses a combination of MPI and OpenMP libraries. Also, the Tuple Space algorithm has been implemented on the computing systems using the mentioned libraries in the form of two scenarios using OpenMP and MPI. According to our results, the increase in the number of processor cores is linearly correlated with the increase in the speed of classification. Furthermore, while MPI uses more memory than OpenMP, it helps to achieve a higher speed of classification. In the combined method, the maximum speed of flow classification can be achieved if the number of processes and threads is equal to the number of processor cores. In other words, when the sum of processes and threads does not outnumber CPU cores, the least classification time and memory usage can be achieved.