Path: utzoo!attcan!uunet!husc6!bloom-beacon!bu-cs!purdue!i.cc.purdue.edu!k.cc.purdue.edu!l.cc.purdue.edu!cik From: cik@l.cc.purdue.edu (Herman Rubin) Newsgroups: comp.arch Subject: Re: Cray & Amdahl Virtual memory debate Summary: An example Message-ID: <851@l.cc.purdue.edu> Date: 26 Jul 88 12:15:54 GMT References: <4232@cbmvax.UUCP> <76700035@p.cs.uiuc.edu> <34254@yale-celray.yale.UUCP> Organization: Purdue University Statistics Department Lines: 20 One of the examples given at the short course at Purdue on the CYBER 205 was the problem of multiplying two 1024x1024 matrices. Because of the fact that there is a paged virtual memory, it was necessary to use a very peculiar way of arranging the matrix elements to avoid thrashing. On a machine without virtual memory, assuming IO and computing can go on simul- taneously, any competent programmer could arrange things so that, after the initial loading of memory, very little time would be taken up by the IO, and there would be no thrashing, and without using any non-obvious arrangement. VM is a convenience for the programmer, but a problem for the machine if much memory is involved, especially if paging is a problem. It is also a convenience if "standard" subroutines are to be kept in memory when possible, but are removed if a space problem occurs. A smart loader can take care of this problem without VM, but do such exist? -- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907 Phone: (317)494-6054 hrubin@l.cc.purdue.edu (Internet, bitnet, UUCP)