skip to main content
research-article

Self-Awareness as a Model for Designing and Operating Heterogeneous Multicores

Published:04 July 2014Publication History
Skip Abstract Section

Abstract

Self-aware computing is a paradigm for structuring and simplifying the design and operation of computing systems that face unprecedented levels of system dynamics and thus require novel forms of adaptivity. The generality of the paradigm makes it applicable to many types of computing systems and, previously, researchers started to introduce concepts of self-awareness to multicore architectures. In our work we build on a recent reference architectural framework as a model for self-aware computing and instantiate it for an FPGA-based heterogeneous multicore running the ReconOS reconfigurable architecture and operating system. After presenting the model for self-aware computing and ReconOS, we demonstrate with a case study how a multicore application built on the principle of self-awareness, autonomously adapts to changes in the workload and system state. Our work shows that the reference architectural framework as a model for self-aware computing can be practically applied and allows us to structure and simplify the design process, which is essential for designing complex future computing systems.

References

  1. A. Agarwal, J. Miller, J. Eastep, D. Wentziaff, and H. Kasture. 2009. Self-aware computing. Final Tech. Rep. AFRL-RI-RS-TR-2009-161, 81.Google ScholarGoogle Scholar
  2. A. Agne, M. Platzner, and E. Lubbers. 2011. Memory virtualization for multithreaded reconfigurable hardware. In Proceedings of the International Conference on Field Programmable Logic and Applications. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. D. B. Bartolini, F. Sironi, M. Maggio, R. Cattaneo, D. Sciuto, and M. D. Santambrogio. 2012. A framework for thermal and performance management. In Proceedings of the Workshop on Managing Systems Automatically and Dynamically.Google ScholarGoogle Scholar
  4. T. Becker, A. Agne, P. R. Lewis, R. Bahsoon, F. Faniyi, L. Esterle, A. Keller, A. Chandra, A. R. Jensenius, and S. C. Stilkerich. 2012. EPiCS: Engineering proprioception in computing systems. In Proceedings of the Conference on Embedded and Ubiquitous Computing. IEEE.Google ScholarGoogle Scholar
  5. T. Becker, Q. Jin, W. Luk, and S. Weston. 2011. Dynamic constant reconfiguration for explicit finite difference option pricing. In Proceedings of the International Conference on Reconfigurable Computing and FPGAs. IEEE, 176--181. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Borkar. 2005. Designing reliable systems from unreliable components: The challenges of transistor variability and degradation. IEEE Micro, 10--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. J. Chen and L. K. John. 2009. Efficient program scheduling for heterogeneous multi-core processors. In Proceedings of the Design Automation Conference. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. K. Coskun, T. S. Rosing, K. A. Whisnant, and K. C. Gross. 2008. Static and dynamic temperature-aware scheduling for multiprocessor SoCs. IEEE Trans. VLSI Syst. 16, 9, 1127--1140. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J.-P. Diguet, Y. Eustache, and G. Gogniat. 2011. Closed-loop--based self-adaptive hardware/software-embedded systems: Design methodology and smart cam case study. ACM Trans. Embed. Comput. Syst. 10, 3, 1--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. S. Duval and R. A. Wicklund. 1972. A Theory of Objective Self Awareness. Academic Press.Google ScholarGoogle Scholar
  11. T. Ebi, M. A. A. Faruque, and J. Henkel. 2009. TAPE: Thermal-aware agent-based power economy for multi/many-core architectures. In Proceedings of the International Conference on Computer-Aided Design. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. L. Esterle, P. Lewis, M. Bogdanski, B. Rinner, and X. Yao. 2011. A Socio-economic approach to online vision graph generation and handover in distributed smart camera networks. In Proceedings of the International Conference on Distributed Smart Cameras.Google ScholarGoogle Scholar
  13. European Commission. 2013. Self-awareness in autonomic systems.Google ScholarGoogle Scholar
  14. C. Goukens, S. Dewitte, and L. Warlop. 2007. Me, Myself, And My Choices: The Influence of Private Self-Awareness on Preference-Behavior Consistency. Open Access Publication, Katholieke Universiteit Leuven.Google ScholarGoogle Scholar
  15. M. Happe, A. Agne, and C. Plessl. 2011. Measuring and predicting temperature distributions on FPGAs at run-time. In Proceedings of the International Conference on Reconfigurable Computing and FPGAs. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Happe, H. Hangmann, A. Agne, and C. Plessl. 2012. Eight Ways to put your FPGA on Fire: A Systematic Study of Heat Generators. In Proceedings of the International Conference on Reconfigurable Computing and FPGAs. IEEE.Google ScholarGoogle Scholar
  17. H. Hoffmann, J. Eastep, M. D. Santambrogio, J. E. Miller, and A. Agarwal. 2010. Application heartbeats: A generic interface for specifying program performance and goals in autonomous computing environments. In Proceedings of the International Conference on Autonomic Computing. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. H. Hoffmann, J. Holt, and G. Kurian. et al. 2012. Self-aware computing in the angstrom processor. In Proceedings of the Design Automation Conference. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. IBM. 2003. An architectural blueprint for autonomic computing. Tech. rep.Google ScholarGoogle Scholar
  20. P. Jones, Y. Cho, and J. Lockwood. 2007. Dynamically optimizing FPGA applications by monitoring temperature and workloads. In Proceedings of the International Conference on VLSI Design. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. W. Leland, M. Taqqu, W. Willinger, and D. WILSON. 1994. On the self-similar nature of ethernet traffic (extended version). IEEE/ACM Trans. Networking 2, 1, 1--15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. P. R. Lewis, A. Chandra, S. Parsons, E. Robinson, K. Glette, R. Bahsoon, J. Torresen, and X. Yao. 2011. A survey of self-awareness and its application in computing systems. In Proceedings of the International Conference on Self-Adaptive and Self-Organizing Systems Workshops. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. E. Lübbers and M. Platzner. 2009. ReconOS: Multithreaded programming for reconfigurable computers ACM Trans. Embed. Comput. Syst. 9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. F. Mulas, D. Atienza, A. Acquaviva, S. Carta, L. Benini, and G. Demicheli. 2009. Thermal balancing policy for multiprocessor stream computing platforms. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 28, 12, 1870--1882. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. X. Y. Niu, K. H. Tsoi, and W. Luk. 2011. Reconfiguring distributed applications in FPGA accelerated cluster with wireless networking. In Proceedings of the International Conference on Field Programmable Logic and Applications. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. L. Paulson. 2003. DARPA creating self-aware computing. IEEE Computer 36, 3, 24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. RECONOS. 2013. A programming model and OS for reconfigurable hardware.Google ScholarGoogle Scholar
  28. M. D. Santambrogio, H. Hoffmann, J. Eastep, and A. Agarwal. 2010. Enabling Technologies for Self-aware Adaptive Systems. In Proceedings of the Conference on Adaptive Hardware and Systems. IEEE.Google ScholarGoogle Scholar
  29. H. Schmeck, C. Müller-Schloer, E. Cakar, M. Mnif, and U. Richter. 2011. Adaptivity and self-organisation in organic computing systems. In Organic Computing: A Paradigm Shift for Complex Systems Autonomic Systems, Vol. 1, Springer Basel, 5--37.Google ScholarGoogle Scholar
  30. G. D. M. Serugendo, M.-P. Gleizes, and A. Karageorgos. 2011. Self-Organizing Software: From Natural to Artificial Adaptation. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. F. Sironi, D. B. Bartolini, S. Campanoni, F. Cancare, H. Hoffmann, D. Sciuto, and M. D. Santambrogio. 2012. Metronome: Operating system level performance management via self-adaptive computing. In Proceedings of the Design Automation Conference. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. F. Sironi, A. Cuoccio, H. Hoffmann, M. Maggio, and M. Santambrogio. 2011. Evolvable systems on reconfigurable architecture via self-aware adaptive applications. In Proceedings of the NASA/ESA Conference on Adaptive Hardware and Systems.Google ScholarGoogle Scholar
  33. F. Sironi, A. Cuoccio, H. Hoffmann, M. Maggio, and M. Santambrogio. 2010. Self-aware adaptation in FPGA-based systems. In Proceedings of the International Conference on Field Programmable Logic and Applications. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. R. Sterritt and M. Hinchey. 2010. SPAACE IV: Self-Properties for an autonomous and autonomic computing environment - Part IV A newish hope. In Proceedings of the IEEE International Conference and Workshops on Engineering of Autonomic and Autonomous Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. V. Strassen. 1969. Gaussian elimination is not optimal. Numerische Mathematik 13:354--356. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. M. J. Wooldridge. 2009. An Introduction to MultiAgent Systems 2nd Ed. Wiley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. J. Zeppenfeld, A. Bouajila, W. Stechele, A. Bernauer, O. Bringmann, W. Rosenstiel, and A. Herkersdorf. 2011. Applying ASoC to multi-core applications for workload management. In Organic Computing: A Paradigm Shift for Complex Systems, C. Müller-Schloer, H. Schmeck, and T. Ungerer, Eds., Autonomic Systems Series, vol. 1. Springer, 461--472.Google ScholarGoogle Scholar

Index Terms

  1. Self-Awareness as a Model for Designing and Operating Heterogeneous Multicores

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Transactions on Reconfigurable Technology and Systems
            ACM Transactions on Reconfigurable Technology and Systems  Volume 7, Issue 2
            June 2014
            199 pages
            ISSN:1936-7406
            EISSN:1936-7414
            DOI:10.1145/2638850
            Issue’s Table of Contents

            Copyright © 2014 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 4 July 2014
            • Accepted: 1 February 2014
            • Revised: 1 July 2013
            • Received: 1 January 2013
            Published in trets Volume 7, Issue 2

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader