Parallel virtual savant for the heterogeneous computing scheduling problem

Abstract We present in this work the first parallel implementation of Virtual Savant (VS), a novel optimization method that is able to quickly generate pseudo-optimal solutions to a given combinatorial problem, thanks to its parallel pattern recognition engine. The proposed parallel implementation does not require any information exchange between the threads during the run, they just get/send the required information before/after the execution. This design allows for a flexible algorithm that can perform efficiently on both shared- and distributed-memory systems. Our implementation uses both OpenMP for parallel architectures and MPI for distributed environments, which can efficiently make use of both kind of systems. The performance of VS is extensively analyzed on four different computing infrastructures, varying the number of threads used on each considered architecture. In addition, we propose a simulator to accurately predict the performance of VS on any parallel system. Experimental results show that VS is able to make an efficient use of the available computing resources, showing good scalability properties on all studied architectures.

[1]  Yinghui Xu,et al.  Solving a New 3D Bin Packing Problem with Deep Reinforcement Learning Method , 2017, ArXiv.

[2]  Bernabé Dorronsoro,et al.  Virtual Savant for the Heterogeneous Computing Scheduling Problem , 2018, 2018 International Conference on High Performance Computing & Simulation (HPCS).

[3]  Enrique Alba,et al.  A parallel micro evolutionary algorithm for heterogeneous computing and grid scheduling , 2012, Appl. Soft Comput..

[4]  Enrique Alba,et al.  Heterogeneous computing scheduling with evolutionary algorithms , 2010, Soft Comput..

[5]  Enrique Alba,et al.  A parallel local search in CPU/GPU for scheduling independent tasks on large heterogeneous computing systems , 2015, The Journal of Supercomputing.

[6]  Pascal Bouvry,et al.  The Virtual Savant: Automatic generation of parallel solvers , 2018, Inf. Sci..

[7]  Bernabé Dorronsoro,et al.  Savant: Automatic generation of a parallel scheduling heuristic for map-reduce , 2014, Int. J. Hybrid Intell. Syst..

[8]  Sergio Nesmachnow,et al.  Parallel multiobjective evolutionary algorithms for batch scheduling in heterogeneous computing and grid systems , 2013, Computational Optimization and Applications.

[9]  Chih-Jen Lin,et al.  LIBSVM: A library for support vector machines , 2011, TIST.

[10]  Jitendra Malik,et al.  Learning to Optimize , 2016, ICLR.

[11]  Viktor K. Prasanna,et al.  Heterogeneous computing: challenges and opportunities , 1993, Computer.

[12]  Bernabé Dorronsoro,et al.  Combining Machine Learning and Genetic Algorithms to Solve the Independent Tasks Scheduling Problem , 2017, 2017 3rd IEEE International Conference on Cybernetics (CYBCON).

[13]  D. Treffert The savant syndrome: an extraordinary condition. A synopsis: past, present, future , 2009, Philosophical Transactions of the Royal Society B: Biological Sciences.

[14]  Albert Y. Zomaya,et al.  A hierarchical approach for energy-efficient scheduling of large workloads in multicore distributed systems , 2014, Sustain. Comput. Informatics Syst..

[15]  R. Tibshirani Regression Shrinkage and Selection via the Lasso , 1996 .

[16]  Gianluca Palermo,et al.  MiCOMP: Mitigating the Compiler Phase-Ordering Problem Using Optimization Sub-Sequences and Machine Learning , 2017, TACO.

[17]  Geoffrey J. McLachlan,et al.  Analyzing Microarray Gene Expression Data , 2004 .

[18]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[19]  Navdeep Jaitly,et al.  Pointer Networks , 2015, NIPS.

[20]  Zhongzhi Shi,et al.  A revisit of fast greedy heuristics for mapping a class of independent tasks onto heterogeneous computing systems , 2007, J. Parallel Distributed Comput..

[21]  Bernabé Dorronsoro,et al.  Support Vector Machine Acceleration for Intel Xeon Phi Manycore Processors , 2017, CARLA.