Approximate computing, skeleton programming and run-time scheduling in an algorithm for process design and controllability in distributed and heterogeneous infrastructures. (August 2022) - Vasilas, Nikos
Highlights: Memoization, task dropping and loop perforation techniques in optimization. Same algorithm and code for execution in CPUs, GPUs and CPU-GPUs. Simultaneous solvent selection, process synthesis and controllability assessment. Excellent scalability, reduction of effort, avoidance of convergence issues. Large cost savings from optimal solution in CO2 capture design application. Abstract: A hybrid algorithm is proposed, comprising Simulated Annealing (SA), an NLP algorithm (IPOPT) and a continuation method (PITCON) for simultaneous process design and controllability assessment. The algorithm integrates the approximate computing techniques of memoization, task dropping and loop perforation. SA and process model calculations are parallelized through skeleton programming (SkePU) and a tool for dynamic, run-time scheduling (StarPU). The same code is ported across different programming interfaces (OpenMP, CUDA, OpenCL and StarPU-SkepU MPI) and executed across different accelerators (multi-node, multi-CPU, GPU and multi-CPU-GPU). Case studies on CO2 capture system design include simultaneous solvent selection, process synthesis and controllability assessment. Up to 70% improvement is attained in the optimal solution, with up to 74% fewer unconverged model simulations. Excellent scalability is observed in 1, 000 threads, attaining up to 60 times faster execution in multi-CPU, GPU and multi-CPU-GPU accelerators. A trade-off is observed between the CPU energy consumption and the execution speedup.