Deutsch English Français Italiano |
<vcj7c4$vupr$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: David Brown <david.brown@hesbynett.no> Newsgroups: comp.arch Subject: Re: Is Intel exceptionally unsuccessful as an architecture designer? Date: Fri, 20 Sep 2024 09:14:12 +0200 Organization: A noiseless patient Spider Lines: 24 Message-ID: <vcj7c4$vupr$1@dont-email.me> References: <memo.20240913205156.19028s@jgd.cix.co.uk> <vcd3ds$3o6ae$2@dont-email.me> <2935676af968e40e7cad204d40cafdcf@www.novabbs.org> <vcd7pr$3op6a$3@dont-email.me> <7wCGO.45461$xO0f.1783@fx48.iad> <20240918190414.00005806@yahoo.com> <8e1aed9ce25c70cc555731140ae14eb1@www.novabbs.org> <vcfln9$836k$1@dont-email.me> <vcgi7p$fmaa$2@dont-email.me> <vcgjns$g1mt$1@dont-email.me> <vcgpqt$gndp$1@dont-email.me> <vcgvt0$hp5o$1@dont-email.me> <vcicol$ov66$3@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Fri, 20 Sep 2024 09:14:13 +0200 (CEST) Injection-Info: dont-email.me; posting-host="6b9d4139d709408b76d012384efb9ad3"; logging-data="1047355"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+v1iYYsda8+LlT7ZIxyckawsH7BN1ZKso=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Cancel-Lock: sha1:gqH2Fpa7NI9ZyeTefsfEkOsciec= In-Reply-To: <vcicol$ov66$3@dont-email.me> Content-Language: en-GB Bytes: 2725 On 20/09/2024 01:40, Lawrence D'Oliveiro wrote: > On Thu, 19 Sep 2024 12:54:23 +0200, Terje Mathisen wrote: > >> The way I implemented it was by updating the "official" back frame >> buffer, and compare the update with the visible front buffer. If at any >> time a write to the back buffer did not result in something that was >> already in the front buffer, I just copied the back buffer to the front >> and went on from there. > > Is this where the need for “triple buffering” comes from -- the fact that > you need to copy the entire contents of one buffer to another? > > The way I understood to do flicker-free drawing was with just two buffers > -- “double buffering”. And rather than swap the buffer contents, you just > swapped the pointers to them. You use triple buffering if the incoming data (or drawing commands, or whatever) and the outgoing data (such as to a screen) are asynchronous. If you have control of the timing and synchronisation on one side, you can get away with double buffering. You don't usually copy the data in such systems - you just swap pointers to the buffer used for the different purposes.