Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| Message-ID | <4E55B046.8080306@SPAM.comp-arch.net> (permalink) |
|---|---|
| Date | 2011-08-24 22:15 -0400 |
| From | "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> |
| Organization | comp-arch.net |
| Newsgroups | comp.arch |
| Subject | Re: IBM demos cognitive computer chips |
| References | (3 earlier) <j2mbn8$706$1@news.albasani.net> <4dd73d66-2fcd-4612-be8f-eeb7709b456c@k15g2000yqd.googlegroups.com> <j2rkm6$1s4$1@news.albasani.net> <4E525C8E.5070109@SPAM.comp-arch.net> <610d5ae7-29a1-4e42-af65-c3d6cdd56fa1@r40g2000prf.googlegroups.com> |
On 8/23/2011 12:36 PM, Eric Northup wrote: > On Aug 22, 6:41 am, "Andy \"Krazy\" Glew"<a...@SPAM.comp-arch.net> > wrote: >> On 8/21/2011 2:56 PM, BGB wrote: >>> the use of individual/independent frames would allow more economical use >>> of memory and address space. >> >>> granted, people could also argue "well, we have 64 bits now, why not >>> just give each thread its own 4MB or 8MB (or more) stack? (CPS/... is >>> for wimps...)". >> >> This is one of the keys: >> >> Interleaved stacks for when operating in lockste, or nearly so. >> >> Uninterleaved stacks for MIMD parallel. > > I presume the benefit is for improved locality of memory references. > > What would the granularity of interleaving be? Does the instruction > stream know that it's stack has been interleaved, or do the stack > pointer arithmetic operations do the swizzling? Stack interleaving arises for reasons that include: * when you have several coherent threads, some variables, such as loop counter variables, are common to all threads, while others are per-thread. It is wasteful to push N copies of the same loop counter on separate stacks. * but mainly (I think) because of the mindset where you think of the threads as not being independent, but instead being lockstep, with a single instruction pointer, and a mask indicating which threads are active and which are disabled. e.g. an IF statement computes a mask of which threads take the THEN path, and pushes a mask for the threads that take the ELSE path, along with the PC. an ELSE statement swaps the current mask and PC with the mask and PC at the top of the stack. an ENDIF statement merges the current mask with the mask popped off the stack. You can equally well think as these operations as involving separate PCs with separate stacks - but that does a lot of unnecessary work. Plus, you would need to compare PCs popped off to verifypical y that you are still coherent. Whereas coherence happens by construction with the "SIMD" PC and mask. AFAIK present GPU instruction sets make the interleaving explicit. Indeed, some have a hardware stack in registers, adjunct to memory. (Note that you only need use the PC/mask stack on divergent branches, not every branch if all coherent threads go the same way, no need.) But notice the limitations of this approach: The interleaved stack only applies to the SIMD warp, not all of the SIMD groups. Typical warps or wavefronts are 64 threads wide. (Or, rather, 16 wide times 4 cycles deep.) There may be variables that are not common to all 64 threads in a group, but which are common to, say, every 4, or 16, or 4+16+3+1+40 arbitrary partitions. Interleaved stacks tend to benefot only shared across all thread variables, but not partial sharing. I would like to see studies on the relative benefit of this versus the lossage of not being able to go MIMD when you need to.
Back to comp.arch | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
IBM demos cognitive computer chips Brett Davis <ggtgp@yahoo.com> - 2011-08-18 18:02 -0500
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-18 20:37 -0400
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-19 13:40 -0400
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-19 11:52 -0700
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-19 15:50 -0400
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-20 00:15 -0700
Re: IBM demos cognitive computer chips Stephen Fuld <SFuld@alumni.cmu.edu.invalid> - 2011-08-20 09:22 -0700
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-20 14:10 -0400
Re: IBM demos cognitive computer chips Quadibloc <jsavard@ecn.ab.ca> - 2011-08-21 05:16 -0700
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-21 11:56 -0700
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-21 15:29 -0400
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-21 13:19 -0700
Re: IBM demos cognitive computer chips "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-08-22 09:41 -0400
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-22 12:22 -0700
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-22 13:01 -0700
Re: IBM demos cognitive computer chips "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-08-23 10:11 -0400
Re: IBM demos cognitive computer chips Eric Northup <digitaleric@gmail.com> - 2011-08-23 09:36 -0700
Re: IBM demos cognitive computer chips "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-08-24 22:15 -0400
Re: IBM demos cognitive computer chips "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-08-25 09:07 -0400
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-20 01:41 -0400
Re: IBM demos cognitive computer chips Stephen Fuld <SFuld@alumni.cmu.edu.invalid> - 2011-08-20 08:55 -0700
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-20 16:10 -0400
Re: IBM demos cognitive computer chips Stephen Fuld <SFuld@alumni.cmu.edu.invalid> - 2011-08-21 21:11 -0700
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-22 12:04 -0400
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-22 12:22 -0400
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-22 14:24 -0400
Re: IBM demos cognitive computer chips Quadibloc <jsavard@ecn.ab.ca> - 2011-08-22 19:32 -0700
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-22 23:21 -0700
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-23 09:49 -0700
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-23 09:46 -0700
Re: IBM demos cognitive computer chips BGB <cr88192@hotmail.com> - 2011-08-23 15:05 -0700
Re: IBM demos cognitive computer chips Piotr Wyderski <peter.pan@neverland.mil> - 2011-08-26 16:04 +0200
Re: IBM demos cognitive computer chips Quadibloc <jsavard@ecn.ab.ca> - 2011-08-26 09:58 -0700
Re: IBM demos cognitive computer chips ChrisQ <meru@devnull.com> - 2011-08-29 14:56 +0100
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-29 11:06 -0400
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-29 16:10 -0400
Re: IBM demos cognitive computer chips EricP <ThatWouldBeTelling@thevillage.com> - 2011-08-29 17:48 -0400
Re: IBM demos cognitive computer chips Robert Myers <rbmyersusa@gmail.com> - 2011-08-29 19:24 -0400
Re: IBM demos cognitive computer chips ggtgp@yahoo.com - 2012-03-30 21:54 -0700
csiph-web