Abstract
In today’s computing environments, the concurrent execution of multiple applications/threads is common and multi-cores are very well-suited to handle such workloads. However, they suffer from the fact that any mismatch between the application’s inherent instruction-level parallelism (ILP) and the core’s parallelism leads to unused resources or loss in performance. An accepted solution is to include several types of cores and match them dynamically depending on the performance needs of the application. This approach becomes less efficient when the number of cores does not match the number of parallel threads. Furthermore, the heterogeneity of (fixed) cores cannot be increased indefinitely as it would result in even higher degrees of mismatching and increased movement of instruction and data streams. In this paper, we are proposing a polymorphic processor, based on VLIW architectures, that can adapt its issue-width during runtime. By design, the processor can be perceived as a single wide core (8-issue VLIW) or two medium-wide cores (4-issue) or four small cores (2-issue) that can run high-ILP/low DLP, medium-ILP/medium DLP, and low-ILP/high-DLP applications, respectively. Furthermore, we are executing one single generic binary while performing these reconfigurations. In order to show the effectiveness of our approach, we synthesized different versions of the core to represent fixed heterogeneous cores and compared them to the dynamic implementation of the core. Our experiments show that the dynamically adaptive solution performs on average \(7\%\) faster and uses \(5\%\) less area than a platform which consists of fixed cores with \(1.5\times \) as many datapaths.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
van Berkel, C.H.: Multi-core for mobile phones. In: 2009 Design, Automation Test in Europe Conference Exhibition, pp. 1260–1265, April 2009
Greenhalgh, P.: big.LITTLE Processing with ARM Cortex-A15 & Cortex-A7, ARM White paper, pp. 1–8 (2011)
Sankaralingam, K., Nagarajan, R., Liu, H., Kim, C., Huh, J., Burger, D., Keckler, S., Moore, C.: Exploiting ILP, TLP, and DLP with the polymorphous trips architecture. IEEE Micro 23, 46–51 (2003)
Khubaib, K., Suleman, M.A., Hashemi, M., Wilkerson, C., Patt, Y.N.: Morphcore: an energy-efficient microarchitecture for high performance ILP and high throughput TLP. In: 45th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), pp. 305–316. IEEE (2012)
Ipek, E., Kirman, M., Kirman, N., Martinez, J.F.: Core fusion: accommodating software diversity in chip multiprocessors. In: Proceedings of the 34th Annual International Symposium on Computer Architecture, ISCA 2007, New York, NY, USA, pp. 186–197. ACM (2007)
Zhong, H., Lieberman, S., Mahlke, S.: Extending multicore architectures to exploit hybrid parallelism in single-thread applications. In: 13th International Symposium on High Performance Computer Architecture, HPCA 2007, pp. 25–36. IEEE, February 2007
Mai, K., Paaske, T., Jayasena, N., Ho, R., Dally, W., Horowitz, M.: Smart memories: a modular reconfigurable architecture. In: Proceedings of the 27th International Symposium on Computer Architecture, pp. 161–171, June 2000
Rodrigues, R., Annamalai, A., Koren, I., Kundu, S.: Improving performance per Watt of asymmetric multi-core processors via online program phase classification and adaptive core morphing. ACM Trans. Des. Autom. Electron. Syst. 18, 5:1–5:23 (2013)
Balakrishnan, S., Rajwar, R., Upton, M., Lai, K.: The impact of performance asymmetry in emerging multicore architectures. SIGARCH Comput. Archit. News 33, 506–517 (2005)
Wu, K., Kanstein, A., Madsen, J., Berekovic, M.: MT-ADRES: multithreading on coarse-grained reconfigurable architecture. In: Diniz, P.C., Marques, E., Bertels, K., Fernandes, M.M., Cardoso, J.M.P. (eds.) ARC 2007. LNCS, vol. 4419, pp. 26–38. Springer, Heidelberg (2007). doi:10.1007/978-3-540-71431-6_3
Rau, B.R., Fisher, J.A.: Instruction-level parallel processing: history, overview, and perspective. J. Supercomputing 7(1), 9–50 (1993)
Anjam, F., Nadeem, M., Wong, S.: Targeting code diversity with run-time adjustable issue-slots in a chip multiprocessor. In: Proceeding Design, Automation and Test in Europe, Grenoble, France, March 2011
Wong, S., Anjam, F.: The Delft reconfigurable VLIW processor. In: Proceeding 17th International Conference on Advanced Computing and Communications, Bangalore, India, pp. 244–251, December 2009
Hoozemans, J., Johansen, J., Straten, J.V., Brandon, A., Wong, S.: Multiple contexts in a multi-ported VLIW register file implementation. In: Proceeding 2015 International Conference on ReConFigurable Computing and FPGAs, Mayan Riviera, Mexico, December 2015
Brandon, A., Wong, S.: Support for dynamic issue width in VLIW processors using generic binaries. In: Proceeding Design, Automation & Test in Europe Conference & Exhibition, Grenoble, France, pp. 827–832, March 2013
Brandon, A., Hoozemans, J., Straten, J.V., Lorenzon, A.F., Sartor, A.L., Beck, A., Wong, S.: A sparse VLIW instruction encoding scheme compatible with generic binaries. In: Proceeding 2015 International Conference on ReConFigurable Computing and FPGAs, Mayan Riviera, Mexico, December 2015
Guthaus, M.R., Ringenberg, J.S., Ernst, D., Austin, T.M., Mudge, T., Brown, R.B.: MiBench: a free, commercially representative embedded benchmark suite. In: IEEE International Workshop on Workload Characterization, WWC-4, pp. 3–14. IEEE (2001)
Thoziyoor, S., Muralimanohar, N., Ahn, J.H., Jouppi, N.P.: Cacti 5.1, HP Laboratories (2008)
LEON/GRLIB. http://www.gaisler.com/index.php/downloads/leongrlib. Accessed 7 Sept 2016
Guo, Q., Sartor, A.L., Brandon, A., Beck, A., Zhou, X., Wong, S.: Run-time phase prediction for a reconfigurable VLIW processor. In: Proceeding Design, Automation and Test in Europe, Dresden, Germany, pp. 1634–1639, March 2016
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Brandon, A., Hoozemans, J., van Straten, J., Wong, S. (2017). Exploring ILP and TLP on a Polymorphic VLIW Processor. In: Knoop, J., Karl, W., Schulz, M., Inoue, K., Pionteck, T. (eds) Architecture of Computing Systems - ARCS 2017. ARCS 2017. Lecture Notes in Computer Science(), vol 10172. Springer, Cham. https://doi.org/10.1007/978-3-319-54999-6_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-54999-6_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-54998-9
Online ISBN: 978-3-319-54999-6
eBook Packages: Computer ScienceComputer Science (R0)