{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,9,25]],"date-time":"2026-09-25T01:56:22Z","timestamp":1790301382826,"version":"4.1.0"},"reference-count":31,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2022,4,30]],"date-time":"2022-04-30T00:00:00Z","timestamp":1651276800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2022,4,30]],"date-time":"2022-04-30T00:00:00Z","timestamp":1651276800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100004837","name":"Ministerio de Ciencia e Innovaci\u00f3n","doi-asserted-by":"crossref","award":["PID2020-113614RB-C21"],"award-info":[{"award-number":["PID2020-113614RB-C21"]}],"id":[{"id":"10.13039\/501100004837","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100002809","name":"Generalitat de Catalunya","doi-asserted-by":"publisher","award":["2017-SGR-313"],"award-info":[{"award-number":["2017-SGR-313"]}],"id":[{"id":"10.13039\/501100002809","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Computing"],"published-print":{"date-parts":[[2023,5]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Incorporating machine learning into automatic performance analysis and tuning tools is a promising path to tackle the increasing heterogeneity of current HPC applications. However, this introduces the need for generating balanced datasets of parallel applications\u2019 executions and for dealing with natural imbalances for optimizing performance parameters. This work proposes a holistic approach that integrates a methodology for building balanced datasets of OpenMP code-region patterns and a way to use such datasets for tuning performance parameters. The methodology uses hardware performance counters to characterize the execution of a given region and correlation analysis to determine whether it covers an unique part of the pattern input space. Nevertheless, a balanced dataset of region patterns may become naturally imbalanced when used for training a model for tuning any specific performance parameter. For this reason, we have explored several methods for dealing with naturally imbalanced datasets for finding the appropriated way of using them for tuning purposes. Experimentation shows that the proposed methodology can be used to build balanced datasets and that such datasets, plus a combination of Random Forest and binary classification, can be used to train a model able to accurately tune the number of threads of OpenMP parallel regions.<\/jats:p>","DOI":"10.1007\/s00607-022-01081-6","type":"journal-article","created":{"date-parts":[[2022,5,2]],"date-time":"2022-05-02T13:11:50Z","timestamp":1651497110000},"page":"999-1017","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":10,"title":["Predicting number of threads using balanced datasets for openMP regions"],"prefix":"10.1007","volume":"105","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-9640-6763","authenticated-orcid":false,"given":"Jordi","family":"Alcaraz","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Ali","family":"TehraniJamsaz","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Akash","family":"Dutta","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0090-4109","authenticated-orcid":false,"given":"Anna","family":"Sikora","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8672-5317","authenticated-orcid":false,"given":"Ali","family":"Jannesari","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8868-7382","authenticated-orcid":false,"given":"Joan","family":"Sorribes","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9729-8557","authenticated-orcid":false,"given":"Eduardo","family":"Cesar","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2022,4,30]]},"reference":[{"key":"1081_CR1","doi-asserted-by":"crossref","unstructured":"Alcaraz J, Sikora A, C\u00e9sar E (2019) Hardware counters\u2019 space reduction for code region characterization, in Euro-Par 2019, ser. Lecture Notes in Computer Science, R.\u00a0Yahyapour, Ed., vol. 11725. Springer, 2019, pp 74\u201386","DOI":"10.1007\/978-3-030-29400-7_6"},{"key":"1081_CR2","unstructured":"Nguyen GH, Bouzerdoum A, Phung SL (2009) Learning pattern classification tasks with imbalanced data sets, in Pattern Recognition, P.-Y. Yin, Ed. Rijeka: IntechOpen, ch.\u00a010"},{"key":"1081_CR3","doi-asserted-by":"publisher","first-page":"294","DOI":"10.1016\/j.neucom.2017.07.004","volume":"272","author":"A Nath","year":"2018","unstructured":"Nath A, Subbiah K (2018) The role of pertinently diversified and balanced training as well as testing data sets in achieving the true performance of classifiers in predicting the antifreeze proteins. Neurocomputing 272:294\u2013305","journal-title":"Neurocomputing"},{"key":"1081_CR4","doi-asserted-by":"crossref","unstructured":"Alcaraz J, Sleder S, TehraniJamsaz A, Sikora A, Jannesari A, Sorribes J, Cesar E (2021) Building representative and balanced datasets of openmp parallel regions, In: 2021 29th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP), pp 67\u201374","DOI":"10.1109\/PDP52278.2021.00019"},{"key":"1081_CR5","doi-asserted-by":"crossref","unstructured":"Li Z, Jannesari A, Wolf F (2013) Discovery of potential parallelism in sequential programs, In: 42nd international conference on parallel processing, pp 1004\u20131013","DOI":"10.1109\/ICPP.2013.119"},{"key":"1081_CR6","first-page":"330","volume":"2019","author":"M Norouzi","year":"2019","unstructured":"Norouzi M, Wolf F, Jannesari A (2019) Automatic construct selection and variable classification in openmp. Proc ICS 2019:330\u2013341","journal-title":"Proc ICS"},{"key":"1081_CR7","doi-asserted-by":"crossref","unstructured":"Fried D, Li Z, Jannesari A, Wolf F (2013) Predicting parallelization of sequential programs using supervised learning, In: 2013 12th international conference on machine learning and applications, vol.\u00a02. IEEE, pp 72\u201377","DOI":"10.1109\/ICMLA.2013.108"},{"key":"1081_CR8","doi-asserted-by":"crossref","unstructured":"Maramzin A, Vasiladiotis C, Lozano R, Cole M, Franke B (2019) It looks like you\u2019re writing a parallel loop: a machine learning based parallelization assistant, In: Proceedings of the 6th ACM SIGPLAN International Workshop on AI-SEPS, 2019, pp 1\u201310","DOI":"10.1145\/3358500.3361567"},{"issue":"6","key":"1081_CR9","doi-asserted-by":"publisher","first-page":"177","DOI":"10.1145\/1543135.1542496","volume":"44","author":"G Tournavitis","year":"2009","unstructured":"Tournavitis G, Wang Z, Franke B, O\u2019Boyle MF (2009) Towards a holistic approach to auto-parallelization: integrating profile-driven parallelism detection and machine-learning based mapping. ACM Sigplan notices 44(6):177\u2013187","journal-title":"ACM Sigplan notices"},{"key":"1081_CR10","doi-asserted-by":"crossref","unstructured":"Filipovi\u010d J, Petrovi\u010d F, Benkner S (2017) Autotuning of opencl kernels with global optimizations, In: Proceedings of the 1st Workshop on AutotuniNg and ADaptivity AppRoaches for Energy Efficient HPC Systems, ser. ANDARE\u2019 17, NY, USA","DOI":"10.1145\/3152821.3152877"},{"key":"1081_CR11","doi-asserted-by":"crossref","unstructured":"Filipovic J, Hozzov\u00e1 J, Nezarat A, Olha J, Petrovi\u010d F (2021) Using hardware performance counters to speed up autotuning convergence on gpus, ArXiv","DOI":"10.1016\/j.jpdc.2021.10.003"},{"key":"1081_CR12","doi-asserted-by":"crossref","unstructured":"de\u00a0Oliveira\u00a0Castro P, Kashnikov Y, Akel C, Popov M, Jalby W (2014) Fine-grained benchmark subsetting for system selection, In: Proceedings of Annual IEEE\/ACM International Symposium on CGO, ser. CGO \u201914, NY, USA, p 132\u2013142","DOI":"10.1145\/2544137.2544144"},{"key":"1081_CR13","doi-asserted-by":"crossref","unstructured":"Balaprakash P, Gramacy R, Wild S (2013) Active-learning-based surrogate models for empirical performance tuning, Proceedings - ICCC, pp 1\u20138, 09","DOI":"10.1109\/CLUSTER.2013.6702683"},{"key":"1081_CR14","doi-asserted-by":"crossref","unstructured":"Wang Z, O\u2019Boyle MF (2009) Mapping parallelism to multi-cores: a machine learning based approach, In: PPOPP Proceedings of the 14th ACM SIGPLAN, pp 75\u201384","DOI":"10.1145\/1504176.1504189"},{"key":"1081_CR15","doi-asserted-by":"crossref","unstructured":"Qawasmeh A, Malik AM, Chapman BM (2015) Adaptive openmp task scheduling using runtime apis and machine learning, In: 2015 IEEE 14th international conference on machine learning and applications (ICMLA). IEEE, pp. 889\u2013895","DOI":"10.1109\/ICMLA.2015.111"},{"key":"1081_CR16","first-page":"76","volume":"6","author":"L J\u00e4ntschi","year":"2005","unstructured":"J\u00e4ntschi L, Bolboaca S-D (2005) Pearson versus spearman, kendall\u2019s tau correlation analysis on structure-activity relationships of biologic active compounds. Leonardo Electron J Practices Technol 6:76\u201398","journal-title":"Leonardo Electron J Practices Technol"},{"key":"1081_CR17","unstructured":"McCalpin JD (1995) Stream: Sustainable memory bandwidth in high performance computers, Link: www.cs.virginia.edu\/stream\/"},{"key":"1081_CR18","unstructured":"Yuki T (2014) Understanding polybench\/c 3.2 kernels, In: International workshop on Polyhedral Compilation Techniques (IMPACT), pp. 1\u20135"},{"key":"1081_CR19","unstructured":"Yuki T, Pouchet L-N (2015) Polybench 4.0, accessed: April 21 2020. [Online]. Available: https:\/\/www.cs.colostate.edu\/AlphaZsvn\/Development\/trunk\/mde\/edu.csu.melange.alphaz.polybench\/polybench-alpha-4.0\/polybench.pdf"},{"key":"1081_CR20","unstructured":"Klambauer G, Unterthiner T, Mayr A, Hochreiter S (2017) Self-normalizing neural networks, In: Advances in neural information processing systems, pp 971\u2013980"},{"key":"1081_CR21","doi-asserted-by":"crossref","unstructured":"Mart\u00ednez A, Sikora A, C\u00e9sar E, Sorribes J (1970) Elastic: A large scale dynamic tuning environment, Scientific Programming, vol.\u00a022,","DOI":"10.1155\/2014\/403695"},{"key":"1081_CR22","doi-asserted-by":"publisher","first-page":"1517","DOI":"10.1002\/cpe.1126","volume":"19","author":"A Sikora Morajko","year":"2007","unstructured":"Sikora Morajko A, Caymes-Scutari P, Margalef T, Luque E (2007) Mate: Monitoring, analysis and tuning environment for parallel\/distributed applications. Concurrency Comput: Pract Exp 19:1517\u20131531","journal-title":"Concurrency Comput: Pract Exp"},{"issue":"3","key":"1081_CR23","first-page":"63","volume":"5","author":"DH Bailey","year":"1991","unstructured":"Bailey DH, Barszcz E, Barton JT, Browning DS, Carter RL, Dagum L, Fatoohi RA, Frederickson PO et al (1991) The nas parallel benchmarks. Int J Supercomput Appl 5(3):63\u201373","journal-title":"Int J Supercomput Appl"},{"key":"1081_CR24","doi-asserted-by":"publisher","first-page":"568","DOI":"10.1016\/j.parco.2006.06.005","volume":"32","author":"E C\u00e9sar","year":"2006","unstructured":"C\u00e9sar E, Moreno A, Sorribes J, Luque E (2006) Modeling master\/worker applications for automatic performance tuning. Parallel Comput 32:568\u2013589","journal-title":"Parallel Comput"},{"key":"1081_CR25","first-page":"25","volume":"30","author":"S Kotsiantis","year":"2005","unstructured":"Kotsiantis S, Kanellopoulos D, Pintelas P (2005) Handling imbalanced datasets: A review. GESTS ICSSE 30:25\u201336","journal-title":"GESTS ICSSE"},{"issue":"1","key":"1081_CR26","doi-asserted-by":"publisher","first-page":"20","DOI":"10.1145\/1007730.1007735","volume":"6","author":"GEAPA Batista","year":"2004","unstructured":"Batista GEAPA, Prati RC, Monard MC (2004) A study of the behavior of several methods for balancing machine learning training data. SIGKDD Explor Newsl 6(1):20\u201329","journal-title":"SIGKDD Explor Newsl"},{"key":"1081_CR27","doi-asserted-by":"publisher","first-page":"352","DOI":"10.1016\/j.neucom.2019.06.100","volume":"366","author":"G Kov\u00e1cs","year":"2019","unstructured":"Kov\u00e1cs G (2019) Smote-variants: A python implementation of 85 minority oversampling techniques. Neurocomputing 366:352\u2013354","journal-title":"Neurocomputing"},{"key":"1081_CR28","unstructured":"Elkan C (05 2001) The foundations of cost-sensitive learning, In: Proceedings of the 17th international conference on artificial intelligence, vol.\u00a01,"},{"key":"1081_CR29","first-page":"05","volume":"13","author":"G Biau","year":"2010","unstructured":"Biau G (2010) Analysis of a random forests model. JMLR 13:05","journal-title":"JMLR"},{"issue":"1\u20134","key":"1081_CR30","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1007\/s10462-009-9114-9","volume":"30","author":"A Lorena","year":"2008","unstructured":"Lorena A, Carvalho A, Gama J (2008) A review on the combination of binary classifiers in multiclass problems. Artif Intell Rev 30(1\u20134):19\u201337","journal-title":"Artif Intell Rev"},{"key":"1081_CR31","doi-asserted-by":"crossref","unstructured":"Gangwar AK, Ravi V (2019) Wip: Generative adversarial network for oversampling data in credit card fraud detection, in Information Systems Security","DOI":"10.1007\/978-3-030-36945-3_7"}],"container-title":["Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s00607-022-01081-6.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s00607-022-01081-6\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s00607-022-01081-6.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,4,24]],"date-time":"2023-04-24T15:08:06Z","timestamp":1682348886000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s00607-022-01081-6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,4,30]]},"references-count":31,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2023,5]]}},"alternative-id":["1081"],"URL":"https:\/\/doi.org\/10.1007\/s00607-022-01081-6","relation":{},"ISSN":["0010-485X","1436-5057"],"issn-type":[{"value":"0010-485X","type":"print"},{"value":"1436-5057","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,4,30]]},"assertion":[{"value":"30 April 2021","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"6 April 2022","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"30 April 2022","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}