Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.intel > #164
| Message-ID | <4F0DC609.9020503@SPAM.comp-arch.net> (permalink) |
|---|---|
| Date | 2012-01-11 09:25 -0800 |
| From | "Andy (Super) Glew" <andy@SPAM.comp-arch.net> |
| Organization | comp-arch.net |
| Newsgroups | comp.lang.forth, comp.sys.intel, comp.arch |
| Subject | Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? |
| References | <19111298.516.1326191150632.JavaMail.geo-discussion-forums@yqbu38> <jehfpu$9de$1@dont-email.me> <jejuor$922$1@speranza.aioe.org> <e222444f-1181-4388-bdbd-7824b05c8154@dp8g2000vbb.googlegroups.com> |
Cross-posted to 3 groups.
On 1/11/2012 4:29 AM, Alex McDonald wrote: > On Jan 11, 12:21 pm, "Rod Pemberton"<do_not_h...@noavailemail.cmm> > wrote: >> "Arnold Doray"<inva...@invalid.com> wrote in message >> >> news:jehfpu$9de$1@dont-email.me... >> ... >> >>>> [Forth code] >> >>> CPU pipelining is improved by reducing conditionals. Modern CPUs have >>> branch prediction, but these aren't always successful, in which case the >>> pipline needs to be flushed, lowering the CPU's throughput. >> >> Is that still true for multiple cores? >> >> I.e., I would think the following is entirely possible and plausible, but I >> haven't studied a CPU design in decades. The CPU's designers could execute >> the process in parallel with one core taking one direction for the branch >> and the another core taking the other branch direction. Once the correct >> branch is determined, the bad execution path is discarded. If the primary >> core had the good execution path, it just continues execution. If the >> alternate core had the good execution path, it's internal state could be >> "pushed" to the primary core. If they used static ram for the internal >> state, then it could be "pushed" asynchronously, i.e., between clocks or >> sub-clocks. It would require reserving a core for the branch path >> execution, at least temporarily. >> >> Rod Pemberton > > Search on "speculative execution". It can also be done at the compiler > level; that doesn't require processor support. Intel's P6 was their > first chip to support it iirc. Taking both paths on a branch is currently called "eager execution". Branch prediction is one form of "speculative execution". P6 did speculative, but not eager. As, for that matter, did P5 (Pentium). I don't know of anyone doing full eager execution, although it has been studied out the bejeezus. Branch prediction usually beats it. I believe an IBM chip did eager ifetch - fetching both sides of a branch - but did not actually execute, stalled at decoder or therabouts.
Back to comp.sys.intel | Previous | Next — Previous in thread | Next in thread | Find similar
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-11 07:21 -0500
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? Alex McDonald <blog@rivadpm.com> - 2012-01-11 04:29 -0800
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? nmm1@cam.ac.uk - 2012-01-11 12:48 +0000
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? "Andy (Super) Glew" <andy@SPAM.comp-arch.net> - 2012-01-11 09:25 -0800
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? jgk@panix.com (Joe keane) - 2012-01-13 17:47 +0000
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? "Andy (Super) Glew" <andy@SPAM.comp-arch.net> - 2012-01-13 10:09 -0800
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? jgk@panix.com (Joe keane) - 2012-01-14 04:16 +0000
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? Terje Mathisen <"terje.mathisen at tmsw.no"> - 2012-01-14 10:23 +0100
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? "Paul A. Clayton" <paaronclayton@gmail.com> - 2012-01-14 10:10 -0800
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? "Andy (Super) Glew" <andy@SPAM.comp-arch.net> - 2012-01-14 17:15 -0800
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? Terje Mathisen <"terje.mathisen at tmsw.no"> - 2012-01-11 14:33 +0100
Re: Can someone explain step by step how one avoid many conditional in forth as described in Moore Fourth essay? Arnold Doray <invalid@invalid.com> - 2012-01-11 15:03 +0000
csiph-web