* Re: Terrible IO performance when using 4GB of RAM on a 32 bit machine [not found] ` <fa.qwrQSldd4OzDT6RgWE5P1BD9PJw@ifi.uio.no> @ 2007-06-22 0:00 ` Robert Hancock 2007-06-22 8:29 ` Peter Rabbitson 2007-06-23 6:56 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine [solved] Peter Rabbitson 0 siblings, 2 replies; 4+ messages in thread From: Robert Hancock @ 2007-06-22 0:00 UTC (permalink / raw) To: Peter Rabbitson; +Cc: H. Peter Anvin, linux-kernel Peter Rabbitson wrote: > H. Peter Anvin wrote: >> Peter Rabbitson wrote: >>> I have captured dmesg output without mem[5], with mem=3900M[6] and >>> mem=2048M[7]. >>> >> >> What does /proc/mtrr look like in the two cases? >> > > Identical for mem=3900 and without it. > > reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1 > reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1 > reg02: base=0xc0000000 (3072MB), size= 512MB: write-back, count=1 > reg03: base=0xe0000000 (3584MB), size= 256MB: write-back, count=1 > reg04: base=0xf0000000 (3840MB), size= 128MB: write-back, count=1 > reg05: base=0xf8000000 (3968MB), size= 32MB: write-back, count=1 Looks like another case of bad MTRRs on an Intel motherboard? The BIOS is marking only memory up to 4000MB as cacheable, but the actual memory extends up to about 4031MB. Therefore anything that accesses the top 31MB of memory will run very slow. -- Robert Hancock Saskatoon, SK, Canada To email, remove "nospam" from hancockr@nospamshaw.ca Home Page: http://www.roberthancock.com/ ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Terrible IO performance when using 4GB of RAM on a 32 bit machine 2007-06-22 0:00 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine Robert Hancock @ 2007-06-22 8:29 ` Peter Rabbitson 2007-06-22 14:36 ` Robert Hancock 2007-06-23 6:56 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine [solved] Peter Rabbitson 1 sibling, 1 reply; 4+ messages in thread From: Peter Rabbitson @ 2007-06-22 8:29 UTC (permalink / raw) To: Robert Hancock; +Cc: linux-kernel Robert Hancock wrote: > Peter Rabbitson wrote: >> H. Peter Anvin wrote: >>> >>> What does /proc/mtrr look like in the two cases? >>> >> >> Identical for mem=3900 and without it. >> >> reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1 >> reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1 >> reg02: base=0xc0000000 (3072MB), size= 512MB: write-back, count=1 >> reg03: base=0xe0000000 (3584MB), size= 256MB: write-back, count=1 >> reg04: base=0xf0000000 (3840MB), size= 128MB: write-back, count=1 >> reg05: base=0xf8000000 (3968MB), size= 32MB: write-back, count=1 > > Looks like another case of bad MTRRs on an Intel motherboard? The BIOS > is marking only memory up to 4000MB as cacheable, but the actual memory > extends up to about 4031MB. Therefore anything that accesses the top > 31MB of memory will run very slow. > Ah, it all makes sense now. In this case I assume mem=4000 is perfectly safe and usable for the time being. In the beginning I tried with mem=4g, which obviously did not work. If anyone is interested in adding an exception/workaround for this particular motherboard, I'd be happy to help with testing. I have added more information about the system: current kernel config [1], output of `lspci -vv`[2], dmesg with mem=4000[3]. Thank you! Peter [1] http://rabbit.us/pool/4g/config-2.6.21.5.arzamas.6.txt [2] http://rabbit.us/pool/4g/lspci_4000.txt [3] http://rabbit.us/pool/4g/dmesg_4000.txt ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Terrible IO performance when using 4GB of RAM on a 32 bit machine 2007-06-22 8:29 ` Peter Rabbitson @ 2007-06-22 14:36 ` Robert Hancock 0 siblings, 0 replies; 4+ messages in thread From: Robert Hancock @ 2007-06-22 14:36 UTC (permalink / raw) To: Peter Rabbitson; +Cc: linux-kernel Peter Rabbitson wrote: > Robert Hancock wrote: >> Peter Rabbitson wrote: >>> H. Peter Anvin wrote: >>>> >>>> What does /proc/mtrr look like in the two cases? >>>> >>> >>> Identical for mem=3900 and without it. >>> >>> reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1 >>> reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1 >>> reg02: base=0xc0000000 (3072MB), size= 512MB: write-back, count=1 >>> reg03: base=0xe0000000 (3584MB), size= 256MB: write-back, count=1 >>> reg04: base=0xf0000000 (3840MB), size= 128MB: write-back, count=1 >>> reg05: base=0xf8000000 (3968MB), size= 32MB: write-back, count=1 >> >> Looks like another case of bad MTRRs on an Intel motherboard? The BIOS >> is marking only memory up to 4000MB as cacheable, but the actual >> memory extends up to about 4031MB. Therefore anything that accesses >> the top 31MB of memory will run very slow. >> > > Ah, it all makes sense now. In this case I assume mem=4000 is perfectly > safe and usable for the time being. In the beginning I tried with > mem=4g, which obviously did not work. If anyone is interested in adding > an exception/workaround for this particular motherboard, I'd be happy to > help with testing. I have added more information about the system: > current kernel config [1], output of `lspci -vv`[2], dmesg with > mem=4000[3]. > > Thank you! > > Peter There was a patch floating around recently to detect the case where the MTRRs don't map all of RAM as write-back, automatically cap the memory used by the kernel to what is mapped and print some loud warnings.. -- Robert Hancock Saskatoon, SK, Canada To email, remove "nospam" from hancockr@nospamshaw.ca Home Page: http://www.roberthancock.com/ ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Terrible IO performance when using 4GB of RAM on a 32 bit machine [solved] 2007-06-22 0:00 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine Robert Hancock 2007-06-22 8:29 ` Peter Rabbitson @ 2007-06-23 6:56 ` Peter Rabbitson 1 sibling, 0 replies; 4+ messages in thread From: Peter Rabbitson @ 2007-06-23 6:56 UTC (permalink / raw) To: Robert Hancock; +Cc: H. Peter Anvin, linux-kernel, surenkarapetyan Robert Hancock wrote: > Peter Rabbitson wrote: >> >> reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1 >> reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1 >> reg02: base=0xc0000000 (3072MB), size= 512MB: write-back, count=1 >> reg03: base=0xe0000000 (3584MB), size= 256MB: write-back, count=1 >> reg04: base=0xf0000000 (3840MB), size= 128MB: write-back, count=1 >> reg05: base=0xf8000000 (3968MB), size= 32MB: write-back, count=1 > > Looks like another case of bad MTRRs on an Intel motherboard? The BIOS > is marking only memory up to 4000MB as cacheable, but the actual memory > extends up to about 4031MB. Therefore anything that accesses the top > 31MB of memory will run very slow. I sincerely apologize for not paying enough attention. Intel has fixed this issue 2 BIOS revisions ago[1], kudos to Suren Karapetyan for pointing this out. I just upgraded the BIOS and it indeed solves the problem. The mtrr still seems not to be going over 4000MB, but everything works without any visible slowdowns at all. Here is how the mtrr and the relevant dmesg line look like now: reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1 reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1 reg02: base=0xc0000000 (3072MB), size= 512MB: write-back, count=1 reg03: base=0xe0000000 (3584MB), size= 256MB: write-back, count=1 reg04: base=0xf0000000 (3840MB), size= 128MB: write-back, count=1 (there is no reg05) ... Memory: 4024568k/4063168k available (2894k kernel code, 37456k reserved, 930k data, 252k init, 3145664k highmem) ... Thank you for the help! Peter [1] http://downloadcenter.intel.com/Detail_Desc.aspx?agr=N&Inst=Yes&ProductID=1640&DwnldID=11261&strOSs=All&OSFullName=All%20Operating%20Systems&lang=eng ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-06-23 6:56 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <fa.8+Qu4ZH2B8PP3bRaZ5LNdUcsFIQ@ifi.uio.no> [not found] ` <fa.X6rjOVHT6SoOzt6SHEJROeRgf98@ifi.uio.no> [not found] ` <fa.qwrQSldd4OzDT6RgWE5P1BD9PJw@ifi.uio.no> 2007-06-22 0:00 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine Robert Hancock 2007-06-22 8:29 ` Peter Rabbitson 2007-06-22 14:36 ` Robert Hancock 2007-06-23 6:56 ` Terrible IO performance when using 4GB of RAM on a 32 bit machine [solved] Peter Rabbitson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).