{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,12]],"date-time":"2025-10-12T04:13:58Z","timestamp":1760242438965,"version":"build-2065373602"},"reference-count":39,"publisher":"MDPI AG","issue":"9","license":[{"start":{"date-parts":[[2017,9,2]],"date-time":"2017-09-02T00:00:00Z","timestamp":1504310400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"Doctoral Fund of Ministry of Education of China","award":["2013021110012"],"award-info":[{"award-number":["2013021110012"]}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61173040"],"award-info":[{"award-number":["61173040"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Symmetry"],"abstract":"<jats:p>Speculative multithreading (SpMT) is a thread-level automatic parallelization technique that can accelerate sequential programs, especially for irregular applications that are hard to be parallelized by conventional approaches. Thread partition plays a critical role in SpMT. Conventional machine learning-based thread partition approaches applied machine learning to offline guide partition, but could not explicitly explore the law between partition and performance. In this paper, we build a parametric model (Qinling) with a multiple regression method to discover the inherent law between thread partition and performance. The paper firstly extracts unpredictable parameters that determine the performance of thread partition in SpMT; secondly, we build a parametric model Qinling with extracted parameters and speedups, and train Qinling offline, as well as apply it to predict the theoretical speedups of unseen applications. Finally, validation is done. Prophet, which consists of an automatic parallelization compiler and a multi-core simulator, is used to obtain real speedups of the input programs. Olden and SPEC2000 benchmarks are used to train and validate the parametric model. Experiments show that Qinling delivers a good performance to predict speedups of unseen programs, and provides feedback guidance for Prophet to obtain the optimal partition parameters.<\/jats:p>","DOI":"10.3390\/sym9090180","type":"journal-article","created":{"date-parts":[[2017,9,4]],"date-time":"2017-09-04T11:11:52Z","timestamp":1504523512000},"page":"180","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Qinling: A Parametric Model in Speculative Multithreading"],"prefix":"10.3390","volume":"9","author":[{"given":"Yuxiang","family":"Li","sequence":"first","affiliation":[{"name":"School of Electronic and Information Engineering, Xi\u2019an Jiaotong University, No 28, Xianning West Road, Xi\u2019an 710049, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yinliang","family":"Zhao","sequence":"additional","affiliation":[{"name":"School of Electronic and Information Engineering, Xi\u2019an Jiaotong University, No 28, Xianning West Road, Xi\u2019an 710049, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9388-0198","authenticated-orcid":false,"given":"Bin","family":"Liu","sequence":"additional","affiliation":[{"name":"College of Information Engineering, NorthWest Agriculture and Forestry University, No 22, Xinong Road, Yangling 712100, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2017,9,2]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","first-page":"269","DOI":"10.1145\/1064978.1065043","article-title":"Mitosis compiler: An infrastructure for speculative threading based on pre-computation slices","volume":"40","author":"Madriles","year":"2005","journal-title":"ACM Sigplan Notices"},{"key":"ref_2","doi-asserted-by":"crossref","first-page":"914","DOI":"10.1109\/TPDS.2007.70797","article-title":"Mitosis: A speculative multithreaded processor based on precomputation slices","volume":"19","author":"Madriles","year":"2008","journal-title":"IEEE Trans. Parallel Distrib. Syst."},{"key":"ref_3","doi-asserted-by":"crossref","unstructured":"Ooi, C.L., Kim, S.W., Park, I., Eigenmann, R., Falsafi, B., and Vijaykumar, T. (2001, January 18\u201323). Multiplex: Unifying conventional and speculative thread-level parallelism on a chip multiprocessor. Proceedings of the 15th International Conference on Supercomputing, Sorrento, Italy.","DOI":"10.1145\/377792.377863"},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Liu, W., Tuck, J., Ceze, L., Ahn, W., Strauss, K., Renau, J., and Torrellas, J. (2006, January 29\u201331). POSH: A TLS compiler that exploits program structure. Proceedings of the Eleventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, New York, NY, USA.","DOI":"10.1145\/1122971.1122997"},{"key":"ref_5","doi-asserted-by":"crossref","first-page":"177","DOI":"10.1145\/1543135.1542496","article-title":"Towards a holistic approach to auto-parallelization: Integrating profile-driven parallelism detection and machine-learning based mapping","volume":"44","author":"Tournavitis","year":"2009","journal-title":"ACM Sigplan Not."},{"key":"ref_6","doi-asserted-by":"crossref","unstructured":"Li, Y., Zhao, Y., and Gao, H. (2015, January 24\u201326). Using artificial neural network for predicting thread partitioning in speculative multithreading. Proceedings of the 2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems, New York, NY, USA.","DOI":"10.1109\/HPCC-CSS-ICESS.2015.28"},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Zheng, B., Tsai, J.Y., Zang, B., Chen, T., Huang, B., Li, J., Ding, Y., Liang, J., Zhen, Y., and Yew, P.C. (1999, January 4\u20136). Designing the agassiz compiler for concurrent multithreaded architectures. Proceedings of the International Workshop on Languages and Compilers for Parallel Computing, La Jolla, CA, USA.","DOI":"10.1007\/3-540-44905-1_24"},{"key":"ref_8","doi-asserted-by":"crossref","first-page":"1004","DOI":"10.1109\/TC.2012.41","article-title":"SEED: A statically greedy and dynamically adaptive approach for speculative loop execution","volume":"62","author":"Gao","year":"2013","journal-title":"IEEE Trans. Comput."},{"key":"ref_9","unstructured":"August, D.I., Huang, J., Beard, S.R., Johnson, N.P., and Jablin, T.B. (2013, January 23\u201327). Automatically exploiting cross-invocation parallelism using runtime information. Proceedings of the 2013 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), Shenzhen, China."},{"key":"ref_10","doi-asserted-by":"crossref","first-page":"1240008","DOI":"10.1142\/S0218126612400087","article-title":"Code transformations for enhancing the performance of speculatively parallel threads","volume":"21","author":"Wang","year":"2012","journal-title":"J. Circuits Syst. Comput."},{"key":"ref_11","first-page":"72","article-title":"Multiscalar: Another fourth-generation processor","volume":"30","author":"Sohi","year":"1997","journal-title":"Computer"},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Grewe, D., Wang, Z., and O\u2019Boyle, M.F. (2011, January 24\u201326). A workload-aware mapping approach for data-parallel programs. Proceedings of the 6th International Conference on High Performance and Embedded Architectures and Compilers, Heraklion, Greece.","DOI":"10.1145\/1944862.1944881"},{"key":"ref_13","doi-asserted-by":"crossref","unstructured":"Long, S., Fursin, G., and Franke, B. (2007, January 18\u201321). A cost-aware parallel workload allocation approach based on machine learning techniques. Proceedings of the IFIP International Conference on Network and Parallel Computing, Dalian, China.","DOI":"10.1007\/978-3-540-74784-0_51"},{"key":"ref_14","doi-asserted-by":"crossref","unstructured":"Wang, Z., and O\u2019Boyle, M.F. (2010, January 11\u201315). Partitioning streaming parallelism for multi-cores: A machine learning based approach. Proceedings of the 19th international conference on Parallel architectures and compilation techniques, Vienna, Austria.","DOI":"10.1145\/1854273.1854313"},{"key":"ref_15","doi-asserted-by":"crossref","unstructured":"Wang, Z., and O\u2019Boyle, M.F.P. (2009, January 14\u201318). Mapping parallelism to multi-cores: A machine learning based approach. Proceedings of the ACM Sigplan Symposium on Principles and Practice of Parallel Programming, PPOPP 2009, Raleigh, NC, USA.","DOI":"10.1145\/1504176.1504189"},{"key":"ref_16","unstructured":"Singer, J., Yiapanis, P., Pocock, A., Lujan, M., Brown, G., Ioannou, N., and Cintra, M. (2010, January 24). Static java program features for intelligent squash prediction. Proceedings of the Statistical and Machine learning approaches to ARchitecture and compilaTion (SMART\u201910), Pisa, Italy."},{"key":"ref_17","doi-asserted-by":"crossref","unstructured":"Chen, X., and Long, S. (2009, January 9\u201311). Adaptive multi-versioning for OpenMP parallelization via machine learning. Proceedings of the 2009 15th International Conference on Parallel and Distributed Systems (ICPADS), Shenzhen, China.","DOI":"10.1109\/ICPADS.2009.77"},{"key":"ref_18","doi-asserted-by":"crossref","unstructured":"Liu, B., Zhao, Y., Zhong, X., Liang, Z., and Feng, B. (2013, January 13\u201315). A novel thread partitioning approach based on machine learning for speculative multithreading. Proceedings of the 2013 IEEE 10th International Conference on High Performance Computing and Communications & 2013 IEEE International Conference on Embedded and Ubiquitous Computing, Zhangjiajie, China.","DOI":"10.1109\/HPCC.and.EUC.2013.119"},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Monsifrot, A., Bodin, F., and Quiniou, R. (2002, January 4\u20136). A machine learning approach to automatic production of compiler heuristics. Proceedings of the International Conference on Artificial Intelligence: Methodology, Systems, and Applications, Varna, Bulgaria.","DOI":"10.1007\/3-540-46148-5_5"},{"key":"ref_20","unstructured":"Stephenson, M., and Amarasinghe, S. (2005, January 20\u201323). Predicting unroll factors using supervised classification. Proceedings of the International Symposium on Code Generation and Optimization, San Jose, CA, USA."},{"key":"ref_21","unstructured":"Agakov, F., Bonilla, E., Cavazos, J., Franke, B., Fursin, G., O\u2019Boyle, M.F., Thomson, J., Toussaint, M., and Williams, C.K. (2006, January 26\u201329). Using machine learning to focus iterative optimization. Proceedings of the International Symposium on Code Generation and Optimization, Manhattan, NY, USA."},{"key":"ref_22","doi-asserted-by":"crossref","unstructured":"Cavazos, J., Dubach, C., Agakov, F., Bonilla, E., O\u2019Boyle, M.F., Fursin, G., and Temam, O. (2006, January 22\u201327). Automatic performance model construction for the fast software exploration of new hardware designs. Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems, Seoul, Korea.","DOI":"10.1145\/1176760.1176765"},{"key":"ref_23","doi-asserted-by":"crossref","unstructured":"Wang, Z., Powell, D., Franke, B., and OBoyle, M. (2014, January 5\u201313). Exploitation of GPUs for the parallelisation of probably parallel legacy code. Proceedings of the International Conference on Compiler Construction, Grenoble, France.","DOI":"10.1007\/978-3-642-54807-9_9"},{"key":"ref_24","doi-asserted-by":"crossref","unstructured":"Luk, C.K., Hong, S., and Kim, H. (2009, January 12\u201316). Qilin: Exploiting parallelism on heterogeneous multiprocessors with adaptive mapping. Proceedings of the 2009 42nd Annual IEEE\/ACM International Symposium on Microarchitecture (MICRO), New York, NY, USA.","DOI":"10.1145\/1669112.1669121"},{"key":"ref_25","doi-asserted-by":"crossref","unstructured":"Khan, S., Xekalakis, P., Cavazos, J., and Cintra, M. (2007, January 15\u201319). Using predictive modeling for cross-program design space exploration in multicore systems. Proceedings of the 16th International Conference on Parallel Architecture and Compilation Techniques, Brasov, Romania.","DOI":"10.1109\/PACT.2007.4336223"},{"key":"ref_26","doi-asserted-by":"crossref","first-page":"185","DOI":"10.1145\/1168917.1168881","article-title":"Accurate and efficient regression modeling for microarchitectural performance and power prediction","volume":"40","author":"Lee","year":"2006","journal-title":"ACM SIGOPS Oper. Syst. Rev."},{"key":"ref_27","unstructured":"Yang, S., Shafik, R.A., Merrett, G.V., Stott, E., Levine, J.M., Davis, J., and Al-Hashimi, B.M. (2015, January 1\u20134). Adaptive energy minimization of embedded heterogeneous systems using regression-based learning. Proceedings of the 2015 25th International Workshop on Power and Timing Modeling, Optimization and Simulation (PATMOS), Bahia, Brazil."},{"key":"ref_28","doi-asserted-by":"crossref","first-page":"229","DOI":"10.1145\/1167515.1167492","article-title":"Method-specific dynamic compilation using logistic regression","volume":"41","author":"Cavazos","year":"2006","journal-title":"ACM Sigplan Not."},{"key":"ref_29","doi-asserted-by":"crossref","unstructured":"Chen, Z., Zhao, Y.L., Pan, X.Y., Dong, Z.Y., Gao, B., and Zhong, Z.W. (2009, January 8\u201311). An overview of Prophet. Proceedings of the International Conference on Algorithms and Architectures for Parallel Processing, Taipei, Taiwan.","DOI":"10.1007\/978-3-642-03095-6_38"},{"key":"ref_30","doi-asserted-by":"crossref","unstructured":"Dong, Z., Zhao, Y., Wei, Y., Wang, X., and Song, S. (2009, January 25\u201327). Prophet: A speculative multi-threading execution model with architectural support based on CMP. Proceedings of the 2009 International Conference on Scalable Computing and Communications, Dalian, China. Eighth International Conference on Embedded Computing.","DOI":"10.1109\/EmbeddedCom-ScalCom.2009.128"},{"key":"ref_31","doi-asserted-by":"crossref","first-page":"778","DOI":"10.1007\/s11227-013-1000-1","article-title":"A thread partitioning approach for speculative multithreading","volume":"67","author":"Liu","year":"2014","journal-title":"J. Supercomput."},{"key":"ref_32","doi-asserted-by":"crossref","unstructured":"Bhowmik, A., and Franklin, M. (2002, January 11\u201313). A general compiler framework for speculative multithreading. Proceedings of the Fourteenth Annual ACM Symposium on Parallel Algorithms and Architectures, Winnipeg, MB, Canada.","DOI":"10.1145\/564870.564885"},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Cao, Z., and Verbrugge, C. (2013, January 1\u20134). Mixed model universal software thread-level speculation. Proceedings of the 2013 42nd International Conference on Parallel Processing, Lyon, France.","DOI":"10.1109\/ICPP.2013.79"},{"key":"ref_34","doi-asserted-by":"crossref","first-page":"31","DOI":"10.1145\/193209.193217","article-title":"SUIF: An infrastructure for research on parallelizing and optimizing compilers","volume":"29","author":"Wilson","year":"1994","journal-title":"ACM Sigplan Not."},{"key":"ref_35","unstructured":"Holmes, G., Donkin, A., and Witten, I.H. (December, January 29). Weka: A machine learning workbench. Proceedings of the 1994 Second Australian and New Zealand Conference on Intelligent Information Systems, Brisbane, Australia."},{"key":"ref_36","doi-asserted-by":"crossref","first-page":"71","DOI":"10.1109\/40.848474","article-title":"The stanford hydra CMP","volume":"20","author":"Hammond","year":"2000","journal-title":"IEEE Micro"},{"key":"ref_37","unstructured":"Carlisle, M.C. (1996). Olden: Parallelizing Programs with Dynamic Data Structures on Distributed-Memory Machines. [Ph.D. Thesis, Princeton University]."},{"key":"ref_38","unstructured":"Compiler, M.S.B. (2000). The Machine-SUIF 2.1 Compiler Documentation Set, Harvard University."},{"key":"ref_39","doi-asserted-by":"crossref","first-page":"177","DOI":"10.1080\/03081089308818219","article-title":"A cramer rule for solution of the general restricted linear equation?","volume":"34","author":"Chen","year":"1993","journal-title":"Linear Multilinear Algebra"}],"container-title":["Symmetry"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2073-8994\/9\/9\/180\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T18:43:59Z","timestamp":1760208239000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2073-8994\/9\/9\/180"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,9,2]]},"references-count":39,"journal-issue":{"issue":"9","published-online":{"date-parts":[[2017,9]]}},"alternative-id":["sym9090180"],"URL":"https:\/\/doi.org\/10.3390\/sym9090180","relation":{},"ISSN":["2073-8994"],"issn-type":[{"type":"electronic","value":"2073-8994"}],"subject":[],"published":{"date-parts":[[2017,9,2]]}}}