{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,13]],"date-time":"2026-06-13T00:52:29Z","timestamp":1781311949902,"version":"3.54.1"},"reference-count":62,"publisher":"Oxford University Press (OUP)","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["The Computer Journal"],"published-print":{"date-parts":[[2017,1]]},"DOI":"10.1093\/comjnl\/bxw065","type":"journal-article","created":{"date-parts":[[2016,9,9]],"date-time":"2016-09-09T01:33:49Z","timestamp":1473384829000},"page":"60-85","source":"Crossref","is-referenced-by-count":19,"title":["PMCTrack: Delivering Performance Monitoring Counter Support to the OS Scheduler"],"prefix":"10.1093","volume":"60","author":[{"given":"J. C.","family":"Saez","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"A.","family":"Pousa","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"R.","family":"Rodri\u00edguez-Rodri\u00edguez","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"F.","family":"Castro","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"M.","family":"Prieto-Matias","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"286","published-online":{"date-parts":[[2016,9,8]]},"reference":[{"key":"2017012305400544000_60.1.60.1","unstructured":"Weaver, V. (2013) Linux Perfevents Features and Overhead. In Proceeding of Int. Workshop on Performance Analysis of Workload Optimized Systems, Austin, TX, 21 April, pp. 80\u201380. IEEE Computer Society Press, Los Alamitos, CA."},{"key":"2017012305400544000_60.1.60.2","doi-asserted-by":"publisher","DOI":"10.1088\/1742-6596\/119\/4\/042017"},{"key":"2017012305400544000_60.1.60.3","first-page":"53","article-title":"Tuning programs with oprofile","volume":"1","author":"Cohen","year":"2004","journal-title":"Wide Open Mag."},{"key":"2017012305400544000_60.1.60.4","doi-asserted-by":"crossref","first-page":"54","DOI":"10.1109\/MM.2008.48","article-title":"Using OS observations to improve performance in multicore systems","volume":"28","author":"Knauerhase","year":"2008","journal-title":"IEEE Micro"},{"key":"2017012305400544000_60.1.60.5","doi-asserted-by":"crossref","unstructured":"Spiliopoulos, V. , Kaxiras, S. and Keramidas, G. (2011) Green Governors: A Framework for Continuously Adaptive DVFS. In Proc. IGCC 11, Orlando, FL, July 25\u201328, pp. 1\u20138. IEEE Computer Society Press, Los Alamitos, CA.","DOI":"10.1109\/IGCC.2011.6008552"},{"key":"2017012305400544000_60.1.60.6","doi-asserted-by":"crossref","unstructured":"Zhuravlev, S. , Blagodurov, S. and Fedorova, A. (2010) Addressing Cache Contention in Multicore Processors Via Scheduling. In Proc. ASPLOS 10, Pittsbourgh, PA, March 13\u201317, pp. 129\u2013142. ACM, New York.","DOI":"10.1145\/1736020.1736036"},{"key":"2017012305400544000_60.1.60.7","doi-asserted-by":"crossref","unstructured":"Merkel, A. , Stoess, J. and Bellosa, F. (2010) Resource-Conscious Scheduling for Energy Efficiency on Multicore Processors. In Proc. EuroSys 10, Paris, France, April 13\u201316, pp. 153\u2013166. ACM, New York.","DOI":"10.1145\/1755913.1755930"},{"key":"2017012305400544000_60.1.60.8","doi-asserted-by":"crossref","unstructured":"Zhuravlev, S. , Blagodurov, S. and Fedorova, A. (2010) Akula: A Toolset for Experimenting and Developing Thread Placement Algorithms on Multicore Systems. In Proc. PACT 10, Vienna, Austria, September 11\u201315, pp. 249\u2013260. ACM, New York.","DOI":"10.1145\/1854273.1854307"},{"key":"2017012305400544000_60.1.60.9","doi-asserted-by":"crossref","unstructured":"Koufaty, D. , Reddy, D. and Hahn, S. (2010) Bias Scheduling in Heterogeneous Multi-core Architectures. In Proc. Eurosys 10, Paris, France, April 13\u201316, pp. 125\u2013138. ACM, New York.","DOI":"10.1145\/1755913.1755928"},{"key":"2017012305400544000_60.1.60.10","doi-asserted-by":"crossref","first-page":"6:1","DOI":"10.1145\/2166879.2166880","article-title":"Leveraging core specialization via OS scheduling to improve performance on asymmetric multicore systems","volume":"30","author":"Saez","year":"2012","journal-title":"ACM Trans. Comput. Syst."},{"key":"2017012305400544000_60.1.60.11","doi-asserted-by":"crossref","first-page":"15:1","DOI":"10.1145\/2566618","article-title":"Energy-efficient thread assignment optimization for heterogeneous multicore systems","volume":"14","author":"Petrucci","year":"2015","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"2017012305400544000_60.1.60.12","doi-asserted-by":"crossref","unstructured":"Saez, J.C. , Pousa, A. , Castro, F. , Chaver, D. and Prieto-Matias, M. (2015) ACFS: A Completely Fair Scheduler for Asymmetric Single-ISA Multicore Systems. In Proc. ACM SAC 15, Salamanca, Spain, April 13\u201317, pp. 2027\u20132032. ACM, New York.","DOI":"10.1145\/2695664.2695714"},{"key":"2017012305400544000_60.1.60.13","doi-asserted-by":"crossref","unstructured":"Ghiasi, S. , Keller, T. , and Rawson, F. (2005) Scheduling for Heterogeneous Processors in Server Systems. In Proc. Comput. Frontiers 05, Como, Italy, May 16\u201318, pp. 199\u2013210. ACM, New York.","DOI":"10.1145\/1062261.1062295"},{"key":"2017012305400544000_60.1.60.14","doi-asserted-by":"crossref","first-page":"46","DOI":"10.1145\/1577129.1577137","article-title":"Real time power estimation and thread scheduling via performance counters","volume":"37","author":"Singh","year":"2009","journal-title":"SIGARCH Comput. Archit. News"},{"key":"2017012305400544000_60.1.60.15","doi-asserted-by":"crossref","unstructured":"Saez, J.C. , Prieto, M. , Fedorova, A. , and Blagodurov, S. (2010) A Comprehensive Scheduler for Asymmetric Multicore Systems. In Proc. Eurosys 10, Paris, France, April 13\u201316, pp. 139\u2013152. ACM, New York.","DOI":"10.1145\/1755913.1755929"},{"key":"2017012305400544000_60.1.60.16","doi-asserted-by":"crossref","unstructured":"Li, T. , Brett, P. , Knauerhase, R. and Koufaty, D. (2010) Operating System Support for Overlapping-ISA Heterogeneous Multi-Core Architectures. In Proc. HPCA 10, Bangalore, India, January 9\u201314, pp. 1\u201312. IEEE Computer Society Press, Los Alamitos, CA.","DOI":"10.1109\/HPCA.2010.5416660"},{"key":"2017012305400544000_60.1.60.17","unstructured":"Van Craeynest, K. , Akram, S. , Heirman, W. , Jaleel, A. and Eeckhout, L. (2013) Fairness-Aware Scheduling on Single-ISA Heterogeneous Multi-Cores. In Proc. PACT 13, Edinburgh, Scotland, September 7\u201311, pp. 177\u2013187. ACM, New York."},{"key":"2017012305400544000_60.1.60.18","unstructured":"Perf (2015) Perf wiki tutorial on perf. https:\/\/perf.wiki.kernel.org\/index.php (accessed January 20, 2015)."},{"key":"2017012305400544000_60.1.60.19","unstructured":"Lm-sensors (2015) Hardware monitoring by lm-sensors. http:\/\/www.lm-sensors.org\/ (accessed March 02, 2015)."},{"key":"2017012305400544000_60.1.60.20","unstructured":"Nguyen, K. (2014) Intel's cache monitoring technology software-visible interfaces. https:\/\/software.intel.com\/en-us\/blogs\/2014\/12\/11\/intel-s-cache-monitoring-technology-software-visible-interfaces (accessed February 10, 2015)."},{"key":"2017012305400544000_60.1.60.21","unstructured":"Intel . Intel \u00ae 64 and IA-32 architectures software developer's manual volumes 3A and 3B: system programming guide. http:\/\/www.intel.com\/products\/processor\/manuals (accessed January 15, 2015)."},{"key":"2017012305400544000_60.1.60.22","unstructured":"ARM . ARM architecture reference manual. armv7-a and armv7-r edition. http:\/\/infocenter.arm.com\/ (accessed January 15, 2015)."},{"key":"2017012305400544000_60.1.60.23","doi-asserted-by":"publisher","DOI":"10.1177\/109434200001400303"},{"key":"2017012305400544000_60.1.60.24","doi-asserted-by":"crossref","unstructured":"Treibig, J. , Hager, G. , and Wellein, G. (2010) LIKWID: A Lightweight Performance-Oriented Tool Suite for x86 Multicore Environments. In Proc. ICPPW 10, San Diego, CA, September 13\u201316, pp. 207\u2013216. IEEE Computer Society, Washington, DC, USA.","DOI":"10.1109\/ICPPW.2010.38"},{"key":"2017012305400544000_60.1.60.25","doi-asserted-by":"crossref","unstructured":"Tanica, L. , Ilic, A. , Tomas, P. and Sosusa, L. (2014) Schedmon: A Performance and Energy Monitoring Tool for Modern Multi-Cores. In Proc. Euro-Par 14: Paral. Process. Workshops, Porto, Portugal, August 25\u201326, pp. 230\u2013241. Springer, Berlin.","DOI":"10.1007\/978-3-319-14313-2_20"},{"key":"2017012305400544000_60.1.60.26","unstructured":"ARM (2014). CoreTile express development board. http:\/\/www.arm.com\/products\/tools\/development-boards\/versatile-express\/coretile-express.php (accessed March 02, 2015)."},{"key":"2017012305400544000_60.1.60.27","unstructured":"ARM (2014) ARM Juno development board. http:\/\/www.arm.com\/products\/tools\/development-boards\/versatile-express\/juno-arm-development-platform.php (accessed November 16, 2015)."},{"key":"2017012305400544000_60.1.60.28","unstructured":"PMCTrack . Project official website. http:\/\/pmctrack.dacya.ucm.es\/."},{"key":"2017012305400544000_60.1.60.29","unstructured":"PAPI . PAPI-C overview. http:\/\/icl.cs.utk.edu\/projects\/papi\/wiki\/PAPIC:Overview (accessed January 30, 2015)."},{"key":"2017012305400544000_60.1.60.30","doi-asserted-by":"crossref","first-page":"8:1","DOI":"10.1145\/2579674","article-title":"Adaptive workload-aware task scheduling for single-ISA asymmetric multicore architectures","volume":"11","author":"Chen","year":"2014","journal-title":"ACM Trans. Archit. Code Optim."},{"key":"2017012305400544000_60.1.60.31","doi-asserted-by":"crossref","unstructured":"Kumar, R. , Tullsen, D.M. , Ranganathan, P. , Jouppi, N.P. , and Farkas, K.I. (2004) Single-ISA Heterogeneous Multi-Core Architectures for Multithreaded Workload Performance. In Proc. ISCA 04, Munich, Germany, June 19\u201323, pp. 64\u201375. IEEE Computer Society, Washington, DC, USA.","DOI":"10.1109\/ISCA.2004.1310764"},{"key":"2017012305400544000_60.1.60.32","unstructured":"ARM . Benefits of the big.LITTLE Architecture. http:\/\/www.arm.com\/files\/downloads\/Benefits_of_the_big.LITTLE_architecture.pdf (accessed January 10, 2015)."},{"key":"2017012305400544000_60.1.60.33","doi-asserted-by":"crossref","unstructured":"Chitlur, N. et al (2012) QuickIA: Exploring Heterogeneous Architectures on Real Prototypes. In Proc. HPCA 12, New Orleans, LA, February 25\u201329, pp. 1\u20138. IEEE Computer Society, Washington, DC, USA.","DOI":"10.1109\/HPCA.2012.6169046"},{"key":"2017012305400544000_60.1.60.34","doi-asserted-by":"publisher","DOI":"10.1145\/1531793.1531804"},{"key":"2017012305400544000_60.1.60.35","doi-asserted-by":"crossref","unstructured":"Becchi, M. and Crowley, P. (2006) Dynamic Thread Assignment on Heterogeneous Multiprocessor Architectures. In Proc. CF 06, Ischia, Italy, May 2\u20135, pp. 29\u201340. ACM, New York.","DOI":"10.1145\/1128022.1128029"},{"key":"2017012305400544000_60.1.60.36","doi-asserted-by":"crossref","unstructured":"Annavaram, M. , Grochowski, E. and Shen, J. (2005) Mitigating Amdahl's Law through EPI Throttling. In Proc. ISCA 05, Wisconsin, USA, June 4\u20138, pp. 298\u2013309. IEEE Computer Society, Washington, DC, USA.","DOI":"10.1145\/1080695.1069995"},{"key":"2017012305400544000_60.1.60.37","doi-asserted-by":"crossref","first-page":"33","DOI":"10.1109\/MC.2008.209","article-title":"Amdahl's Law in the Multicore Era","volume":"41","author":"Hill","year":"2008","journal-title":"IEEE Comput."},{"key":"2017012305400544000_60.1.60.38","doi-asserted-by":"crossref","unstructured":"Saez, J.C. , Pousa, A. , Castro, F. , Chaver, D. and Prieto-Matias, M. (2014) Exploring the throughput-fairness trade-off on asymmetric multicore systems. In Proc. Euro-Par 14: Parall. Process. Workshops, Porto, Portugal, August 25\u201326, pp. 326\u2013337. Springer, Berlin.","DOI":"10.1007\/978-3-319-14313-2_28"},{"key":"2017012305400544000_60.1.60.39","doi-asserted-by":"crossref","unstructured":"Van Craeynest, K. , Jaleel, A. , Eeckhout, L. , Narvaez, P. and Emer, J. (2012) Scheduling Heterogeneous Multi-Cores Through Performance Impact Estimation (PIE). In Proc. ISCA 12, Portland, OR, June 9\u201313, pp. 213\u2013224. IEEE Computer Society Washington, DC, USA.","DOI":"10.1109\/ISCA.2012.6237019"},{"key":"2017012305400544000_60.1.60.40","doi-asserted-by":"crossref","unstructured":"Pricopi, M. , Muthukaruppan, T.S. , Venkataramani, V. , Mitra, T. and Vishin, S. (2013) Power-Performance Modeling on Asymmetric Multi-Cores. In Proc. CASES 13, Montreal, Canada, September 29\u2013October 4, pp. 15:1\u201315:10. IEEE Press Piscataway, NJ, USA.","DOI":"10.1109\/CASES.2013.6662519"},{"key":"2017012305400544000_60.1.60.41","doi-asserted-by":"publisher","DOI":"10.1016\/j.jpdc.2010.08.020"},{"key":"2017012305400544000_60.1.60.42","doi-asserted-by":"crossref","unstructured":"Joao, J.A. , Suleman, M.A. , Mutlu, O. , and Patt, Y.N. (2013) Utility-Based Acceleration of Multithreaded Applications on Asymmetric CMPs. In Proc. ISCA 13, Tel-Aviv, Israel, June 23\u201327, pp. 154\u2013165. ACM, New York.","DOI":"10.1145\/2485922.2485936"},{"key":"2017012305400544000_60.1.60.43","unstructured":"Petrucci, V. , Loques, O. and Moss\u00e9, D. (2012) Lucky Scheduling for Energy-Efficient Heterogeneous Multi-Core Systems. In Proc. USENIX HotPower 12, Hollywood, CA, October 7, pp. 7\u20137. USENIX Association Berkeley, CA, USA."},{"key":"2017012305400544000_60.1.60.44","doi-asserted-by":"publisher","DOI":"10.1145\/1656274.1656278"},{"key":"2017012305400544000_60.1.60.45","unstructured":"Van der Pas, R. (2005) The OMPlab on Sun Systems. In Proc. IWOMP\u201905, Eugene, OR, (accessed 1\u20134 June)."},{"key":"2017012305400544000_60.1.60.46","doi-asserted-by":"crossref","unstructured":"Gabor, R. , Weiss, S. and Mendelson, A. (2006) Fairness and Throughput in Switch on Event Multithreading. In Proc. MICRO 06, Orlando, FL, December 9\u201313, pp. 149\u2013160. IEEE Computer Society Washington, DC, USA.","DOI":"10.1109\/MICRO.2006.25"},{"key":"2017012305400544000_60.1.60.47","doi-asserted-by":"crossref","unstructured":"Mutlu, O. and Moscibroda, T. (2007) Stall-Time Fair Memory Access Scheduling for Chip Multiprocessors. In Proc. MICRO \u201807, Chicago, IL, December 1\u20135, pp. 146\u2013160. IEEE Computer Society Washington, DC, USA.","DOI":"10.1109\/MICRO.2007.21"},{"key":"2017012305400544000_60.1.60.48","doi-asserted-by":"crossref","unstructured":"Ebrahimi, E. , Lee, C.J. , Mutlu, O. and Patt, Y.N. (2010) Fairness via Source Throttling: A Configurable and High-Performance Fairness Substrate for Multi-Core Memory Systems. In Proc. ASPLOS 10, Pittsburgh, PA, March 13\u201317, pp. 335\u2013346. ACM, New York.","DOI":"10.1145\/1736020.1736058"},{"key":"2017012305400544000_60.1.60.49","doi-asserted-by":"publisher","DOI":"10.1016\/j.micpro.2015.04.008"},{"key":"2017012305400544000_60.1.60.50","doi-asserted-by":"crossref","unstructured":"Horowitz, M. , Indermaur, T. and Gonzalez, R. (1994) Low-Power Digital Design. In Proc. IEEE Symposium on Low Power Electronics, San Diego, CA, October 10\u201312, pp. 8\u201311.","DOI":"10.1109\/LPE.1994.573184"},{"key":"2017012305400544000_60.1.60.51","doi-asserted-by":"publisher","DOI":"10.1109\/4.535411"},{"key":"2017012305400544000_60.1.60.52","doi-asserted-by":"crossref","unstructured":"Isci, C. and Martonosi, M. (2003) Runtime Power Monitoring in High-End Processors: Methodology and Empirical Data. In Proc. MICRO 03, San Diego, CA, December 3\u20135, pp. 93\u2013104. IEEE Computer Society Washington, DC, USA.","DOI":"10.1109\/MICRO.2003.1253186"},{"key":"2017012305400544000_60.1.60.53","doi-asserted-by":"publisher","DOI":"10.1016\/S0167-9473(01)00065-2"},{"key":"2017012305400544000_60.1.60.54","unstructured":"Nguyen, K. (2014) Benefits of Intel(R) cache monitoring technology in the Intel(R) Xeon(TM) processor E5 v3 family. https:\/\/software.intel.com\/en-us\/blogs\/2014\/06\/18\/benefit-of-cache-monitoring (accessed February 10, 2015)."},{"key":"2017012305400544000_60.1.60.55","unstructured":"Flemming, M. (2014) perf: Intel cache QoS monitoring support. https:\/\/lkml.org\/lkml\/2015\/1\/23\/590 (accessed February 05, 2015)."},{"key":"2017012305400544000_60.1.60.56","doi-asserted-by":"crossref","unstructured":"Qureshi, M.K. and Patt, Y.N. (2006) Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches. In Proc. MICRO 06, Orlando, FL, December 9\u201313, pp. 423\u2013432. IEEE Computer Society Washington, DC, USA.","DOI":"10.1109\/MICRO.2006.49"},{"key":"2017012305400544000_60.1.60.57","doi-asserted-by":"crossref","unstructured":"Tam, D.K. , Azimi, R. , Soares, L.B. , and Stumm, M. (2009) RapidMRC: Approximating L2 Miss Rate Curves on Commodity Systems for Online Optimizations. Proc. ASPLOS 09, Washington, DC, March 7\u201311, pp. 121\u2013132. ACM, New York.","DOI":"10.1145\/1508244.1508259"},{"key":"2017012305400544000_60.1.60.58","doi-asserted-by":"crossref","unstructured":"Sen, R. and Wood, D.A. (2013) Reuse-Based Online Models for Caches. In Proc. SIGMETRICS 13, Pittsburgh, PA, June 17\u201321, pp. 279\u2013292. ACM, New York.","DOI":"10.1145\/2465529.2465756"},{"key":"2017012305400544000_60.1.60.59","doi-asserted-by":"crossref","unstructured":"Berg, E. and Hagersten, E. (2004) Statcache: A Probabilistic Approach to Efficient and Accurate Data Locality Anpalysis. In Proc. ISPASS 04, Austin, TX, March 10\u201312, pp. 20\u201327. IEEE Computer Society, Washington, DC, USA.","DOI":"10.1109\/ISPASS.2004.1291352"},{"key":"2017012305400544000_60.1.60.60","doi-asserted-by":"crossref","unstructured":"Guo, F. and Solihin, Y. (2006) An Analytical Model for Cache Replacement Policy Performance. In Proc. SIGMETRICS 06, Saint Malo, France, June 26\u201330, pp. 228\u2013239. ACM, New York.","DOI":"10.1145\/1140277.1140304"},{"key":"2017012305400544000_60.1.60.61","doi-asserted-by":"publisher","DOI":"10.1145\/1899928.1899931"},{"key":"2017012305400544000_60.1.60.62","unstructured":"PMCTrack (2015) Source code repository at Github. https:\/\/github.com\/jcsaezal\/pmctrack (accessed December 10, 2015)."}],"container-title":["The Computer Journal"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/academic.oup.com\/comjnl\/article-pdf\/60\/1\/60\/10329287\/bxw065.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,10]],"date-time":"2025-06-10T17:39:11Z","timestamp":1749577151000},"score":1,"resource":{"primary":{"URL":"https:\/\/academic.oup.com\/comjnl\/article-lookup\/doi\/10.1093\/comjnl\/bxw065"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,9,8]]},"references-count":62,"journal-issue":{"issue":"1","published-online":{"date-parts":[[2017,1,23]]},"published-print":{"date-parts":[[2017,1]]}},"alternative-id":["10.1093\/comjnl\/bxw065"],"URL":"https:\/\/doi.org\/10.1093\/comjnl\/bxw065","relation":{},"ISSN":["0010-4620","1460-2067"],"issn-type":[{"value":"0010-4620","type":"print"},{"value":"1460-2067","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,9,8]]}}}