{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,27]],"date-time":"2026-06-27T19:46:56Z","timestamp":1782589616764,"version":"3.54.5"},"publisher-location":"Cham","reference-count":30,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783031150739","type":"print"},{"value":"9783031150746","type":"electronic"}],"license":[{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2022]]},"DOI":"10.1007\/978-3-031-15074-6_13","type":"book-chapter","created":{"date-parts":[[2022,8,13]],"date-time":"2022-08-13T12:06:36Z","timestamp":1660392396000},"page":"200-216","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":18,"title":["PULP-TrainLib: Enabling On-Device Training for\u00a0RISC-V Multi-core MCUs Through Performance-Driven Autotuning"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8003-7633","authenticated-orcid":false,"given":"Davide","family":"Nadalini","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7458-4019","authenticated-orcid":false,"given":"Manuele","family":"Rusci","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9221-4633","authenticated-orcid":false,"given":"Giuseppe","family":"Tagliavini","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Leonardo","family":"Ravaglia","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8068-3806","authenticated-orcid":false,"given":"Luca","family":"Benini","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7924-933X","authenticated-orcid":false,"given":"Francesco","family":"Conti","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2022,8,14]]},"reference":[{"key":"13_CR1","unstructured":"Amodei, D., Olah, C., Steinhardt, J., Christiano, P., Schulman, J., Man\u00e9, D.: Concrete problems in AI safety (2016)"},{"issue":"8","key":"13_CR2","doi-asserted-by":"publisher","first-page":"1128","DOI":"10.1109\/TC.2020.2998456","volume":"69","author":"A Ankit","year":"2020","unstructured":"Ankit, A., et al.: Panther: a programmable architecture for neural network training harnessing energy-efficient reram. IEEE Trans. Comput. 69(8), 1128\u20131142 (2020)","journal-title":"IEEE Trans. Comput."},{"issue":"5","key":"13_CR3","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3197978","volume":"51","author":"AH Ashouri","year":"2018","unstructured":"Ashouri, A.H., Killian, W., Cavazos, J., Palermo, G., Silvano, C.: A survey on compiler autotuning using machine learning. ACM Comput. Surv. 51(5), 1\u201342 (2018)","journal-title":"ACM Comput. Surv."},{"key":"13_CR4","doi-asserted-by":"crossref","unstructured":"Bruschi, N., Haugou, G., Tagliavini, G., Conti, F., Benini, L., Rossi, D.: GVSoC: a highly configurable, fast and accurate full-platform simulator for RISC-V based IoT processors. In: 2021 IEEE 39th International Conference on Computer Design (ICCD), pp. 409\u2013416 (2021)","DOI":"10.1109\/ICCD53106.2021.00071"},{"key":"13_CR5","unstructured":"Cai, H., Gan, C., Zhu, L., Han, S.: Tinytl: reduce activations, not trainable parameters for efficient on-device learning (2021)"},{"key":"13_CR6","unstructured":"Chen, T., et al.: TVM: an automated end-to-end optimizing compiler for deep learning. In: 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2018), pp. 578\u2013594. USENIX Association, Carlsbad, CA, October 2018"},{"key":"13_CR7","unstructured":"Chen, T., et al.: Learning to optimize tensor programs (2019)"},{"key":"13_CR8","doi-asserted-by":"crossref","unstructured":"Chen, Y.R., et al.: Experiments and optimizations for TVM on RISC-V architectures with p extension. In: 2020 International Symposium on VLSI Design, Automation and Test (VLSI-DAT), pp. 1\u20134 (2020)","DOI":"10.1109\/VLSI-DAT49148.2020.9196477"},{"key":"13_CR9","unstructured":"David, R., et al.: Tensorflow lite micro: embedded machine learning on TinyML systems (2021)"},{"key":"13_CR10","doi-asserted-by":"crossref","unstructured":"Frigo, M., Johnson, S.: FFTW: an adaptive software architecture for the FFT. In: Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP 1998 (Cat. No. 98CH36181), vol. 3, pp. 1381\u20131384 (1998)","DOI":"10.1109\/ICASSP.1998.681704"},{"key":"13_CR11","unstructured":"Kone\u010dn\u00fd, J., McMahan, H.B., Yu, F.X., Richt\u00e1rik, P., Suresh, A.T., Bacon, D.: Federated learning: strategies for improving communication efficiency (2017)"},{"key":"13_CR12","doi-asserted-by":"crossref","unstructured":"Kopparapu, K., Lin, E.: TinyFedTL: federated transfer learning on tiny devices (2021)","DOI":"10.1109\/PerComWorkshops53856.2022.9767250"},{"key":"13_CR13","unstructured":"Lai, L., Suda, N., Chandra, V.: CMSIS-NN: efficient neural network kernels for arm cortex-m cpus (2018)"},{"key":"13_CR14","doi-asserted-by":"crossref","unstructured":"Lee, S., Nirjon, S.: Neuro.zero: a zero-energy neural network accelerator for embedded sensing and inference systems. In: Proceedings of the 17th Conference on Embedded Networked Sensor Systems. SenSys 2019, New York, NY, USA, pp. 138\u2013152. Association for Computing Machinery (2019)","DOI":"10.1145\/3356250.3360030"},{"key":"13_CR15","first-page":"11711","volume":"33","author":"J Lin","year":"2020","unstructured":"Lin, J., Chen, W.M., Lin, Y., Cohn, J., Gan, C., Han, S.: Mcunet: tiny deep learning on IoT devices. Adv. Neural. Inf. Process. Syst. 33, 11711\u201311722 (2020)","journal-title":"Adv. Neural. Inf. Process. Syst."},{"key":"13_CR16","doi-asserted-by":"publisher","first-page":"1261","DOI":"10.1016\/j.neucom.2017.06.084","volume":"275","author":"V Losing","year":"2018","unstructured":"Losing, V., Hammer, B., Wersing, H.: Incremental on-line learning: a review and comparison of state of the art algorithms. Neurocomputing 275, 1261\u20131274 (2018)","journal-title":"Neurocomputing"},{"key":"13_CR17","unstructured":"McMahan, B., Moore, E., Ramage, D., Hampson, S., Arcas, B.A.Y.: Communication-efficient learning of deep networks from decentralized data. In: Singh, A., Zhu, J. (eds.) Proceedings of the 20th International Conference on Artificial Intelligence and Statistics. Proceedings of Machine Learning Research, vol. 54, pp. 1273\u20131282. PMLR, 20\u201322 April 2017"},{"issue":"7","key":"13_CR18","first-page":"5986","volume":"7","author":"J Mills","year":"2020","unstructured":"Mills, J., Hu, J., Min, G.: Communication-efficient federated learning for wireless edge intelligence in IoT. IEEE IoT J. 7(7), 5986\u20135994 (2020)","journal-title":"IEEE IoT J."},{"issue":"8","key":"13_CR19","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3469029","volume":"54","author":"MGS Murshed","year":"2022","unstructured":"Murshed, M.G.S., Murphy, C., Hou, D., Khan, N., Ananthanarayanan, G., Hussain, F.: Machine learning at the network edge: a survey. ACM Comput. Surv. 54(8), 1\u201337 (2022)","journal-title":"ACM Comput. Surv."},{"key":"13_CR20","doi-asserted-by":"publisher","first-page":"15036","DOI":"10.1109\/ACCESS.2022.3147846","volume":"10","author":"D Mustafa","year":"2022","unstructured":"Mustafa, D.: A survey of performance tuning techniques and tools for parallel applications. IEEE Access 10, 15036\u201315055 (2022)","journal-title":"IEEE Access"},{"issue":"10","key":"13_CR21","doi-asserted-by":"publisher","first-page":"1345","DOI":"10.1109\/TKDE.2009.191","volume":"22","author":"SJ Pan","year":"2010","unstructured":"Pan, S.J., Yang, Q.: A survey on transfer learning. IEEE Trans. Knowl. Data Eng. 22(10), 1345\u20131359 (2010)","journal-title":"IEEE Trans. Knowl. Data Eng."},{"key":"13_CR22","doi-asserted-by":"crossref","unstructured":"Pellegrini, L., Graffieti, G., Lomonaco, V., Maltoni, D.: Latent replay for real-time continual learning. In: 2020 IEEE\/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 10203\u201310209 (2020)","DOI":"10.1109\/IROS45743.2020.9341460"},{"issue":"6","key":"13_CR23","doi-asserted-by":"publisher","first-page":"519","DOI":"10.1145\/2499370.2462176","volume":"48","author":"J Ragan-Kelley","year":"2013","unstructured":"Ragan-Kelley, J., Barnes, C., Adams, A., Paris, S., Durand, F., Amarasinghe, S.: Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines. SIGPLAN Not. 48(6), 519\u2013530 (2013)","journal-title":"SIGPLAN Not."},{"key":"13_CR24","doi-asserted-by":"publisher","first-page":"789","DOI":"10.1109\/JETCAS.2021.3121554","volume":"11","author":"L Ravaglia","year":"2021","unstructured":"Ravaglia, L., et al.: A TinyML platform for on-device continual learning with quantized latent replays. IEEE J. Emerg. Sel. Topics Circ. Syst. 11, 789\u2013802 (2021)","journal-title":"IEEE J. Emerg. Sel. Topics Circ. Syst."},{"key":"13_CR25","doi-asserted-by":"crossref","unstructured":"Ren, H., Anicic, D., Runkler, T.: TinyOL: TinyML with online-learning on microcontrollers (2021)","DOI":"10.1109\/IJCNN52387.2021.9533927"},{"key":"13_CR26","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1109\/JSSC.2021.3114881","volume":"57","author":"D Rossi","year":"2021","unstructured":"Rossi, D., et al.: Vega: a ten-core SOC for IoT endnodes with DNN acceleration and cognitive wake-up from MRAM-based state-retentive sleep mode. IEEE J. Solid-State Circ. 57, 127\u2013139 (2021)","journal-title":"IEEE J. Solid-State Circ."},{"key":"13_CR27","unstructured":"Vasilache, N., et al.: Tensor comprehensions: framework-agnostic high-performance machine learning abstractions (2018)"},{"key":"13_CR28","doi-asserted-by":"publisher","first-page":"58322","DOI":"10.1109\/ACCESS.2020.2982411","volume":"8","author":"F Wang","year":"2020","unstructured":"Wang, F., Zhang, M., Wang, X., Ma, X., Liu, J.: Deep learning for edge computing applications: a state-of-the-art survey. IEEE Access 8, 58322\u201358336 (2020)","journal-title":"IEEE Access"},{"issue":"5","key":"13_CR29","first-page":"4403","volume":"7","author":"X Wang","year":"2020","unstructured":"Wang, X., Magno, M., Cavigelli, L., Benini, L.: FANN-on-MCU: an open-source toolkit for energy-efficient neural network inference at the edge of the internet of things. IEEE IoT J. 7(5), 4403\u20134417 (2020)","journal-title":"IEEE IoT J."},{"key":"13_CR30","doi-asserted-by":"crossref","unstructured":"Whaley, R., Dongarra, J.: Automatically tuned linear algebra software. In: SC 1998: Proceedings of the 1998 ACM\/IEEE Conference on Supercomputing, pp. 38\u201338 (1998)","DOI":"10.1109\/SC.1998.10004"}],"container-title":["Lecture Notes in Computer Science","Embedded Computer Systems: Architectures, Modeling, and Simulation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-15074-6_13","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,10,1]],"date-time":"2024-10-01T17:29:09Z","timestamp":1727803749000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-15074-6_13"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022]]},"ISBN":["9783031150739","9783031150746"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-15074-6_13","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022]]},"assertion":[{"value":"14 August 2022","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"SAMOS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Embedded Computer Systems","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Samos","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Greece","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2022","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"3 July 2022","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"7 July 2022","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"22","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"samos2022","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/samos-conference.com\/wp\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"SoftConference","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"44","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"21","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"48% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}