Cybersecurity is a growing research field where different methods and techniques are being tested, many of them based on machine learning approaches. Machine-learning algorithms are highly computationally demanding on the learning phase, which requires services from HPC centers to get the optimized models which could be later used in real environments. However, the cybersecurity field and the tools associated are not welcomed in many HPC facilities. Containerizing is a powerful tool for solving this problem. It allows researchers to define their own run-time environments. Unfortunately, not all the containerizing solutions are well suited for HPC domains. Singularity avoids some of the problems that other container solutions, such as Docker, face in HPC. It has been designed for use in supercomputing environments and includes native support for some of the most widely used technologies such as Infiniband or Lustre. In this work, we present a CNN-based cybersecurity system optimized for an HPC environment. Selecting the optimal architecture for the neural network requires evaluating several alternatives. The method described allows to not only to evaluate the best deep learning framework (TensorFlow, Theano, etc.) but also selecting the optimal architecture for the CNN, by using Singularity containers.
HPCKP (High-Performance Computing Knowledge Portal) is an Open Knowledge project focused on technology transfer and knowledge sharing in the HPC Science field.