Sönmezer, Hasan BerkMuhtaroğlu, NitelArı, İsmailGökçin, Deniz2022-09-072022-09-072022-04-251532-0626http://hdl.handle.net/10679/7833https://doi.org/10.1002/cpe.6674Computer aided engineering (CAE) practices improved drastically within the last decade due to ease of access to computing resources and open-source software. However, increasing complexity of hardware and software settings and the scarcity of multiskilled personnel rendered the practice inefficient and infeasible again. In this article, we present a method for continuous performance improvement in computational engineering that combines online performance profiling with machine learning (ML). To test the viability of this method, we provide a detailed analysis for solution time estimation of finite element analysis (FEA) jobs based on multidimensional models. These models combine numerous matrix features (matrix size, density, bandwidth, etc.), solver features (direct-iterative, preconditioning, tolerance), and hardware features (core count, virtual–physical). We repeat our analysis over different machines as well as docker containers to demonstrate applicability over different platforms. Next, we train supervised and unsupervised ML algorithms over commonly used, realistic FEA benchmarks and compare accuracy of different models. Finally, we design two new ML-based online batch schedulers called shortest predicted time first (SPTF) and shortest cluster time first (SCTF), which are comparable in performance to the optimal, but offline shortest job first (SJF) scheduler. We find that ML-based profiling and scheduling can reduce the average turnaround times by 2x –5x over other alternatives.enginfo:eu-repo/semantics/restrictedAccessMaLeFICE: Machine learning support for continuous performance improvement in computational engineeringArticle34900070718690000110.1002/cpe.6674Batch schedulingClassificationCloudClusteringDevOpDockerFinite element analysisMachine learningVirtualization2-s2.0-85117046619