Abstract
Transactional Memory (TM) is an appealing abstraction for increasing productivity of programmers and making parallel programming accessible to a wide community of non-experts. In TM systems, conflict detection is an essential element in maintaining correctness of transactions. Hardware Transactional Memories (HTMs) rely on cache coherence protocols to detect and resolve conflicts. In HTMs, when a transactional write misses in a cache, it broadcasts a snoop request asking remote caches for sharing information. While this method detects conflicts at the earliest possible time it is not efficient in term of power. We found that a significant fraction of transactional snoops in cache coherence protocols are unnecessary and waste power of interconnect and caches. Furthermore, many transactional snoops occur in coarse regions of memory. In this work, we introduce Variable Granularity Transactional Snoop (VGTS) which dynamically changes snoop granularity for transactions. VGTS monitors transactions and dynamically matches snoop granularity to the transactions’ address patterns. Our simulation results reveal that VGTS is effective and reduces power of interconnect up to 44% and eliminates unnecessary cache snoops up to 43%.
Chapter PDF
Similar content being viewed by others
References
Herlihy, M., Moss, J.E.B.: Transactional memory: Architectural support for lock-free data structures. In: The Proceedings of the Twentieth Annual International Symposium on Computer Architecture (1993)
Moore, K.E., Bobba, J., Moravan, M.J., Hill, M.D., Wood, D.A.: LogTM: Log-based transactional memory. In: The Proceedings of HPCA, pp. 254–265 (2006)
Yen, L., Bobba, J., Marty, M.R., Moore, K.E., Volos, H., Hill, M.D., Swift, M.M., Wood, D.A.: LogTM-SE: Decoupling hardware transactional memory from caches. In: HPCA-13, pp. 261–272 (February 2007)
Gaona-RamĂrez, E., Gil, J.R.T., Fernández, J., Acacio, M.E.: Characterizing Energy Consumption in Hardware Transactional Memory Systems. In: The Proceedings of SBAC-PAD 2010, pp. 9–16 (2010)
Lotfi-Kamran, P., Ferdman, M., Crisan, D., Falsafi, B.: TurboTag: lookup filtering to reduce coherence directory power. In: The Proceedings of ISLPED, pp. 377–382 (2010)
Intel Corp. Intel Architecture Instruction Set Extensions Programming Reference, 319433-012a edition (February 2012)
Minh, C.C., Trautmann, M., Chung, J.W., McDonald, A., Bronson, N., Casper, J., Kozyrakis, C., Olukotun, K.: An Effective Hybrid Transactional Memory System with Strong Isolation Guarantees. In: The Proceedings of ISCA (June 2007)
Binkert, N., Dreslinski, R., Hsu, L., Lim, K., Saidi, A., Reinhardt, S.: The M5 simulator: Modeling networked systems. IEEE Micro 26(4), 52–60 (2006)
Kahng, A.B., Li, B., Peh, L., Samadi, K.: Orion 2.0: A fast and accurate NoC power and area model for early-stage design space exploration. In: The Proceedings of DATE (2009)
Culler, D.E., Singh, J., Gupta, A.: Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufman Publishers, San Francisco (1999)
Moshovos, A.: RegionScout: Exploiting Coarse Grain Sharing in Snoop-Based Coherence. In: The Proceedings of ISCA, Washington, DC, USA (2005)
Moshovos, A., Memik, G., Falsafi, B., Choudhary, A.: JETTY: Filtering Snoops for Reduced Energy Consumption in SMP Servers. In: The Proceedings of HPCA (2001)
Ballapuram, C.S., Sharif, A., Lee, H.S.: Exploiting access semantics and program behavior to reduce snoop power in chip multiprocessors. In: The Proceedings of ASPLOS (2008)
Dice, D., Shalev, O., Shavit, N.: Transactional Locking II. In: The Proceedings of the 20th International Symposium on Distributed Computing, pp. 194–208 (September 2006)
Chung, J., Yen, L., Diestelhorst, S., Pohlack, M., Hohmuth, M., Grossman, D., Christie, D.: ASF: AMD64 Extension for Lock-free Data Structures and Transactional Memory. In: Proceedings of MICRO, Atlanta, Ga (December 2010)
Muralimanohar, N., Balasubramonian, R., Jouppi, N.P.: CACTI 6.0: A Tool to Model Large Caches, Technical report, Hewlett Packard (2009)
Casper, H.C.J., Carlstrom, B.D., McDonald, A., Minh, C.C., Baek, W., Kozyrakis, C., Olukotun, K.: A scalable, non-blocking approach to transactional memory. In: HPCA-13, pp. 97–108 (February 2007)
Ferri, C., Wood, S., Moreshet, T., Bahar, R.I., Herlihy, M.: Energy and Throughput Efficient Transactional Memory for Embedded Multicore Systems. In: The Proceedings of HiPEAC 2010, Pisa, Italy, January 25-27 (2010)
Ferri, C., Viescas, A., Moreshet, T., Bahar, R.I., Herlihy, M.: Energy Implications of Transactional Memory for Embedded Architectures. In: Workshop on Exploiting Parallelism with Transactional Memory and other Hardware Assisted Methods, EPHAM 2008 (April 2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Atoofian, E. (2013). VGTS: Variable Granularity Transactional Snoop. In: Wolf, F., Mohr, B., an Mey, D. (eds) Euro-Par 2013 Parallel Processing. Euro-Par 2013. Lecture Notes in Computer Science, vol 8097. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40047-6_22
Download citation
DOI: https://doi.org/10.1007/978-3-642-40047-6_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-40046-9
Online ISBN: 978-3-642-40047-6
eBook Packages: Computer ScienceComputer Science (R0)