{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T22:24:09Z","timestamp":1775082249350,"version":"3.50.1"},"publisher-location":"Singapore","reference-count":52,"publisher":"Springer Nature Singapore","isbn-type":[{"value":"9789819584048","type":"print"},{"value":"9789819584055","type":"electronic"}],"license":[{"start":{"date-parts":[[2026,1,1]],"date-time":"2026-01-01T00:00:00Z","timestamp":1767225600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2026,1,1]],"date-time":"2026-01-01T00:00:00Z","timestamp":1767225600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2026]]},"DOI":"10.1007\/978-981-95-8405-5_27","type":"book-chapter","created":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T20:14:44Z","timestamp":1775074484000},"page":"497-517","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Are We There Yet? Unraveling the State-of-the-Art Binary Feedback-Directed Optimizations"],"prefix":"10.1007","author":[{"given":"Mingliang","family":"Liu","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Shanlin","family":"Deng","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Baojian","family":"Hua","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2026,4,2]]},"reference":[{"issue":"5","key":"27_CR1","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1145\/258916.258924","volume":"32","author":"G Ammons","year":"1997","unstructured":"Ammons, G., Ball, T., Larus, J.R.: Exploiting hardware performance counters with flow and context sensitive profiling. ACM SIGPLAN Notices 32(5), 85\u201396 (1997)","journal-title":"ACM SIGPLAN Notices"},{"issue":"4","key":"27_CR2","doi-asserted-by":"publisher","first-page":"357","DOI":"10.1145\/265924.265925","volume":"15","author":"JM Anderson","year":"1997","unstructured":"Anderson, J.M., et al.: Continuous profiling: where have all the cycles gone? ACM Trans. Comput. Syst. 15(4), 357\u2013390 (1997)","journal-title":"ACM Trans. Comput. Syst."},{"key":"27_CR3","unstructured":"Andriesse, D., Chen, X., van der Veen, V., Slowinska, A., Bos, H.: An In-Depth analysis of disassembly on Full-Scale x86\/x64 binaries. In: 25th USENIX Security Symposium (USENIX Security 16), pp. 583\u2013600 (2016)"},{"key":"27_CR4","volume-title":"Compiling with Continuations","author":"AW Appel","year":"2007","unstructured":"Appel, A.W.: Compiling with Continuations. Cambridge University Press, USA (2007)"},{"key":"27_CR5","unstructured":"ARM: Embedded trace macrocell architecture specification (2024). https:\/\/developer.arm.com\/documentation\/ihi0014\/q\/Introduction\/About-Embedded-Trace-Macrocells"},{"issue":"4","key":"27_CR6","doi-asserted-by":"publisher","first-page":"1319","DOI":"10.1145\/183432.183527","volume":"16","author":"T Ball","year":"1994","unstructured":"Ball, T., Larus, J.R.: Optimally profiling and tracing programs. ACM Trans. Program. Lang. Syst. 16(4), 1319\u20131360 (1994)","journal-title":"ACM Trans. Program. Lang. Syst."},{"issue":"1","key":"27_CR7","doi-asserted-by":"publisher","first-page":"188","DOI":"10.1145\/239912.239923","volume":"19","author":"B Calder","year":"1997","unstructured":"Calder, B., Grunwald, D., Jones, M., Lindsay, D., Martin, J., Mozer, M., Zorn, B.: Evidence-based static branch prediction using machine learning. ACM Trans. Program. Lang. Syst. 19(1), 188\u2013222 (1997)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"27_CR8","doi-asserted-by":"crossref","unstructured":"Chen, C., et al.: Xuantie-910: a commercial multi-core 12-stage pipeline out-of-order 64-bit high performance risc-v processor with vector extension : Industrial product. In: 2020 ACM\/IEEE 47th Annual International Symposium on Computer Architecture (ISCA), pp. 52\u201364. IEEE, Valencia, Spain (2020)","DOI":"10.1109\/ISCA45697.2020.00016"},{"key":"27_CR9","doi-asserted-by":"crossref","unstructured":"Chen, D., Li, D.X., Moseley, T.: Autofdo: Automatic feedback-directed optimization for warehouse-scale applications. In: Proceedings of the 2016 International Symposium on Code Generation and Optimization, pp. 12\u201323. ACM, Barcelona Spain (2016)","DOI":"10.1145\/2854038.2854044"},{"issue":"2","key":"27_CR10","doi-asserted-by":"publisher","first-page":"376","DOI":"10.1109\/TC.2011.233","volume":"62","author":"D Chen","year":"2013","unstructured":"Chen, D., Vachharajani, N., Hundt, R., Li, X., Eranian, S., Chen, W., Zheng, W.: Taming hardware event samples for precise and versatile feedback directed optimizations. IEEE Trans. Comput. 62(2), 376\u2013389 (2013)","journal-title":"IEEE Trans. Comput."},{"key":"27_CR11","unstructured":"Chen, S., Wang, H.: Compiler support for linker relaxation in risc-v (2019). https:\/\/riscv.org\/wp-content\/uploads\/2019\/03\/11.15-Shiva-Chen-Compiler-Support-For-Linker-Relaxation-in-RISC-V-2019-03-13.pdf"},{"key":"27_CR12","unstructured":"Cohn, R., Goodwin, D., Lowney, P.G., Rubin, N.: Spike: an optimizer for alpha\/nt executables. In: Proceedings of the USENIX Windows NT Workshop on The USENIX Windows NT Workshop 1997, p. 3. NT\u201997, USENIX Association, USA (1997)"},{"key":"27_CR13","unstructured":"Committee, P.I.: Tech-privileged@lists.riscv.org | a proposal to enhance risc-v hpm (hardware performance monitor) (2024). https:\/\/lists.riscv.org\/g\/tech-privileged\/topic\/a_proposal_to_enhance_risc_v\/75675990"},{"issue":"2","key":"27_CR14","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1007\/BF03356747","volume":"24","author":"TM Conte","year":"1996","unstructured":"Conte, T.M., Patel, B.A., Menezes, K.N., Cox, J.S.: Hardware-based profiling: an effective technique for profile-driven optimization. Int. J. Parallel Prog. 24(2), 187\u2013206 (1996)","journal-title":"Int. J. Parallel Prog."},{"key":"27_CR15","unstructured":"Corporation, I.: Intel\u00ae 64 and IA-32 architectures software developer\u2019s manual (325384\u2013083US) (2024)"},{"key":"27_CR16","unstructured":"De Melo, A.C.: The new linux\u2019perf\u2019tools. In: Slides from Linux Kongress. vol. 18, pp. 1\u201342 (2010)"},{"key":"27_CR17","unstructured":"Domingos, J.M., Tomas, P., Sousa, L.: Supporting risc-v performance counters through performance analysis tools for linux (perf) (2021)"},{"key":"27_CR18","unstructured":"Free Software Foundation, I.: Top (the gnu go compiler) (2024). https:\/\/gcc.gnu.org\/onlinedocs\/gccgo\/"},{"key":"27_CR19","unstructured":"Fried, J., et al.: Making kernel bypass practical for the cloud with junction. In: Proceedings of the 21st USENIX Symposium on Networked Systems Design and Implementation. NSDI\u201924, USENIX Association, USA (2024)"},{"key":"27_CR20","unstructured":"Gloy, N., Wang, Z., Zhang, C., Chen, B., Smith, M.: Profile-based optimization with statistical profiles (1997)"},{"key":"27_CR21","unstructured":"Google: Gollvm - git at google (2024). https:\/\/go.googlesource.com\/gollvm\/"},{"key":"27_CR22","doi-asserted-by":"crossref","unstructured":"He, W., Yu, H., Wang, L., Oh, T.: Revamping sampling-based pgo with context-sensitivity and pseudo-instrumentation. In: 2024 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), pp. 322\u2013333 (Mar 2024)","DOI":"10.1109\/CGO57630.2024.10444807"},{"key":"27_CR23","doi-asserted-by":"crossref","unstructured":"Hyoun Kyu Cho, Moseley, T., Hank, R., Bruening, D., Mahlke, S.: Instant profiling: Instrumentation sampling for profiling datacenter applications. In: Proceedings of the 2013 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), pp. 1\u201310. IEEE, Shenzhen (Feb 2013)","DOI":"10.1109\/CGO.2013.6494982"},{"key":"27_CR24","unstructured":"Ib\u00e1\u00f1ez, R.F.: Should we constrain the target label of a %pcrel_lo to be in the same section? $$\\cdot $$ issue #90 $$\\cdot $$ riscv-non-isa\/riscv-elf-psabi-doc (2024). https:\/\/github.com\/riscv-non-isa\/riscv-elf-psabi-doc\/issues\/90"},{"key":"27_CR25","doi-asserted-by":"crossref","unstructured":"Jiang, M., Zhou, Y., Luo, X., Wang, R., Liu, Y., Ren, K.: An empirical study on arm disassembly tools. In: Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis, pp. 401\u2013414. ISSTA 2020, Association for Computing Machinery, New York, NY, USA (2020)","DOI":"10.1145\/3395363.3397377"},{"issue":"9","key":"27_CR26","doi-asserted-by":"publisher","first-page":"177","DOI":"10.1145\/1291220.1291179","volume":"42","author":"A Kennedy","year":"2007","unstructured":"Kennedy, A.: Compiling with continuations, continued. SIGPLAN Not. 42(9), 177\u2013190 (2007)","journal-title":"SIGPLAN Not."},{"issue":"3","key":"27_CR27","doi-asserted-by":"publisher","first-page":"313","DOI":"10.1007\/BF01951942","volume":"13","author":"DE Knuth","year":"1973","unstructured":"Knuth, D.E., Stevenson, F.R.: Optimal measurement points for program frequency counts. BIT 13(3), 313\u2013322 (1973)","journal-title":"BIT"},{"key":"27_CR28","unstructured":"for Linux Team, R.: Rust for linux (2024). https:\/\/rust-for-linux.com"},{"key":"27_CR29","unstructured":"LLVM: Llvm support for bolt (2024). https:\/\/github.com\/llvm\/llvm-project\/tree\/main\/bolt"},{"key":"27_CR30","unstructured":"LLVM: Optimizing clang with llvm bolt (2024). https:\/\/github.com\/llvm\/llvm-project\/blob\/main\/bolt\/docs\/OptimizingClang.md"},{"key":"27_CR31","unstructured":"LLVM: [samplefdo] flow sensitive sample fdo (fsafdo) profile loader (2024). https:\/\/reviews.llvm.org\/D107878"},{"key":"27_CR32","unstructured":"Luk, C.K., Muth, R., Patil, H., Cohn, R., Lowney, G.: Ispike: a post-link optimizer for the intel\/spl reg\/ itanium\/spl reg\/ architecture. In: International Symposium on Code Generation and Optimization, 2004. CGO 2004, pp. 15\u201326 (2004)"},{"key":"27_CR33","doi-asserted-by":"crossref","unstructured":"Moreira, A.A., Ottoni, G., Quint\u00e3o Pereira, F.M.: Vespa: Static profiling for binary optimization. Proceedings of the ACM on Programming Languages 5(OOPSLA), 144:1\u2013144:28 (2021)","DOI":"10.1145\/3485521"},{"key":"27_CR34","unstructured":"Mozilla: Language details of the firefox repo (2024). https:\/\/4e6.github.io\/firefox-lang-stats\/"},{"key":"27_CR35","doi-asserted-by":"crossref","unstructured":"Novillo, D.: Samplepgo - the power of profile guided optimizations without the usability burden. In: 2014 LLVM Compiler Infrastructure in HPC, pp. 22\u201328. IEEE, LA, USA (2014)","DOI":"10.1109\/LLVM-HPC.2014.8"},{"key":"27_CR36","doi-asserted-by":"crossref","unstructured":"Panchenko, M., Auler, R., Nell, B., Ottoni, G.: Bolt: A practical binary optimizer for data centers and beyond. In: 2019 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), pp. 2\u201314. IEEE, Washington, DC, USA (2019)","DOI":"10.1109\/CGO.2019.8661201"},{"key":"27_CR37","doi-asserted-by":"crossref","unstructured":"Panchenko, M., Auler, R., Sakka, L., Ottoni, G.: Lightning bolt: powerful, fast, and scalable binary optimization. In: Proceedings of the 30th ACM SIGPLAN International Conference on Compiler Construction, pp. 119\u2013130. ACM, Virtual Republic of Korea (2021)","DOI":"10.1145\/3446804.3446843"},{"key":"27_CR38","unstructured":"Pike, R.: New case studies about google\u2019s use of go (2024). https:\/\/opensource.googleblog.com\/2020\/08\/new-case-studies-about-googles-use-of-go.html"},{"key":"27_CR39","doi-asserted-by":"crossref","unstructured":"Savage, J., Jones, T.M.: Halo: Post-link heap-layout optimisation. In: Proceedings of the 18th ACM\/IEEE International Symposium on Code Generation and Optimization, pp. 94\u2013106. CGO 2020, Association for Computing Machinery, New York, NY, USA (2020)","DOI":"10.1145\/3368826.3377914"},{"key":"27_CR40","doi-asserted-by":"crossref","unstructured":"Shen, H., Pszeniczny, K., Lavaee, R., Kumar, S., Tallam, S., Li, X.D.: Propeller: a profile guided, relinking optimizer for warehouse-scale applications. In: Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 2, pp. 617\u2013631. ACM, Vancouver BC Canada (2023)","DOI":"10.1145\/3575693.3575727"},{"issue":"6","key":"27_CR41","doi-asserted-by":"publisher","first-page":"196","DOI":"10.1145\/773473.178260","volume":"29","author":"A Srivastava","year":"1994","unstructured":"Srivastava, A., Eustace, A.: Atom: a system for building customized program analysis tools. ACM SIGPLAN Notices 29(6), 196\u2013205 (1994)","journal-title":"ACM SIGPLAN Notices"},{"key":"27_CR42","doi-asserted-by":"publisher","first-page":"133520","DOI":"10.1109\/ACCESS.2021.3112202","volume":"9","author":"K Suzaki","year":"2021","unstructured":"Suzaki, K., Nakajima, K., Oi, T., Tsukamoto, A.: Ts-perf: general performance measurement of trusted execution environment and rich execution environment on intel sgx, arm trustzone, and risc-v keystone. IEEE Access 9, 133520\u2013133530 (2021)","journal-title":"IEEE Access"},{"key":"27_CR43","unstructured":"TIOBE: Tiobe index (2024). https:\/\/www.tiobe.com\/tiobe-index\/"},{"key":"27_CR44","unstructured":"Wang, R., et al.: $$\\upmu $$slope: high compression and fast search on semi-structured logs. In: Proceedings of the 18th USENIX Conference on Operating Systems Design and Implementation. OSDI\u201924, USENIX Association, USA (2024)"},{"key":"27_CR45","unstructured":"Wang, S., Wang, P., Wu, D.: Reassembleable disassembling. In: 24th USENIX Security Symposium (USENIX Security 15), pp. 627\u2013642 (2015)"},{"key":"27_CR46","unstructured":"Waterman, A., Asanovic, K., Hauser, J. Inc, S.: The risc-v instruction set manual volume ii: Privileged architecture document version 20211203. CS Division, EECS Department, University of California, Berkeley (2021)"},{"key":"27_CR47","doi-asserted-by":"crossref","unstructured":"Williams-King, D., et al.: Egalito: layout-agnostic binary recompilation. In: Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 133\u2013147. ASPLOS \u201920, Association for Computing Machinery, New York, NY, USA (2020)","DOI":"10.1145\/3373376.3378470"},{"key":"27_CR48","doi-asserted-by":"crossref","unstructured":"Williams-King, D., Yang, J.: Codemason: binary-level profile-guided optimization. In: Proceedings of the 3rd ACM Workshop on Forming an Ecosystem Around Software Transformation, pp. 47\u201353. FEAST\u201919, Association for Computing Machinery, New York, NY, USA (2019)","DOI":"10.1145\/3338502.3359763"},{"key":"27_CR49","unstructured":"Yan, L., Thompson, D., Support, L.: Using perf on arm platforms (2024). https:\/\/static.linaro.org\/connect\/yvr18\/presentations\/yvr18-416.pdf"},{"key":"27_CR50","unstructured":"Yu, L., Zhang, X., Zhang, H., Sonchack, J., Ports, D., Liu, V.: Beaver: practical partial snapshots for distributed cloud services. In: Proceedings of the 18th USENIX Conference on Operating Systems Design and Implementation. OSDI\u201924, USENIX Association, USA (2024)"},{"key":"27_CR51","doi-asserted-by":"crossref","unstructured":"Yuan, P., Guo, Y., Chen, X.: Experiences in profile-guided operating system kernel optimization. In: Proceedings of 5th Asia-Pacific Workshop on Systems, pp. 1\u20136. ACM, Beijing China (2014)","DOI":"10.1145\/2637166.2637227"},{"key":"27_CR52","doi-asserted-by":"crossref","unstructured":"Zhou, R., Jones, T.M.: Janus: statically-driven and profile-guided automatic dynamic binary parallelisation. In: 2019 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO), pp. 15\u201325 (2019)","DOI":"10.1109\/CGO.2019.8661196"}],"container-title":["Lecture Notes in Computer Science","Algorithms and Architectures for Parallel Processing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-981-95-8405-5_27","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T20:14:50Z","timestamp":1775074490000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-981-95-8405-5_27"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026]]},"ISBN":["9789819584048","9789819584055"],"references-count":52,"URL":"https:\/\/doi.org\/10.1007\/978-981-95-8405-5_27","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026]]},"assertion":[{"value":"2 April 2026","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICA3PP","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Algorithms and Architectures for Parallel Processing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Zhengzhou","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"China","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2025","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"30 October 2025","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2 November 2025","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"25","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"ica3pp2025","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/ieee-cybermatics.org\/2025\/ica3pp\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}