0
votes
|
|
0
0
0
|
|
|
|
|
Propose your solution
Attachments
No attachments.
Duplicates
Comments
|
XSP
wrote on the 3 Mar 08 at 01:44
|
|
|
Are you kidding? This isn't only incredibly temporary, it's insane to think of running your operating system without the possibility of having back up data should something go wrong.
RAM: Random Access Memory. A temporary cache if you will.
|
|
Graf
wrote on the 3 Mar 08 at 01:47
|
|
|
Hm.
This really seems like something that would be useful for power users but detrimental to the masses.
What if you want to use your ram to run some other program?
|
|
drconti
wrote on the 3 Mar 08 at 01:51
|
|
|
This is a great idea! The concerns about saving changes to the hard drive are not relevant. There is no reason changes could not be simultaneously saved to the hard drive for relevant information and at intervals, in any case.
In fact, that's what your OS does anyway.
This is an opportunity to bring power-user performance to modest hardware platforms - exactly the promise that Linux offers.
|
|
Auzy
wrote on the 3 Mar 08 at 02:05
|
|
|
I think his saying instead of waiting for files to be loaded, it loads them to ram, but not stuff in your /home directory.
So using the ram to cache entire programs, and the entire OS, and only using the harddisk to save stuff back onto when they change. Its a good idea.
|
|
|
@XSP - All OSs (including ubuntu) work this way anyway. Most changes get saved temporarily to RAM before actually being saved to the hard drive. Depending on the change in question, saving to the hard drive may take some time, so I don't think this would introduce any real increased "risk" of failing to save something important. Running everything in RAM doesn't mean things couldn't be saved to the hard drive appropriately, without slowing things down.
@Graf - My point is that your entire OS and most of the apps most people ever use are all included on an 800 MB CD! Everything most people ever use should fit reasonably well into 1 GB RAM. Many Linux distros do this already. Those systems really scream, since everything (the OS and all apps) are already in RAM. Of course, if you keep loading in more and more programs, you'll eventually saturate your memory space and be forced to start swapping things out. But that's what ubuntu is doing anyway! Why not offer people extreme performance, even without the latest power hardware?
@drconti - Thanks! I think you understand the idea!
|
|
|
|
@Auzy - Thanks. You get it, too!
|
|
|
This wouldn't work with me. Some of us don't have 4gb RAM, you know.
I've no problem with it being an option, but please, not the default.
Abstain.
|
|
flower
wrote on the 3 Mar 08 at 12:08
|
|
|
i would like this option, but not for the hole system.
i would like to see /bin/ /usr /var/log /tmp inside an ram disk.
but this can be an configuration option ,)
|
|
|
@shadowfirebird - Not 4 GB RAM, just 1 GB RAM.
I just mentioned that I happen to have a 4 GB (hardware) RAM disk in one system that I use. It's on a PCI card. I have ubuntu 7.10 installed to that RAM disk, and it is the boot disk on that computer (it is continually battery-backed). That system really screams, even though the processor in that computer isn't all that impressive.
I think you could get similar performance to my 4 GB RAM disk in just 1 GB RAM if you loaded the entire OS and (at least) the core apps into RAM simultaneously. You'd probably need 1 GB RAM to do that, but so many systems these days are shipping with at least that.
The big problem with certain proprietary OSs out there is that they require way too much hardware to run reasonably well. You can do a lot to squeak performance even out of modest system hardware by efficient program design.
|
|
|
You can install `preload` - that will load some commonly used data into ram, before you request access to that. http://www.techthrob.com/tech/preload.php
If you have loads of ram, you can configure it to preload more aggressively. That will allow you to run most things "out of ram" without major system redesign.
|
|
|
|
@trentreviso - I don't even have 1GB RAM!
|
|
acreman
wrote on the 3 Mar 08 at 21:22
|
|
|
|
On my Ubuntu file server, I don't even 256MB RAM. I only have 128MB RAM, clearly not enough to run Ubuntu. Also I don't want this on my power machines because I like to watch videos and other things that require lots of RAM. -1 for this idea.
|
|
|
@shadowfirebird - This idea would only boost performance on systems with about 1 GB RAM or more. It would not degrade performance on smaller systems, however, which would continue to operate exactly as they are now. No difference whatsoever. The ABILITY to load everything into RAM should NOT be a REQUIREMENT that this be done.
I am not one to favor the need for ever more powerful hardware as the engine for better performance of the OS. So I applaud those like you who continue to use older and less impressively speced platforms. Just because a system is not the latest in chip technology does not mean it cannot be useful and productive.
But that is part of the idea here, Imagine if you upgraded an old Pentium III system with 1 GB RAM (which is fairly cheap now). Loading ubuntu and OpenOffice into RAM on such a system would outperform a fast Core 2 Duo with 4 GB RAM running Vista and Office. An elderly computer with ubuntu could put you-know-who's billion-dollar wunderkind OS to shame. It's about programming efficiently to maximize the capabilities of your hardware.
@acerman - I doubt video performance would be degraded by this technique. If you are playing a 2 GB video file, playback is not faster if you cache the entire 2 GB video in RAM than it is if you retrieve and cache the parts being played fast enough to keep up with the speed of playback. You'll see no difference. More RAM can be helpful for caching if the source of your video feed is exceptionally slow and inconsistent, but not if it's coming off a local disk or broadband. And if your video feed is slower than the playback speed, playback will be impaired no matter how much system RAM you have available.
|
|
Auzy
wrote on the 6 Mar 08 at 10:33
|
|
|
|
You guys realise that it doesn't have to be default right?
|
|
|
Thanks to viraptor for the preload thing. I agree it has some similarities to loading everything into RAM, and could possibly be combined with this idea as part of a more sophisticated memory manager for ubuntu.
A WARNING, however, to everyone. I tried installing preload on ubuntu 8.04 alpha-6 and it made my system completely unbootable. Not even recovery mode will boot. Nothing I have tried works. I'm posting this from an old version of ubuntu I still happened to have on the hard drive.
Gonna have to reformat and reinstall. Guess that's why they call it an alpha.
|
|
frunns
wrote on the 16 Mar 08 at 21:20
|
|
|
|
I'm kind of annoyed by people being negative just because their systems couldn't handle it. I got a laptop with 2GB ram, which theoretically could load quite a lot into ram and run it from there... It's a good idea at least.
|
|
chr0n0s
wrote on the 17 Mar 08 at 13:10
|
|
|
|
it's a great idea, and for people who are worried about having less RAM, they should understand that it's like an option, and not forced for every user. The benefits of loading everything in RAM are pretty cool!
|
|
bepcyc
wrote on the 21 Mar 08 at 10:54
|
|
|
Nobody mentioned RAMBACK yet (virtual device with the ability to back a ramdisk by a real disk).
it's may become an interesting technology with significant results:
"In a typical test, ramback reduced a 25
second file operation[1] to under one second including sync. Even
greater gains are possible for seek-intensive applications."
more information here: http://lwn.net/Articles/272534/
|
|
allo
wrote on the 3 Apr 08 at 15:40
|
|
|
|
great idea, just copy the needed parts to ram, and lazy-copy(only on access) the other parts to the ramdisk. rsync from ram to disk regulary, so the shutdown will not be delayed too much.
|
|
|
VERY good idea. I LOVE IT!!!
I have a core 2 DUO at 2GHZ and 2 GB DDR2 RAM, so I'll benefit from this greatly. As RAM standards increase, so will many people.
Please remember this is not by default or obligatory- it will be an option that will be made available if 1 GB or more RAM is autodetected.
|
|
|
I appreciate the nice comments of Redrazor39 and others who have newer and faster computers. It is true that loading all of the routine apps to RAM on these systems at boot up would make applications run unbelievably fast.
I think I should emphasize, however, that I see this idea as aimed primarily at older and lower spec'd systems. For $30 to $50, you can upgrade an old Pentium III system to 1 GB RAM. Ubuntu ships (the entire OS and all apps) on an 800 MB CD. Loading everything on that disk to 1 GB RAM would still leave you with 200 MB RAM to work with. If you kept OpenOffice, GIMP, a media player, etc. in RAM at all times, the apps would open almost instantaneously at the click of a mouse, even on a very old computer.The apps would still save your work to the hard drive, so you needn't worry this would somehow be volatile. A Pentium III may be considered elderly and outdated by many today, but it is a very capable and sophisticated piece of machinery. It is a shame to trash older hardware just because newer and faster stuff is available.
An 800 MHz P III runnning ubuntu with all apps in RAM will outperform a Core 2 Duo running Vista and Office in 4 GB RAM. The problem is not that your old hardware lacks ability. The problem is that Microsoft's programmers are too lazy to utilize the resources at their disposal.
Let's show them how good programming is done.
|
|
Eagleon
wrote on the 25 Apr 08 at 01:15
|
|
|
I love this idea! In fact, I've been thinking of implementing this myself for a while. trentreviso, how did you manage to set up yours? I've been partially successful, but of course installing anything, or changes I make are gone after every boot. Obviously because it all gets saved to RAM. How do I go about fixing this I wonder? I mean, if I mount my home directly separately then I can save directly to that... but what about when installing new packages and such, where will they go? Sorry if this is a bit of a newbie question, but it pertains to your idea as well... I would like to know your thoughts and comments on how you have accomplished this on ur 4gb RAM machine, and how you proposed to have it done in ubuntu.
Thanks!
|
|
|
@ Eagleon - My RAM disk is implemented in hardware. It's a Gigabyte i-RAM device.
http://techreport.com/articles.x/9312/1
It plugs into the PCI bus, but it communicates with the motherboard via a SATA connection (which, surprisingly, is actually faster than the PCI bus itself). It draws power from the PCI bus (even when the computer itself is switched off) but it also has a battery backup in case of power failures. Of course, I also back it up manually to a traditional magnetic hard drive, from time to time. I have mine populated with 4 GB RAM, which is the maximum the i-RAM can accommodate.
I have the i-RAM configured as the boot drive, so it has GRUB and the standard ubuntu installation on it (including the usual apps), and almost nothing else. Because it is only 4 GB, I store all my data (photos, documents, etc.) on a separate magnetic drive. Of course, since it is the boot drive, if I should ever lose power long enough to drain the backup battery (~ 4 hrs), the system will become unbootable and I'll have to reinstall. Not a problem, though, since virtually ALL my data is stored on a traditional magnetic hard drive. (That's never happened in ~ 3 yrs., BTW).
My system has 1 GB of standard RAM on the mobo, and a not particularly impressive 3 GHz 32 bit P4 processor. Not to brag, but mine is the fastest computer I have ever seen, running any OS. It will easily leave any dual core Pentium system (running from the hard drive) in the dust.
Initially, I had Win XP on it. It runs, but Win XP doesn't seem to like that hardware very much (XP will BARELY install onto a 4 GB drive). XP kept crashing, and I had to keep re-installing it. I got fed up and finally (initially) put ubuntu 6.10 on it. I've been very happy ever since.
But think about it. My system screams because everything is ALWAYS in RAM (sort of). Linux is so efficient that there is no reason why you couldn't fit the entire ubuntu installation into 1 GB, ALL the time (it ships on a 700 MB disk, doesn't it?). You could load everything to RAM at boot up, and do with just 1 GB what I'm doing now with 5 GB (4 GB i-RAM + 1 GB mobo RAM). Knoppix does this already, if you specify "knoppix toram" at the splash screen. But why should you have to specify it at every boot-up?
|
|
|
|
A few days ago I tried Puppy Linux. It's a small distro that loads entirely into RAM (it's only 100 mb or so). It makes old computers fly. I don't know much about hardware, but given that this idea is already implemented in at least another distro, and having proven myself that it really makes a difference, I'll give this idea a +1.
|
|
|
|
A few days ago I tried Puppy Linux. It's a small distro that loads entirely into RAM (it's only 100 mb or so). It makes old computers fly. I don't know much about hardware, but given that this idea is already implemented in at least another distro, and having proven myself that it really makes a difference, I'll give this idea a +1.
|
|
vprasaj
wrote on the 17 May 08 at 14:47
|
|
|
This would be great.
My RAM is most of the time more then half empty.
+1
|
|
|
|
Not by default. Maybe readahead/preload should be an installation or configuration option? +1 anyway.
|
|
regnarg
wrote on the 18 Jan 09 at 16:52
|
|
|
|
Programs are running in ram, they don't need to have their executables there. That would only speed up startup and file loading (and hardly you'll put all data to ram). It would not be too much of a speedup for such a drastical resource consumption. Live CDs do that, because they are small, immutable, and CDs are very, very, slow.
|
|
Tokume
wrote on the 25 Mar 09 at 14:31
|
|
|
This option would be immensely helpful for people that have Linux on portable flash drives. I currently have Ubuntu stuck on a USB stick (full installation, since the persistence file filled up too fast and killed it), due to my circumstances, and I've found that trying to multitask is very difficult as programs tend to hang for a bit as they load or respond to input...
Having this option would be beneficial since my RAM is barely ever used, have 3gb on my laptop, and it would be much faster for Ubuntu to access RAM rather than through USB every time to switch between programs...
|
|
|
Exactly what I want.
With 4GB of RAM, and even with 4 desktops stuffed full of apps, I've still got half free. Whilst it's all being used, the cache is usually just storing parts of large block file copies - pretty much useless. I'd rather have a higher priority cache for commonly launched programs - it could be a full GB even, and cause little impact on an average 4GB system.
What it will mean is that most things load very quickly. This is a VERY common user gripe. Why not use the hardware if the user has it?
|
|
korin43
wrote on the 12 May 09 at 00:51
|
|
|
What I'd like to see is something that loads everything (the entire main partition) into RAM and then writes changes back to the hard drive when it's convenient. For this you'd definitely need your /home to be on a different partition, but I have 4 GB of RAM and it would only cost ~$40 to double that to 8 GB. It's not unreasonable to assume a normal installation could be loaded entirely into RAM.
It would probably be a bit of work to make it usable though. It's easy to copy everything to a RAM disk and run it, but we'd probably need:
- A way to immediately write out everything to the hard drive
- A way to switch between the RAM disk and the real hard drive
- A way to mark files as "write this to the disk immediately"
Any computer that could do this should run quite fast..
|
|
viraptor
wrote on the 12 May 09 at 14:19
|
|
|
@korin43:
"but we'd probably need:
- A way to immediately write out everything to the hard drive"
Like `sync`?
"- A way to switch between the RAM disk and the real hard drive"
Like the VFS layer / filesystem / medium layer delayed-write buffers?
"- A way to mark files as "write this to the disk immediately""
Like `fsync()`? Actually you never want immediate writing. What you want to do is transactions / atomic writes on a filesystem.
Everything already works this way. Just `apt-get install preload` and enjoy your memory-preloaded system...
|
|
scotty1
wrote on the 23 Sep 09 at 00:24
|
|
|
if it were me i wald boot the os into ram and save my doc's and apps and programs to a 2 to 4 gb usb stick.
that way you dont have a need for a hard drive.
and your system wald ran as fust as it can do.
|
|
|
I'd just like to add a big thumbs up to this and point out that puppy linux has this functionality as a cheat code at boot, you can load the entire OS into RAM rather than accessing the CD and it makes Puppy INCREDIBLY fast due to zero accessing of the CD.
My OS constitues little over 3Gb and with modern systems haveing 8Gb and 12Gb RAM this can easily be used to make the system power along with spare RAM for applications to run in. It would take a while to copy as HDD access is slow but once copied it would be incredible.
|
|
|
Wow guys, look what I started :)
Only downside would be copying 3Gb of data (my root partition is 3.2Gb used here) to RAM. SATA is 300Mb/s so would take about 30 or so seconds to load (accounting for seek time etc may ramp up to 45 - 60) but hell, if it makes things nice it could be advantageous especially for servers.
There would have to be a scheduled rsync to the physical drive or only at shutdown (regular will help prevent against data loss on power loss) but essentially Ubuntu is not using a lot of people's RAM as the OS is efficient rather than being used to Windows bloating the RAM with garbage.
It could be a kernel option.
The selected kernel gets loaded, sees the active option and immediately starts hauling the data (or SOME data) to the memory in a ramdisk of sorts. Then the OS can boot (FAST!!)
|
Post your comment
|