{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,8]],"date-time":"2024-09-08T17:01:11Z","timestamp":1725814871445},"publisher-location":"Cham","reference-count":50,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319147192"},{"type":"electronic","value":"9783319147208"}],"license":[{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"DOI":"10.1007\/978-3-319-14720-8_20","type":"book-chapter","created":{"date-parts":[[2014,12,29]],"date-time":"2014-12-29T14:26:01Z","timestamp":1419863161000},"page":"449-467","source":"Crossref","is-referenced-by-count":2,"title":["Case Study: Using Transactions in Memcached"],"prefix":"10.1007","author":[{"given":"Michael","family":"Spear","sequence":"first","affiliation":[]},{"given":"Wenjia","family":"Ruan","sequence":"additional","affiliation":[]},{"given":"Yujie","family":"Liu","sequence":"additional","affiliation":[]},{"given":"Trilok","family":"Vyas","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"20_CR1","unstructured":"Adl-Tabatabai, A.R., Luchangco, V., Marathe, V.J., Moir, M., Narayanaswamy, R., Ni, Y., Nussbaum, D., Tian, X., Welc, A., Wu, P.: Exceptions and Transactions in C++. In: Proceedings of the First USENIX Workshop on Hot Topics in Parallelism, Berkeley, CA (March 2009)"},{"key":"20_CR2","unstructured":"Adl-Tabatabai, A.R., Shpeisman, T., Gottschlich, J.: Draft Specification of Transactional Language Constructs for C++, version 1.1 (February 2012), http:\/\/justingottschlich.com\/tm-specification-for-c-v-1-1\/"},{"key":"20_CR3","unstructured":"Adl-Tabatabai, A.R.: Shpeisman (Eds.), T.: Draft Specification of Transactional Language Constructs for C++, version 1.0 (August 2009), http:\/\/software.intel.com\/file\/21569"},{"key":"20_CR4","doi-asserted-by":"crossref","unstructured":"Afek, Y., Drepper, U., Felber, P., Fetzer, C., Gramoli, V., Hohmuth, M., Riviere, E., Stenstrom, P., Unsal, O., Maldonado, W., Harmanci, D., Marlier, P., Diestelhorst, S., Pohlack, M., Cristal, A., Hur, I., Dragojevic, A., Guerraoui, R., Kapalka, M., Tomic, S., Korland, G., Shavit, N., Nowack, M., Riegel, T.: The velox transactional memory stack. In: Proceedings of the 43rd IEEE\/ACM International Symposium on Microarchitecture, Atlanta, GA (December 2010)","DOI":"10.1109\/MM.2010.80"},{"key":"20_CR5","doi-asserted-by":"crossref","unstructured":"Ansari, M., Kotselidis, C., Jarvis, K., Lujan, M., Kirkham, C., Watson, I.: Lee-TM: A Non-trivial Benchmark for Transactional Memory. In: Proceedings of the International Conference on Algorithms and Architectures for Parallel Processing, Ayia Napa, Cyprus (June 2008)","DOI":"10.1007\/978-3-540-69501-1_21"},{"key":"20_CR6","doi-asserted-by":"crossref","unstructured":"Attiya, H., Epstein, L., Shachnai, H., Tamir, T.: Transactional contention management as a non-clairvoyant scheduling problem. In: Proceedings of the 25th ACM Symposium on Principles of Distributed Computing, Denver, CO (August 2006)","DOI":"10.1145\/1146381.1146428"},{"key":"20_CR7","doi-asserted-by":"crossref","unstructured":"Carlstrom, B.D., McDonald, A., Chafi, H., Chung, J., Minh, C.C., Kozyrakis, C., Olukotun, K.: The Atomos Transactional Programming Language. In: Proceedings of the 27th ACM Conference on Programming Language Design and Implementation, Ottawa, ON (June 2006)","DOI":"10.1145\/1133981.1133983"},{"key":"20_CR8","doi-asserted-by":"crossref","unstructured":"Charles, P., Donawa, C., Ebcioglu, K., Grothoff, C., Kielstra, A., von Praun, C., Saraswat, V., Sarkar, V.: X10: An Object-Oriented Approach to Non-Uniform Cluster Computing. In: Proceedings of the 20th ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, San Diego, CA (October 2005)","DOI":"10.1145\/1094811.1094852"},{"key":"20_CR9","doi-asserted-by":"crossref","unstructured":"Dalessandro, L., Spear, M., Scott, M.L.: NOrec: Streamlining STM by Abolishing Ownership Records. In: Proceedings of the 15th ACM Symposium on Principles and Practice of Parallel Programming, Bangalore, India (January 2010)","DOI":"10.1145\/1693453.1693464"},{"key":"20_CR10","doi-asserted-by":"crossref","unstructured":"Dice, D., Shavit, N.: TLRW: Return of the Read-Write Lock. In: Proceedings of the 22nd ACM Symposium on Parallelism in Algorithms and Architectures, Santorini, Greece (June 2010)","DOI":"10.1145\/1810479.1810531"},{"key":"20_CR11","doi-asserted-by":"crossref","unstructured":"Dragojevic, A., Herlihy, M., Lev, Y., Moir, M.: On The Power of Hardware Transactional Memory to Simplify Memory Management. In: Proceedings of the 30th ACM Symposium on Principles of Distributed Computing, San Jose, CA (June 2011)","DOI":"10.1145\/1993806.1993821"},{"key":"20_CR12","doi-asserted-by":"crossref","unstructured":"Dragojevic, A., Ni, Y., Adl-Tabatabai, A.R.: Optimizing Transactions for Captured Memory. In: Proceedings of the 21st ACM Symposium on Parallelism in Algorithms and Architectures, Calgary, AB, Canada (August 2009)","DOI":"10.1145\/1583991.1584049"},{"key":"20_CR13","unstructured":"Dudnik, P., Swift, M.M.: Condition Variables and Transactional Memory: Problem or Opportunity? In: Proceedings of the 4th ACM SIGPLAN Workshop on Transactional Computing, Raleigh, NC (February 2009)"},{"key":"20_CR14","doi-asserted-by":"crossref","unstructured":"Felber, P., Fetzer, C., Riegel, T.: Dynamic Performance Tuning of Word-Based Software Transactional Memory. In: Proceedings of the 13th ACM Symposium on Principles and Practice of Parallel Programming, Salt Lake City, UT (February 2008)","DOI":"10.1145\/1345206.1345241"},{"key":"20_CR15","doi-asserted-by":"crossref","unstructured":"Fich, F.E., Luchangco, V., Moir, M., Shavit, N.: Obstruction-free Algorithms Can Be Practically Wait-free. In: Proceedings of the 19th International Symposium on Distributed Computing, Cracow, Poland (September 2005)","DOI":"10.1007\/11561927_8"},{"key":"20_CR16","doi-asserted-by":"crossref","unstructured":"Guerraoui, R., Kapalka, M.: On the Correctness of Transactional Memory. In: Proceedings of the 13th ACM Symposium on Principles and Practice of Parallel Programming, Salt Lake City, UT (February 2008)","DOI":"10.1145\/1345206.1345233"},{"key":"20_CR17","doi-asserted-by":"crossref","unstructured":"Guerraoui, R., Kapalka, M., Vitek, J.: STMBench7: A Benchmark for Software Transactional Memory. In: Proceedings of the EuroSys 2007 Conference, Lisbon, Portugal (March 2007)","DOI":"10.1145\/1272996.1273029"},{"key":"20_CR18","doi-asserted-by":"crossref","unstructured":"Harris, T., Marlow, S., Peyton Jones, S., Herlihy, M.: Composable Memory Transactions. In: Proceedings of the 10th ACM Symposium on Principles and Practice of Parallel Programming, Chicago, IL (June 2005)","DOI":"10.1145\/1065944.1065952"},{"key":"20_CR19","doi-asserted-by":"crossref","unstructured":"Herlihy, M.P., Luchangco, V., Moir, M., Scherer III, W.N.: Software Transactional Memory for Dynamic-sized Data Structures. In: Proceedings of the 22nd ACM Symposium on Principles of Distributed Computing, Boston, MA (July 2003)","DOI":"10.1145\/872035.872048"},{"key":"20_CR20","doi-asserted-by":"crossref","unstructured":"Hong, S., Oguntebi, T., Casper, J., Bronson, N., Kozyrakis, C., Olukotun, K.: Eigenbench: A Simple Exploration Tool for Orthogonal TM Characteristics. In: Proceedings of the IEEE International Symposium on Workload Characterization, Atlanta, GA (December 2010)","DOI":"10.1109\/IISWC.2010.5648812"},{"key":"20_CR21","unstructured":"Kestor, G., Stipic, S., Unsal, O., Cristal, A., Valero, M.: RMS-TM: A Transactional Memory Benchmark for Recognition, Mining and Synthesis Applications. In: Proceedings of the 4th ACM SIGPLAN Workshop on Transactional Computing, Raleigh, NC (February 2009)"},{"key":"20_CR22","unstructured":"Liu, Y., Spear, M.: Toxic Transactions. In: Proceedings of the 6th ACM SIGPLAN Workshop on Transactional Computing, San Jose, CA (June 2011)"},{"key":"20_CR23","doi-asserted-by":"crossref","unstructured":"Luchangco, V., Marathe, V.: Transaction Communicators: Enabling Cooperation Among Concurrent Transactions. In: Proceedings of the 16th ACM Symposium on Principles and Practice of Parallel Programming, San Antonio, TX (February 2011)","DOI":"10.1145\/1941553.1941578"},{"key":"20_CR24","doi-asserted-by":"crossref","unstructured":"Lupei, D., Simion, B., Pinto, D., Misler, M., Burcea, M., Krick, W., Amza, C.: Transactional Memory Support for Scalable and Transparent Parallelization of Multiplayer Games. In: Proceedings of the EuroSys2010 Conference, Paris, France (April 2010)","DOI":"10.1145\/1755913.1755919"},{"key":"20_CR25","unstructured":"Mathewson, N., Provos, N.: Libevent \u2013 An Event Notification Library (2011\u20132013), http:\/\/libevent.org\/"},{"key":"20_CR26","doi-asserted-by":"crossref","unstructured":"McKenney, P.E., Michael, M.M., Walpole, J.: Why The Grass Not Be Greener On The Other Side: A Comparison of Locking vs. Transactional Memory. In: Proceedings of the 4th ACM SIGOPS Workshop on Programming Languages and Operating Systems, Stevenson, WA (October 2007)","DOI":"10.1145\/1376789.1376798"},{"key":"20_CR27","doi-asserted-by":"crossref","unstructured":"Menon, V., Balensiefer, S., Shpeisman, T., Adl-Tabatabai, A.R., Hudson, R., Saha, B., Welc, A.: Practical Weak-Atomicity Semantics for Java STM. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378588"},{"key":"20_CR28","unstructured":"Miletic, N., Smiljkovic, V., Perfumo, C., Harris, T., Cristal, A., Hur, I., Unsal, O., Valero, M.: Transactification of a Real-World System Library. In: Proceedings of the 5th ACM SIGPLAN Workshop on Transactional Computing, Paris, France (April 2010)"},{"key":"20_CR29","unstructured":"Minh, C.C., Chung, J., Kozyrakis, C., Olukotun, K.: STAMP: Stanford Transactional Applications for Multi-processing. In: Proceedings of the IEEE International Symposium on Workload Characterization, Seattle, WA (September 2008)"},{"key":"20_CR30","doi-asserted-by":"crossref","unstructured":"Moravan, M., Bobba, J., Moore, K., Yen, L., Hill, M., Liblit, B., Swift, M., Wood, D.: Supporting Nested Transactional Memory in LogTM. In: Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems, San Jose, CA (October 2006)","DOI":"10.1145\/1168857.1168902"},{"key":"20_CR31","doi-asserted-by":"crossref","unstructured":"Ni, Y., Welc, A., Adl-Tabatabai, A.R., Bach, M., Berkowits, S., Cownie, J., Geva, R., Kozhukow, S., Narayanaswamy, R., Olivier, J., Preis, S., Saha, B., Tal, A., Tian, X.: Design and Implementation of Transactional Constructs for C\/C++. In: Proceedings of the 23rd ACM Conference on Object Oriented Programming, Systems, Languages, and Applications, Nashville, TN (October 2008)","DOI":"10.1145\/1449764.1449780"},{"key":"20_CR32","doi-asserted-by":"crossref","unstructured":"Pankratius, V., Adl-Tabatabai, A.R.: A Study of Transactional Memory vs. Locks in Practice. In: Proceedings of the 23rd ACM Symposium on Parallelism in Algorithms and Architectures, San Jose, CA (June 2011)","DOI":"10.1145\/1989493.1989500"},{"key":"20_CR33","unstructured":"Poettering, L.: Measuring Lock Contention (2009\u20132013), http:\/\/0pointer.de\/blog\/projects\/mutrace.html"},{"key":"20_CR34","unstructured":"Pohlack, M., Diestelhorst, S.: From Lightweight Hardware Transactional Memory to Lightweight Lock Elision. In: Proceedings of the 6th ACM SIGPLAN Workshop on Transactional Computing, San Jose, CA (June 2011)"},{"key":"20_CR35","doi-asserted-by":"crossref","unstructured":"Riegel, T., Fetzer, C., Felber, P.: Automatic Data Partitioning in Software Transactional Memories. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378562"},{"key":"20_CR36","doi-asserted-by":"crossref","unstructured":"Rossbach, C., Hofmann, O., Witchel, E.: Is Transactional Programming Really Easier? In: Proceedings of the 15th ACM Symposium on Principles and Practice of Parallel Programming, Bangalore, India (January 2010)","DOI":"10.1145\/1693453.1693462"},{"key":"20_CR37","doi-asserted-by":"crossref","unstructured":"Ruan, W., Vyas, T., Liu, Y., Spear, M.: Transactionalizing Legacy Code: An Experience Report Using GCC and Memcached. In: Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems, Salt Lake City, UT (March 2014)","DOI":"10.1145\/2541940.2541960"},{"key":"20_CR38","doi-asserted-by":"crossref","unstructured":"Saha, B., Adl-Tabatabai, A.R., Hudson, R.L., Minh, C.C., Hertzberg, B.: McRT-STM: A High Performance Software Transactional Memory System For A Multi-Core Runtime. In: Proceedings of the 11th ACM Symposium on Principles and Practice of Parallel Programming, New York, NY (March 2006)","DOI":"10.1145\/1122971.1123001"},{"key":"20_CR39","doi-asserted-by":"crossref","unstructured":"Scherer III, W.N., Scott, M.L.: Advanced Contention Management for Dynamic Software Transactional Memory. In: Proceedings of the 24th ACM Symposium on Principles of Distributed Computing, Las Vegas, NV (July 2005)","DOI":"10.1145\/1073814.1073861"},{"key":"20_CR40","doi-asserted-by":"crossref","unstructured":"Spear, M.: Lightweight, Robust Adaptivity for Software Transactional Memory. In: Proceedings of the 22nd ACM Symposium on Parallelism in Algorithms and Architectures, Santorini, Greece (June 2010)","DOI":"10.1145\/1810479.1810530"},{"key":"20_CR41","doi-asserted-by":"crossref","unstructured":"Spear, M., Dalessandro, L., Marathe, V.J., Scott, M.L.: A Comprehensive Strategy for Contention Management in Software Transactional Memory. In: Proceedings of the 14th ACM Symposium on Principles and Practice of Parallel Programming, Raleigh, NC (February 2009)","DOI":"10.1145\/1594835.1504199"},{"key":"20_CR42","doi-asserted-by":"crossref","unstructured":"Spear, M., Marathe, V., Dalessandro, L., Scott, M.: Privatization Techniques for Software Transactional Memory (POSTER). In: Proceedings of the 26th ACM Symposium on Principles of Distributed Computing, Portland, OR (August 2007)","DOI":"10.1145\/1281100.1281161"},{"key":"20_CR43","doi-asserted-by":"crossref","unstructured":"Spear, M., Michael, M.M., von Praun, C.: RingSTM: Scalable Transactions with a Single Atomic Instruction. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378583"},{"key":"20_CR44","doi-asserted-by":"crossref","unstructured":"Spear, M., Silverman, M., Dalessandro, L., Michael, M.M., Scott, M.L.: Implementing and Exploiting Inevitability in Software Transactional Memory. In: Proceedings of the 37th International Conference on Parallel Processing, Portland, OR (September 2008)","DOI":"10.1109\/ICPP.2008.55"},{"key":"20_CR45","doi-asserted-by":"crossref","unstructured":"Wang, C., Liu, Y., Spear, M.: Transaction-Friendly Condition Variables. In: Proceedings of the 26th ACM Symposium on Parallelism in Algorithms and Architectures, Prague, Czech Republic (June 2014)","DOI":"10.1145\/2612669.2612681"},{"key":"20_CR46","doi-asserted-by":"crossref","unstructured":"Welc, A., Saha, B., Adl-Tabatabai, A.R.: Irrevocable Transactions and their Applications. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378584"},{"key":"20_CR47","doi-asserted-by":"crossref","unstructured":"Yoo, R., Hughes, C., Lai, K., Rajwar, R.: Performance Evaluation of Intel Transactional Synchronization Extensions for High Performance Computing. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, Denver, CO (November 2013)","DOI":"10.1145\/2503210.2503232"},{"key":"20_CR48","doi-asserted-by":"crossref","unstructured":"Yoo, R., Lee, H.H.: Adaptive Transaction Scheduling for Transactional Memory Systems. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378564"},{"key":"20_CR49","doi-asserted-by":"crossref","unstructured":"Yoo, R., Ni, Y., Welc, A., Saha, B., Adl-Tabatabai, A.R., Lee, H.H.: Kicking the Tires of Software Transactional Memory: Why the Going Gets Tough. In: Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures, Munich, Germany (June 2008)","DOI":"10.1145\/1378533.1378582"},{"key":"20_CR50","doi-asserted-by":"crossref","unstructured":"Zyulkyarov, F., Gajinov, V., Unsal, O., Cristal, A., Ayguade, E., Harris, T., Valero, M.: Atomic Quake: Using Transactional Memory in an Interactive Multiplayer Game Server. In: Proceedings of the 14th ACM Symposium on Principles and Practice of Parallel Programming, Raleigh, NC (February 2009)","DOI":"10.1145\/1594835.1504183"}],"container-title":["Lecture Notes in Computer Science","Transactional Memory. Foundations, Algorithms, Tools, and Applications"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-14720-8_20","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,8,19]],"date-time":"2019-08-19T02:04:01Z","timestamp":1566180241000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-14720-8_20"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"ISBN":["9783319147192","9783319147208"],"references-count":50,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-14720-8_20","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2015]]}}}