sandboy6184
10-11-2004, 02:52 AM
Why cant the cpu just access all the files from the hard drive?
|
Click to See Complete Forum and Search --> : What is the point of RAM? sandboy6184 10-11-2004, 02:52 AM Why cant the cpu just access all the files from the hard drive? ozdream 10-11-2004, 03:07 AM Originally posted by sandboy6184 Why cant the cpu just access all the files from the hard drive? Transfer rate = Speed.... Parcival 10-11-2004, 03:12 AM Because it's a matter of speed. The faster the memory the more expensive it is (because of the technology used to build that sort of memory). The fastest memory is your Cache which directly sits on your CPU. The CPU uses it to save temporay data that needs to be saved and retrieved very fast. The next step is your RAM on your motherboard - still pretty fast, but can hold a lot more data than the Cache. The third step are mass-storage devices, be it harddisks, CD-ROMs, etc. They are a lot slower but can save tons of data. Technically it would be possible to build your entire computer with Cache memory only and you would have the fastest memory on earth - but you wouldn't able to pay it. :) BTW, I think you should have started this thread in the hardware forum. ;) infiniphunk 10-11-2004, 07:06 AM I know a guy who said he loaded XP entirely into RAM(he has over a GB) and that it was very fast. That would follow the logic. So where does swap-space come in to play in all this? Icarus 10-11-2004, 07:28 AM I've seen Quake3 loaded and run entirely off a RAM drive a couple years ago, it loaded in about 3 seconds, started a match a tad longer. Hard drives and CD-ROMs are extremely slow, RAM is almost instant. Of course with volitle RAM, once power is lost so is the data :p Parcival 10-11-2004, 09:02 AM Originally posted by infiniphunk So where does swap-space come in to play in all this? Swap space is meant to support RAM in case it runs out of capacity. I could easily see that on my old box (PII, 233 MHz, 64 MB RAM) back in my Windows days: while Win98 ran smoothly WinXP was able to run - but considerably slower. 64MB is the minimal RAM for XP to run at all, but it asks for a lot more, finding that sort of space in the swapspace. As icarus put it, swap is a lot slower hence my XP was considerably slower than my 98. Conclusion: whatever operating system you run, make sure you have got enough RAM so it comfortably lives in there without the need for swapping too much data. That's why there is this rule of thumb: if your computer is "slow", your harddrive shows a lot of activity, and you need to decide wether you wanna spend 100 bucks on RAM or CPU, it's generally wiser to invest them into more RAM. hard candy 10-11-2004, 10:35 AM The new xbox coming out will run off flash memory. No hard drive. If you have enough memory, some servers are basically run from memory. Hard drives are non-volatile, portable, can be made redundant, and can be "hot swappable", so you can insert a hard drive while the server is running, in case you need to add data or replace a defective drive. Just more convenient. soulestream 10-11-2004, 01:08 PM So where does swap-space come in to play in all this? swap space is also needed by OS depending on how the coding for the applications your running is done. XP for example you can have 200 gig of RAM and some programs will still us swap space(pagefile). thats why MS$ recommends you leave a swap file regardless of how much ram you have. i dont know if linux has the same issue. i cant afford 2 gig of RAM.:D soule CaptainPinko 10-11-2004, 01:40 PM Originally posted by soulestream XP for example you can have 200 gig of RAM and some programs will still us[e] swap space(pagefile). Isn't swap space transparent to the program? The only way I could see you needing a swap file with 200GB if RAM is that the program checks for it (when it really shouldn't...) , has a *NASTY* leak, or deals with a lot of data (e.g. video compresion, 3D rendering, CADing, simulations, databases etc). Really once you start using your swap performance goes to ****. It's only helpful when oyu are paging stuff you aren't using right now to it. Giant_Robot 10-11-2004, 01:46 PM I know some OSs have a limit to the amount of RAM they can actually make use of. Is Linux one of these? I feel the need for an upgrade. Not that I NEED one, but just for the sake of it, really. hard candy 10-11-2004, 02:11 PM The kernel you are booting needs to have the amount of RAM enabled that you are going to use once you reach 1GB. Then again at 4GB. And again at 8GB. Not sure how high, it depends on the architecture, I think PC's are limited to 64 GB. elderdays 10-11-2004, 02:48 PM You can run Knoppix with no hard drive what-so-ever in a computer so long as it has ram. serz 10-11-2004, 05:51 PM How would you run an installer (say a linux distro, winxp for example) if you have no RAM and your disk is not partitioned? :) Icarus 10-11-2004, 05:55 PM Originally posted by serz How would you run an installar (say a linux distro, winxp for example) if you have no RAM and your disk is not partitioned? :) That's usually in AstralSpace that you can do that...unfortunatly there are no cross-dimensional AstralNet devices currently available to support this method :D serz 10-11-2004, 06:00 PM Originally posted by Icarus That's usually in AstralSpace that you can do that...unfortunatly there are no cross-dimensional AstralNet devices currently available to support this method :D Yes, I guess. That was just an example of why we need the RAM. DMR 10-12-2004, 01:08 PM Originally posted by Icarus unfortunatly there are no cross-dimensional AstralNet devices currently available... We do have the Quantum Inverse-Transfluxive Ethereal Field Stabilzer almost out of beta though, don't we? That might do it. Also- Brother Maynard has the Holy Hand Grenade of Antioch (but I think that's another story....) Parcival 10-12-2004, 06:30 PM And now to something completely different :) hard candy 10-13-2004, 02:09 PM Hey, Bon Bon called me today and said he got 90 KG of Ram today. I said, you mean MB? He said no, it was KG, he had bought a male sheep. :) Parcival 10-14-2004, 10:01 AM Originally posted by hard candy Hey, Bon Bon called me today and said he got 90 KG of Ram today. I said, you mean MB? He said no, it was KG, he had bought a male sheep. :) Hmm, if Bon Bon is a good boy and nicely saves his Christmas money he will be able to get a lot more Ram (http://www.dodge.com/ram_truck/). :) I guess the US is the nation on the surface of this world with the most storage capacity cruising around. :D hard candy 10-14-2004, 10:16 AM Yea, that kind of RAM would give Bon Bon's computer a little more horsepower, but it would be hard to make a sweater off of it. He prefers the 90 KG RAM (especially with mint jelly). :) Back to the original topic: What is the point of RAM? So the computer doesn't forget stuff and have to read the disk a whole lot. blight 10-14-2004, 10:32 AM I've seen Quake3 loaded and run entirely off a RAM drive a couple years ago, it loaded in about 3 seconds, started a match a tad longer. I'm curious you you would go about doing somthing like that. is there some command or a program of sorts that will do that for you? or does it require "hacking" of the program? also how wout you go about doing that to XP as well, or any other program for that matter? just curious. Icarus 10-14-2004, 11:08 AM It's literly a PCI RAM drive. A card with RAM slots, and it shows up as a drive to the operating system. Problem with this is once it loses power, it loses data. So it requires an external power source so when the PC is powered off, you don't lose the data They weren't very common or popular because they were VERY expensive. Just figure out how much 2GB of memory costs and add the cost of the "drive" Found a company that makes them... http://www.cenatek.com/ Check out the "Rocket Drive" at the low low cost of $999.00 USD! :D They only list Windows compatability, but I don't see why they wouldn't work in Linux...anyone want to buy one and try? :p Parcival 10-14-2004, 12:14 PM Originally posted by blight I'm curious you you would go about doing somthing like that. You don't necessarily needto buy hardware to do so. I remember my "old days" with my 486 when Strike Commander hit the shelves that needed a Pentium (Jesus!) to run. Even back then people with lots of RAM ( >16MB) used a software that would load Strike Commander entirely into their Pentiums RAM to get the speed benefits. I guess by googling around you may find such a piece of software - well, it's basically just installing a RAM-disk which is familiar to pretty much every Linux user. :) StarTiger 10-14-2004, 01:14 PM A computer without ram: Something VERY fast with a SEVERE case of ADHD. Rinias 10-14-2004, 01:46 PM RAM's good stuff. Like basically already cleared up, the RAM is storage for the CPU, to keep it from sending the data to the disk while it is working on it. If you were to draw out a diagram of the data travelling through the computer for a given operation, you would see that the RAM is much "closer" to the CPU than any other device, which makes it much easier on the CPU for executing the processes. Thus speed is enhanced by limited the distance of travel for data packets. Given also the fact that the I/O's in RAM are written much faster than to other "media," having a lot of RAM is equivalent to having a lot of speed (in most cases). The limit on RAM, as far as I know, not only depends on the "kernel" of the operating system that you're working with, but also on the hardware ( think MoBo) that you're using. Some systems just can't handle more than a certain quantity of RAM (>1 GB). As for swapspace, I read that the Linux kernels <2.6 don't handle swapspace very well. In fact, they almost never want to swap out which, if you're not actively using some program, is a pain. For the 2.6 kernels, however, Andrew Morton went through pains to implement a variable to reglate the use of swapspace (don't remember the name, but look up Morton and Swap in your friendliest search engine :D). Setting the value between 0 and 100 will result in a different amount of swapping to disk, where 100 means that things are swapped out as quickly as possible. Morton suggests that the variable be set to 100 to see what it does, and he didn't want to hear any back talk. He basically said, "just set it to 100 and after you've done that, I'll listen to your problems." ;) He also noted that he has his own system set at 100. Swap is very useful, but only for freeing up RAM, which is used to free up the cache. It would be a good idea to take Morton's advice, and all you more than 2.6ers, start swapping! :D Parcival 10-15-2004, 04:20 AM Originally posted by Rinias The limit on RAM, as far as I know, not only depends on the "kernel" of the operating system that you're working with, but also on the hardware ( think MoBo) that you're using. Umm, yes, the mobo may be one factor playing into this game, but you forgot the most important one: the CPU. Every Bit in a RAM bar has its very own address so the CPU exactly knows where it can write and retrieve the values it needs to process. Hence RAM can only be used to the amount of which the CPU is able to adress it. If you have an old 8-Bit processor, it can handle 2^8=256 addresses which equals in a max. of 32Bytes of RAM it can handle. If you have an AMD-64Bit processor, it can handle 2^64=1.8446744073709552e+19 addresses which equals in a max. of 2147483648GigaBytes. :) bwkaz 10-15-2004, 06:42 PM Originally posted by Parcival Every Bit in a RAM bar has its very own address Well, not quite. Rather, every byte has its own address. ;) Of course, on the actual RAM chips themselves, every bit has an address, but that's for the RAM chips to worry about -- the processor fetches 8 bits at a time. (Actually it probably fetches 64 bytes at a time, to fill a cache line, but the addresses that it puts out on its bus still act like they're byte addresses.) If you have an old 8-Bit processor, it can handle 2^8=256 addresses which equals in a max. of 32Bytes of RAM it can handle. Nope, it can handle 256 bytes of RAM. Any Intel compatible chip 386 and later, is 32-bit (except for Athlon-64s/Opterons from AMD, but even those have a 32-bit compatibility mode). If the address bus was also 32 bits wide, then it could access 4GB of memory (and this was the case from the 386 up to the original Pentium, the 586). The 8086/80186 were 16-bit, but they had a 20-bit address bus (1MB of memory). The 80286 had a 24-bit address bus (16MB of memory). However, the Pentium Pro equivalents (686) and everything newer has a 36-bit address bus, which means that in theory it can access 64GB of memory. It's pretty complicated to do so, however (though the P3 simplifies it a little, I think). There is also the issue of some of those addresses being used to access PCI bus space, some used to house BIOS code, and whatnot else -- which is why you can't use 4GB of actual memory with Linux unless you turn on those 64GB (36-bit) extensions using CONFIG_HIGHMEM_64GB. If you have an AMD-64Bit processor, it can handle 2^64=1.8446744073709552e+19 addresses which equals in a max. of 2147483648GigaBytes. :) Again, not quite. The x86-64's address bus is something closer to 40 bits wide, not 64. So it can handle 2^40 bytes. 2^30 bytes is one gigabyte, so 2^40 bytes is one terabyte (1024 gigabytes). If the address bus was actually 64 bits wide, then you'd pretty much never run out of room (2^64 is (this is very much an approximation) kind of close to 10^22, or about a thousand billion billion). 2^128 is more than the number of particles in the universe, I believe (and 2^64 is the square root of that). You are right about one thing, though -- the processor matters. But the limiting factor on today's systems is still the motherboard's memory controller. ;) DMR 10-15-2004, 07:08 PM Originally posted by bwkaz Well, not quite. Rather, every byte has its own address.... Oh crikey- Don't you hear the woman in your life trying to call you out out of that Geek Haze of yours? Heed her, man- before it'a too late... pull the ripcord NOW!! j/k :D Fryguy8 10-15-2004, 09:28 PM go find a 4 or 8mb stick of ram and use it in your computer. Or whatever the smallest stick of ram you can find is. You'll find out real quick what the point of ram is :) Parcival 10-16-2004, 08:09 AM Ouch, of course, bytes it is. I guess I should have paid more attention in computer architecture - but who can blame me when it gets lectured by this guy (http://www.iam.unibe.ch/~braun/)? :) bwkaz 10-16-2004, 08:41 AM Dave: :D This is what happens when I read Intel's 386 and 686 programming PDFs. ;) justlinux.com
Copyright Internet.com Inc. All Rights Reserved. |