The Itinerant List Update Problem
We introduce the itinerant list update problem (ILU), which is a relaxation of the classic list update problem in which the pointer no longer has to return to a home location after each request. The motivation to introduce ILU arises from the fact that it naturally models the problem of track memory management in Domain Wall Memory. Both online and offline versions of ILU arise, depending on specifics of this application.
First, we show that ILU is essentially equivalent to a dynamic variation of the classical minimum linear arrangement problem (MLA), which we call DMLA. Both ILU and DMLA are very natural, but do not appear to have been studied before. In this work, we focus on the offline ILU and DMLA problems. We then give an \(O(\log ^2n)\)-approximation algorithm for these problems. While the approach is based on well-known divide-and-conquer approaches for the standard MLA problem, the dynamic nature of these problems introduces substantial new difficulties. We also show an \(\varOmega (\log n)\) lower bound on the competitive ratio for any randomized online algorithm for ILU. This shows that online ILU is harder than online LU, for which O(1)-competitive algorithms, like Move-To-Front, are known.
We acknowledge Suzanne Den Hertog (née van der Ster) for many helpful discussions. Part of this work was done while several of the authors were participating in the Hausdorff Trimester on Discrete Mathematics in Fall 2015.
- 7.Banakar, R., Steinke, S., Lee, B.S., Balakrishnan, M., Marwedel, P.: Scratchpad memory: design alternative for cache on-chip memory in embedded systems. In: Symposium on Hardware/Software Codesign, pp. 73–78. ACM, New York (2002)Google Scholar
- 8.Borodin, A., El-Yaniv, R.: On randomization in online computation. In: IEEE Conference on Computational Complexity (CCC), pp. 226–238 (1997)Google Scholar
- 10.Gu, S., Sha, E., Zhuge, Q., Chen, Y., Hu, J.: Area and performance co-optimization for domain wall memory in application-specific embedded systems. In: Proceedings of the 52nd Annual Design Automation Conference, pp. 20:1–20:6. ACM, New York (2015)Google Scholar
- 11.Hansen, M.D.: Approximation algorithms for geometric embeddings in the plane with applications to parallel processing problems. In: IEEE Symposium on Foundations of Computer Science (FOCS), pp. 604–609 (1989)Google Scholar
- 12.Kamali, S., López-Ortiz, A.: A survey of algorithms and models for list update. In: Brodnik, A., López-Ortiz, A., Raman, V., Viola, A. (eds.) Space-Efficient Data Structures, Streams, and Algorithms. LNCS, vol. 8066, pp. 251–266. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40273-9_17CrossRefzbMATHGoogle Scholar
- 13.Kandemir, M., Ramanujam, J., Choudhary, A.: Exploiting shared scratch pad memory space in embedded multiprocessor systems. In: Design Automation Conference, pp. 219–224 (2002)Google Scholar
- 14.Kandemir, M., Ramanujam, J., Irwin, J., Vijaykrishnan, N., Kadayif, I., Parikh, A.: Dynamic management of scratch-pad memory space. In: Proceedings of the 38th Annual Design Automation Conference, pp. 690–695 (2001)Google Scholar
- 16.Panda, P.R., Dutt, N.D., Nicolau, A.: Efficient utilization of scratch-pad memory in embedded processor applications. In: European Design and Test Conference (1997)Google Scholar