https://www.realworldtech.com/forum/?threadid=201184&curpostid=201369 Real World Tech * Login * Cloud * Mobile * Graphics * Chips * Software * * CPUs * GPUs * Semiconductors * Strategy * Forums * [facebook][twitter][big_rss] Transactional memory similarity to garbage collection By: Paul A. Clayton (paaronclayton.delete@this.gmail.com), April 5, 2021 1:53 pm Room: Moderated Discussions [I am posting this here since it applies to the thread more generally.] The posts here about hardware transactional memory seem reminiscent of discussions about garbage collection. As GC may be defined as simply automated memory management or a more specific mark-and-sweep (not reference counting, not compiler scope tracking, etc.) style of automated memory management, so HTM is ranging from the broad atomic memory operations exploiting optimistic concurrency to particularly combinations of software uses and hardware support. As GC arguments often focus on correctness, programming ease, and performance without an agreement about their relative importance -- which will vary by programming context -- so posters here seem to talk past each other about these aspects. Not agreeing on definitions and intent not only facilitates miscommunication between persons but miscommunication within a person (imprecise conceptualization fosters creativity and miscommunication both internally and externally). As GC was often presented as a panacea for memory management errors and programming difficulty, so HTM has often been presented as a cure-all for scalability with limited programmer effort and skill. As GC has often been depised by C-oriented programmers as removing control and ruining performance, so HTM seems to be dismissed as useless from the perpective of more manually-tuned cases. I am excessively optimistic about HTM -- a consequence of my love of the new and theoretical orientation -- but I think some posters are probably a little overly pessimistic in part because practical orientations ("what can I benefit from now") and emphasis on skilled programmers. (Being repeatedly disappointed by something that seemed promising also does not promote optimism.) A scientific perspective would love this conflict between theory and actuality; such often opens interesting research opportunities. Some of the conflict is somewhat well-known (e.g., software performance counters were mentioned as a difficulty for Azul Systems HTM), but even there the knowledge seems not to have been adopted into best current practices and a strategy for future development. (Transaction escaping operations have been proposed for logging and such, but even there the engineering seems immature.) Some of the slowness of advancing the state of the art seems to come from weak measurement tools; real world measurement for multithreaded programming is complex and optimistic concurrency increases the complexity. Some seems to come from lack of communication (sadly, "la la la la la -- I don't hear you" exists and talking past each other can be mistaken for such); researchers may be ignorant of the nature, scale, or scope of real world issues and practioners may not be positioned (means, motive, and opportunity) to communicate with researchers both expressing concerns and receiving information. I have some thoughts on HTM, as architecture and microarchitecture, and how such might be integrated into a system design exploiting speculation/"as if" operation, but my thoughts are not well-formed and the topic is complex and extensive. < Previous Post in Thread Next Post in Thread > Topic Posted By Date 2021/ Armv9 officially announced Jon Masters 03/30 11:41 AM 2021/ Armv9 officially announced Gabriele Svelto 03/30 01:27 PM 2021/ HTM and TLE Foo_ 03/30 01:31 PM 2021/ HTM and TLE dmcq 03/30 03:03 PM 2021/ Intel RTM and HLE is a success Ganon 03/30 05:22 PM 2021/ Intel RTM and HLE is a success (is it?) Foo_ 03/31 01:16 AM 2021/ Intel RTM and HLE was an abject failure anonymou5 03/31 03:04 AM 2021/ Intel RTM and HLE is a success (is it?) Andrey 03/31 05:27 AM 2021/ Intel RTM and HLE is a success (is it?) Foo_ 03/31 05:58 AM 2021/ Intel RTM and HLE is a success (is it?) Andrey 03/31 07:45 AM 2021/ Intel RTM and HLE is a success (is it?) Foo_ 03/31 09:32 AM 2021/ Intel RTM and HLE is a success (is it?) Andrey 03/31 09:57 AM 2021/ Intel RTM and HLE is a success (is it?) anonymou5 03/31 10:39 AM 2021/ ^ feel free to delete this one -- broken anonymou5 03/31 HTML there (NT) 10:40 AM 2021/ Intel RTM and HLE is a success (is it?) Andrey 03/31 10:47 AM 2021/ Intel RTM and HLE is a success (is it?) anonymou5 03/31 10:40 AM 2021/ Intel RTM and HLE is a success (is it?) Ganon 03/31 09:58 AM 2021/ Intel RTM and HLE is a success (is it?) anonymou5 03/31 10:42 AM 2021/ Intel RTM and HLE is a success (is it?) Linus Torvalds 03/31 11:54 AM 2021/ Intel RTM and HLE is a success (is it?) Linus Torvalds 03/31 12:00 PM 2021/ Any idea about IBM? Mark Roulo 03/31 12:15 PM 2021/ Any idea about IBM? Linus Torvalds 03/31 12:37 PM 2021/ Any idea about IBM? dmcq 03/31 03:04 PM 2021/ Any idea about IBM? Linus Torvalds 03/31 04:44 PM 2021/ A non straw man view of hardware Ganon 03/31 transactional memory 07:52 PM 2021/ A non straw man view of anon2 03/31 hardware transactional memory 11:03 PM 2021/ A non straw man view of Carson 04/02 hardware transactional memory 01:11 AM 2021/ A non straw man view of anon2 04/02 hardware transactional memory 05:28 AM 2021/ IBM zArch TM - guaranteed David Kanter 03/31 progress 08:37 PM 2021/ Any idea about IBM? Andrey 03/31 11:31 PM 2021/ Any idea about IBM? Linus Torvalds 04/01 10:54 AM 2021/ Any idea about IBM? Andrey 04/02 12:50 PM 2021/ Any idea about IBM? someone 04/01 12:02 AM 2021/ Intel RTM and HLE is a success (is it?) anon2 03/31 03:46 PM 2021/ Intel RTM and HLE is a success (is it?) Linus Torvalds 03/31 05:08 PM 2021/ Leaving it to software is tricky! David Kanter 03/31 08:41 PM 2021/ And a hardware predicttor needs Carson 04/01 access to fallback timing 11:13 PM 2021/ Hardware fallback path Anon 04/02 10:51 AM 2021/ And a hardware predicttor needs Linus Torvalds 04/03 access to fallback timing 10:41 AM 2021/ And a hardware predicttor needs Linus Torvalds 04/03 access to fallback timing 11:11 AM 2021/ And a hardware predicttor sr 04/03 needs access to fallback timing 11:30 AM 2021/ And a hardware predicttor Linus Torvalds 04/03 needs access to fallback timing 12:14 PM 2021/ And a hardware predicttor sr 04/03 needs access to fallback timing 12:39 PM 2021/ And a hardware Anon 04/03 predicttor needs access to fallback timing 02:08 PM 2021/ And a hardware sr 04/03 predicttor needs access to fallback timing 02:33 PM 2021/ And a hardware dmcq 04/04 predicttor needs access to fallback timing 05:35 AM 2021/ And a hardware Linus Torvalds 04/03 predicttor needs access to fallback timing 02:22 PM 2021/ Transactional memory sr 04/04 isn't exclusive to locking 12:17 AM 2021/ Transactional Aspect of 04/04 memory isn't exclusive to locking Anonimity 03:49 AM 2021/ Transactional Andrey 04/04 memory isn't exclusive to locking 04:58 AM 2021/ Transactional sr 04/04 memory isn't exclusive to locking 10:10 AM 2021/ Transactional Andrey 04/04 memory isn't exclusive to locking 10:33 AM 2021/ Transactional sr 04/05 memory isn't exclusive to locking 02:41 AM 2021/ And a hardware predicttor GeertB 04/04 needs access to fallback timing 07:08 PM 2021/ Leaving it to software is tricky! Andrey 04/02 03:00 PM 2021/ Intel RTM and HLE is a success (is @never_released 04/01 it?) 08:21 AM 2021/ Intel RTM and HLE is a success (is @never_released 04/01 it?) 08:30 AM 2021/ Intel RTM and HLE is a success (is Linus Torvalds 04/01 it?) 10:00 AM 2021/ Intel RTM and HLE is a success dmcq 04/01 (is it?) 10:35 AM 2021/ Intel RTM and HLE is a success Linus Torvalds 04/01 (is it?) 10:59 AM 2021/ Is HTM actually in ARMv9? dncq 04/01 11:26 AM 2021/ Is HTM actually in ARMv9? Linus Torvalds 04/01 12:13 PM 2021/ Intel RTM and HLE is a success Jorn Engel 04/01 (is it?) 09:15 PM 2021/ Intel RTM and HLE is a success (is --- 04/02 it?) 10:00 AM 2021/ Intel RTM and HLE is a success (is it?) Jon Masters 04/01 10:56 AM 2021/ Rock Michael S 04/01 12:29 PM 2021/ Intel RTM and HLE is a success (is it?) Linus Torvalds 03/31 11:50 AM 2021/ Intel RTM and HLE is a success (is it?) anon2 03/31 03:57 PM 2021/ Intel RTM and HLE is a success (is it?) anon3 03/31 04:09 PM 2021/ Intel RTM and HLE is a success (is it?) someone 03/31 11:56 PM 2021/ Intel RTM and HLE is a success (is it?) someone 04/01 12:21 AM 2021/ Intel RTM and HLE is a success (is it?) none 04/01 04:31 AM 2021/ Intel RTM and HLE is a success (is it?) anonymou5 04/01 09:24 AM 2021/ Intel RTM and HLE is a success (is it?) anony 04/01 10:26 AM 2021/ Intel RTM and HLE is a success (is it?) none 04/01 11:20 AM 2021/ Intel RTM and HLE is a success (is it?) Brendan 04/01 05:23 PM 2021/ Intel RTM and HLE is a success (is it?) Adrian 04/02 01:03 AM 2021/ Transactional memory similarity to garbage collection Paul A. Clayton 04/05 01:53 PM 2021/ Maybe not Mark Roulo 04/05 03:07 PM 2021/ Transactional memory similarity to garbage collection Anon 04/05 03:14 PM 2021/ No conflict between theory and practice Aspect of 04/05 Anonimity 07:57 PM 2021/ No conflict between theory and practice NoSpammer 04/05 09:38 PM 2021/ No conflict between theory and practice dmcq 04/06 07:05 AM 2021/ No conflict between theory and practice sr 04/06 09:22 AM 2021/ No conflict between theory and practice Ben LaHaise 04/06 03:43 PM 2021/ No conflict between theory and practice sr 04/07 09:42 AM 2021/ No conflict between theory and practice Anon 04/07 10:06 AM 2021/ No conflict between theory and practice Linus Torvalds 04/07 10:35 AM 2021/ No conflict between theory and practice sr 04/07 12:34 PM 2021/ If HTM were well implemented, nobody Anon 04/07 would complain (NT) 12:54 PM 2021/ If HTM were well implemented, nobody dmcq 04/07 would complain 03:36 PM 2021/ If HTM were well implemented, Anon 04/07 nobody would complain 04:04 PM 2021/ If HTM were well implemented, nobody --- 04/08 would complain 09:37 AM 2021/ No conflict between theory and practice Linus Torvalds 04/07 01:20 PM 2021/ No conflict between theory and Andrey 04/07 practice 02:32 PM 2021/ No conflict between theory and dmcq 04/07 practice 03:32 PM 2021/ No conflict between theory and anonymou5 04/07 practice 04:26 PM 2021/ No conflict between theory and Andrey 04/07 practice 05:54 PM 2021/ No conflict between theory and Linus Torvalds 04/08 practice 08:41 AM 2021/ No conflict between theory Andrey 04/08 and practice 09:12 AM 2021/ No conflict between theory Robert Williams 04/08 and practice 09:15 AM 2021/ No conflict between theory Linus Torvalds 04/08 and practice 09:56 AM 2021/ No conflict between Robert Williams 04/08 theory and practice 07:50 PM 2021/ No conflict between Linus Torvalds 04/09 theory and practice 09:25 AM 2021/ TSX for all? Robert Williams 04/09 12:46 PM 2021/ It helps adoption Mark Roulo 04/09 when developers can run the code an their machines. 12:54 PM 2021/ It helps adoption me 04/09 when developers can run the code an their machines. 02:21 PM 2021/ It helps Andrey 04/10 adoption when developers can run the code an their machines. 07:08 AM 2021/ It helps me 04/10 adoption when developers can run the code an their machines. 12:43 PM 2021/ It helps Robert Williams 04/10 adoption when developers can run the code an their machines. 07:05 PM 2021/ It helps Andrey 04/11 adoption when developers can run the code an their machines. 01:42 AM It 2021/ helps adoption when developers can run the code an their Michael S 04/11 machines. 04:23 AM 2021/ It helps adoption Robert Williams 04/10 when developers can run the code an their machines. 08:24 AM 2021/ It helps Andrey 04/10 adoption when developers can run the code an their machines. 10:36 AM 2021/ It helps Michael S 04/10 adoption when developers can run the code an their machines. 10:58 AM 2021/ It helps Robert Williams 04/10 adoption when developers can run the code an their machines. 11:42 AM 2021/ It helps Brendan 04/10 adoption when developers can run the code an their machines. 11:27 PM 2021/ It helps Michael S 04/11 adoption when developers can run the code an their machines. 03:34 AM It 2021/ helps adoption when developers can run the code an their Brendan 04/11 machines. 04:18 PM 2021/ TSX for all? wumpus 04/09 01:10 PM 2021/ TSX for all? Linus Torvalds 04/09 03:03 PM 2021/ [CLICK BAIT?] anonymous2 04/09 Torvalds to recommend arm64! 03:17 PM 2021/ TSX for all? Linus Torvalds 04/09 03:22 PM 2021/ amen! (NT) anonymou5 04/09 05:42 PM 2021/ TSX for all? Emil Briggs 04/10 05:52 AM 2021/ TSX for all? Michael S 04/10 11:13 AM 2021/ TSX for all? Brendan 04/10 11:05 PM 2021/ No conflict between anonymouse 04/09 theory and practice 03:02 PM 2021/ No conflict between theory and Linus Torvalds 04/07 practice 05:12 PM 2021/ No conflict between theory and Andrey 04/07 practice 05:33 PM 2021/ No conflict between theory and anon2 04/07 practice 08:12 PM 2021/ No conflict between theory Andrey 04/08 and practice 12:29 AM 2021/ No conflict between theory Anon 04/08 and practice 12:50 AM 2021/ No conflict between theory anon2 04/08 and practice 12:52 AM 2021/ No conflict between Andrey 04/08 theory and practice 02:41 AM 2021/ No conflict between Adrian 04/08 theory and practice 03:09 AM 2021/ No conflict between Andrey 04/08 theory and practice 03:50 AM 2021/ No conflict between Adrian 04/08 theory and practice 05:07 AM 2021/ No conflict between anon2 04/08 theory and practice 05:18 AM 2021/ No conflict Andrey 04/08 between theory and practice 08:18 AM 2021/ No conflict anon2 04/08 between theory and practice 09:11 AM 2021/ No conflict Andrey 04/08 between theory and practice 09:48 AM 2021/ No conflict anon2 04/08 between theory and practice 04:10 PM 2021/ No conflict between --- 04/08 theory and practice 08:30 PM 2021/ No conflict dmcq 04/09 between theory and practice 02:25 AM 2021/ No conflict Linus Torvalds 04/09 between theory and practice 09:44 AM 2021/ No conflict between anon2 04/08 theory and practice 04:09 AM 2021/ No conflict between sr 04/10 theory and practice 01:22 AM 2021/ No conflict between Anon 04/10 theory and practice 04:00 AM 2021/ No conflict Etienne Lorrain 04/12 between theory and practice 12:56 AM 2021/ No conflict Anon 04/12 between theory and practice 01:54 AM 2021/ No conflict dmcq 04/12 between theory and practice 01:44 PM 2021/ No conflict between theory and Gabriele Svelto 04/08 practice 01:03 AM 2021/ No conflict between theory and dmcq 04/12 practice 01:53 PM 2021/ No conflict between theory dmcq 04/14 and practice 04:50 AM 2021/ transactional memory = memory lock/unlock sr 04/10 12:56 AM 2021/ transactional memory = memory lock/ Anon 04/10 unlock 04:05 AM 2021/ No conflict between theory and practice anon2 04/07 05:19 PM 2021/ No conflict between theory and practice dmcq 04/07 01:16 PM 2021/ No conflict between theory and practice Anon 04/06 10:46 AM 2021/ No conflict between theory and practice Aspect of 04/06 Anonimity 02:16 PM 2021/ No conflict between theory and practice NoSpammer 04/10 12:02 AM 2021/ No conflict between theory and practice sr 04/10 01:47 AM 2021/ No conflict between theory and practice Aspect of 04/10 Anonimity 11:30 PM 2021/ No conflict between theory and practice Andrey 04/11 05:05 AM 2021/ Hm Aspect of 04/12 Anonimity 07:29 PM 2021/ Special internal SRAM to store Mutex? Etienne Lorrain 04/13 01:01 AM 2021/ Special internal SRAM to store Mutex? Anon 04/13 01:26 AM 2021/ Special internal SRAM to store Mutex? Linus Torvalds 04/13 09:53 AM 2021/ Special internal SRAM to store Mutex? Dan Fay 04/13 12:03 PM 2021/ Special internal SRAM to store Mutex? Ben LaHaise 04/13 03:32 PM 2021/ Special internal SRAM to store Mutex? Gabriele Svelto 04/13 11:43 PM 2021/ Special internal SRAM to store Mutex? Carson 04/13 10:19 PM 2021/ No conflict between theory and practice sr 04/06 07:12 AM 2021/ No conflict between theory and practice Anon 04/06 10:43 AM 2021/ No conflict between theory and practice Aspect of 04/06 Anonimity 03:20 PM 2021/ No conflict between theory and practice sr 04/07 10:09 AM 2021/ No conflict between theory and practice anon2 04/07 08:53 PM 2021/ Armv9 officially announced dmcq 03/30 03:28 PM 2021/ Totally backwads logic on compatibility Heikki Kultala 03/30 03:44 PM 2021/ Totally backwads logic on compatibility Doug S 03/31 12:09 PM 2021/ Totally backwads logic on compatibility dmcq 03/31 03:15 PM 2021/ Armv9 officially announced v9 04/12 03:57 PM 2021/ Armv9 officially announced j 04/13 05:07 AM 2021/ Armv9 officially announced Doug S 04/13 10:21 AM 2021/ Armv9 officially announced anonymou5 04/13 11:06 AM 2021/ Armv9 officially announced Doug S 04/13 01:01 PM 2021/ Armv9 officially announced dmcq 04/13 03:20 PM Reply to this Topic Name: [ ] Email: [ ] Topic: [Transactional memory] [ ]No Text [Paul A. Clayton (paaronclayton.delete@th] [> [I am posting this here since it appli] [> ] [> The posts here about hardware transact] [> As GC may be defined as simply automat] [> counting, not compiler scope tracking,] [> from the broad atomic memory operation] [> of software uses and hardware support.] [> and performance without an agreement a] Body: [> context -- so posters here seem to talk] [> ] [> Not agreeing on definitions and intent] [> persons but miscommunication within a ] [> creativity and miscommunicati] [> ] [> As GC was often presented as a panacea] [> HTM has often been presented as a cure] [> As GC has often been depised by C-orie] [> so HTM seems to be dismissed as useles] [> ] How do you spell avocado? [ ] [Post] [Preview] Editor's Picks [Silvermon] Silvermont, Intel's Low Power Architecture By David Kanter Intel's Sandy Bridge Microarchitecture By David Kanter [CSI-Layer] The Common System Interface: Intel's Future Interconnect By David Kanter RWT on Twitter * And we are back to normal! about 3 months ago in reply to rwt * We have upgraded our VM, so everything should be faster now!!! Enjoy :) about 4 months ago * Happy new year everyone! We are #1 on HackerNews again...apologies if the site's a little slow. Apparently folks ar... https://t.co/RGkyjhVbGl about 4 months ago @RWT * About Us * Contact Us * Reprints * Advertise at RWT * Write for Us * Privacy Policy * Forum Guidelines * Membership * TOS Copyright (c) 1996-2021 Real World Tech * All Rights Reserved * Insert/edit link Close Enter the destination URL URL [ ] Link Text [ ] [ ] Open link in a new tab Or link to existing content Search [ ] No search term specified. Showing recent items. Search or use up and down arrow keys to select an item. Cancel [Add Link]