home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / arch / 12012 < prev    next >
Encoding:
Internet Message Format  |  1992-12-31  |  3.4 KB

  1. Xref: sparky comp.arch:12012 comp.sys.intel:2854
  2. Path: sparky!uunet!pipex!bnr.co.uk!uknet!gdt!aber!fronta.aber.ac.uk!pcg
  3. From: pcg@aber.ac.uk (Piercarlo Grandi)
  4. Newsgroups: comp.arch,comp.sys.intel
  5. Subject: Re: Superscalar vs. multiple CPUs ?
  6. Message-ID: <PCG.92Dec31115803@decb.aber.ac.uk>
  7. Date: 31 Dec 92 11:58:03 GMT
  8. References: <PCG.92Dec11162630@aberdb.aber.ac.uk> <1992Dec21.134531.3253@athena.mit.edu>
  9.     <PCG.92Dec23144916@decb.aber.ac.uk> <Bzpzwq.18q@news.udel.edu>
  10.     <PCG.92Dec27201257@decb.aber.ac.uk> <38194@cbmvax.commodore.com>
  11. Sender: news@aber.ac.uk (USENET news service)
  12. Reply-To: pcg@aber.ac.uk (Piercarlo Grandi)
  13. Organization: Prifysgol Cymru, Aberystwyth
  14. Lines: 54
  15. In-Reply-To: jesup@cbmvax.commodore.com's message of 29 Dec 92 20: 02:47 GMT
  16. Nntp-Posting-Host: decb.aber.ac.uk
  17.  
  18. On 29 Dec 92 20:02:47 GMT, jesup@cbmvax.commodore.com (Randell Jesup) said:
  19.  
  20. jesup> (Piercarlo Grandi) writes:
  21.  
  22. pcg> This is another reason for which I think hyperscalar is premature:
  23. pcg> a vector instruction has the very nice property that it implies a
  24. pcg> very definite memory access pattern, as compared with a loop that
  25. pcg> does the same thing. And many important applications have FIFO data
  26. pcg> reference patterns, for which predictive memory accesses are
  27. pcg> essential, and adaptive ones, like those implied by a cache, are
  28. pcg> fatal:
  29.  
  30. jesup> This is one reason I've been advocating smarter caches,
  31. jesup> particularily the ability to do predictive pre-fetching.  There
  32. jesup> are a couple of ways to set this up: [ ... ]
  33.  
  34. But should they be called 'caches' then? If they become memory queues,
  35. should not they be called 'memory queues'? Or maybe 'vector registers'?
  36.  
  37. You seem to agree that making a cache double as an implicit set of
  38. memory queues a la RS/6000 can be fatal; but you still seem to like
  39. making the cache become an *explicit* set of memory queues.
  40.  
  41. Why not separate the two? They are used for such different purposes, and
  42. in such different ways! I find it fairly odd to have a single bit of hw
  43. be both a vast LIFO repository of recently accessed data and a small
  44. funnel for prefetching.
  45.  
  46. Maybe you could argue that in this way the queues would not be exposed,
  47. other than in the instruction set. But the trend I seem to understand
  48. is towards exposing the naked hardware to the lusty gaze of the compiler
  49. ever more :-).
  50.  
  51. jesup> 1.    Instruction sets address, bound, and perhaps amount to
  52. jesup> fetch. [ ... ]
  53. jesup> 2.    Load instruction encodes prefetch-enable and bounding
  54. jesup> size in the instruction.
  55. jesup> in the instruction. [ ... ]
  56. jesup> 3.    Instruction sets register, bound and perhaps size, and
  57. jesup> any load relative to that register causes a prefetch [ ... ]
  58. jesup> 4.    Prefetch instruction is executed earlier in the
  59. jesup> instruction stream to fetch a location. [ ... ]
  60.  
  61. These look a fairly Ok set of ideas, but in some sense they are all too
  62. "high level". Suppose that there is effect several memory queues; then
  63. multiple prefetch streams could be outstanding. With the four ideas
  64. above the CPU would have to mask completely this. It takes a bit of
  65. bookkeeping to do this. With explicit queues (or something like vector
  66. registers) things are a bit simpler. On the other hand maybe the
  67. difficulty is less than that I imagine.
  68. --
  69. Piercarlo Grandi, Dept of CS, PC/UW@Aberystwyth <pcg@aber.ac.uk>
  70.   E l'italiano cantava, cantava. E le sue disperate invocazioni giunsero
  71.   alle orecchie del suo divino protettore, il dio della barzelletta
  72.