Deutsch English Français Italiano |
<vdm9gn$3oluc$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: jseigh <jseigh_es00@xemaps.com> Newsgroups: comp.arch Subject: Re: Is Intel exceptionally unsuccessful as an architecture designer? Date: Thu, 3 Oct 2024 10:25:26 -0400 Organization: A noiseless patient Spider Lines: 29 Message-ID: <vdm9gn$3oluc$1@dont-email.me> References: <memo.20240913205156.19028s@jgd.cix.co.uk> <vcda96$3p3a7$2@dont-email.me> <21028ed32d20f0eea9a754fafdb64e45@www.novabbs.org> <RECGO.45463$xO0f.22925@fx48.iad> <20240918190027.00003e4e@yahoo.com> <vcfp2q$8glq$5@dont-email.me> <jwv34lumjz7.fsf-monnier+comp.arch@gnu.org> <vckpkg$18k7r$2@dont-email.me> <vckqus$18j12$2@dont-email.me> <920c561c4e39e91d3730b6aab103459b@www.novabbs.org> <vcl6i6$1ad9e$1@dont-email.me> <d3b9fc944f708546e4fbe5909c748ba3@www.novabbs.org> <%dAHO.54667$S9Vb.39628@fx45.iad> <vcna56$1nlod$2@dont-email.me> <a7708487530552a53732070fe08d9458@www.novabbs.org> <vcprkv$2asrd$1@dont-email.me> <e2c993172c11a221c4dcb9973f9cdb86@www.novabbs.org> <vcqe6f$2d8oa$1@dont-email.me> <4f84910a01d7db353eedadd7c471d7d3@www.novabbs.org> <20240923105336.0000119b@yahoo.com> <6577e60bd63883d1a7bd51c717531f38@www.novabbs.org> <vctjvc$33kcl$1@dont-email.me> <vdkore$3ed1r$4@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Thu, 03 Oct 2024 16:25:27 +0200 (CEST) Injection-Info: dont-email.me; posting-host="eee4de20f8459bcf3c50f941f98f999b"; logging-data="3954636"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/eUQzWuv4etZZuGso3y96o" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:iq8qo1c5SOHCxJEFls1tZSQ+sOw= In-Reply-To: <vdkore$3ed1r$4@dont-email.me> Content-Language: en-US Bytes: 3274 On 10/2/24 20:34, Lawrence D'Oliveiro wrote: > On Tue, 24 Sep 2024 07:50:36 +0200, Terje Mathisen wrote: > >> Somebody wiser than me had written something like "You cannot >> write/test/debug multithreaded programs without the ability for multiple >> threads to actually run at the same time." > > Some threading bugs will more likely show up in multiple-CPU situations, > others will more likely show up in single-CPU situations. You need to test > every which way you can. > > The 1990s were a “let’s use threads for everything” time. Thankfully, we > have become a bit more restrained since then ... Some things you can't test for. For example, hazard pointers without the store/load memory barrier. You need an asymmetric memory barrier for the memory reclamation thread to use. But the timing window that a race condition can happen if you didn't use that asymmetric memory barrier in is too small for any bad things to happen. You might think, oh if preemption occurred in the middle of a hazard pointer load, that would increase the timing window but guess what, that interrupt that caused the preemption effected a memory barrier. I did get around to showing formally that a false negative, which might make you think it was safe to reclaim the memory, when it was in fact not safe, cannot occur. Joe Seigh