Propose your solution
Attachments
Duplicates
Comments
|
nightman
wrote on the 28 Feb 08 at 22:55
|
|
|
I will just copy 'n' paste my post from Linux Mint "Sugestions and Ideas" forum (Linux Mint is based on Ubuntu):
Hi, following the new article on Digg.com http://digg.com/linux_unix/Drastically_Speed_up_your_Linux_System_with_Preload I've found out about two fantastic programs that speed up my Linux Mint. It would be fantastic to build it to Linux Mint by default.
Ok, so let's move into details:
First program is "Preload" - check http://www.techthrob.com/tech/preload.php
Preload is an "adaptive readahead daemon" that runs in the background of your system, and observes what programs you use most often, caching them in order to speed up application load time. By using Preload, you can put unused RAM to good work, and improve the overall performance of your desktop system.
So it's basically like Vista's SuperFetch but much less RAM consuming. The instalation is simple:
To install it just type in terminal:
Code: Select all
sudo apt-get install preload
And that's it, after day or two it will remember Your most often run programs and will run it faster. Check the diagrams on the website provided above. I can say that it significantly improves some programs startup on my computer. RAM consuming is pretty low as well.
The second program is "Prelink" - check http://en.wikipedia.org/wiki/Prelinking and http://linux.die.net/man/8/prelink
Prelink is a free program written by Jakub Jelinek of Red Hat for POSIX-compliant operating systems, principally Linux (because it modifies ELF executables). It is intended to speed up a system by reducing the time a program needs to begin. Actual results have been mixed, but it seems to aid systems with a large number of libraries, such as KDE.
Most programs require libraries to function. Libraries can be integrated into a program once, by a linker, when it is compiled (static linking) or they can be integrated when the program is run by a loader, (dynamic linking). Dynamic linking has advantages in code size and management, but every time a program is run, the loader needs to find the relevant libraries. Because the libraries can move around in memory, this causes a performance penalty, and the more libraries that need to be resolved, the greater the penalty. prelink reduces this penalty by using the system's dynamic linker to reversibly perform this linking in advance ("prelinking" the executable file) by relocating. Afterward, the program only needs to spend time finding the relevant libraries on being run if, for some reason (perhaps an upgrade), the libraries have changed since being prelinked.
To install it just type in terminal:
Code: Select all
sudo apt-get install prelink
and after the instalation:
Code: Select all
sudo prelink -avmR
It seems to be very nice idea too. What do You think?
|
|
nightman
wrote on the 28 Feb 08 at 22:56
|
|
|
I will just copy 'n' paste my post from Linux Mint "Sugestions and Ideas" forum (Linux Mint is based on Ubuntu):
Hi, following the new article on Digg.com http://digg.com/linux_unix/Drastically_Speed_up_your_Linux_System_with_Preload I've found out about two fantastic programs that speed up my Linux Mint. It would be fantastic to build it to Linux Mint by default.
Ok, so let's move into details:
First program is "Preload" - check http://www.techthrob.com/tech/preload.php
Preload is an "adaptive readahead daemon" that runs in the background of your system, and observes what programs you use most often, caching them in order to speed up application load time. By using Preload, you can put unused RAM to good work, and improve the overall performance of your desktop system.
So it's basically like Vista's SuperFetch but much less RAM consuming. The instalation is simple:
To install it just type in terminal:
Code: Select all
sudo apt-get install preload
And that's it, after day or two it will remember Your most often run programs and will run it faster. Check the diagrams on the website provided above. I can say that it significantly improves some programs startup on my computer. RAM consuming is pretty low as well.
The second program is "Prelink" - check http://en.wikipedia.org/wiki/Prelinking and http://linux.die.net/man/8/prelink
Prelink is a free program written by Jakub Jelinek of Red Hat for POSIX-compliant operating systems, principally Linux (because it modifies ELF executables). It is intended to speed up a system by reducing the time a program needs to begin. Actual results have been mixed, but it seems to aid systems with a large number of libraries, such as KDE.
Most programs require libraries to function. Libraries can be integrated into a program once, by a linker, when it is compiled (static linking) or they can be integrated when the program is run by a loader, (dynamic linking). Dynamic linking has advantages in code size and management, but every time a program is run, the loader needs to find the relevant libraries. Because the libraries can move around in memory, this causes a performance penalty, and the more libraries that need to be resolved, the greater the penalty. prelink reduces this penalty by using the system's dynamic linker to reversibly perform this linking in advance ("prelinking" the executable file) by relocating. Afterward, the program only needs to spend time finding the relevant libraries on being run if, for some reason (perhaps an upgrade), the libraries have changed since being prelinked.
To install it just type in terminal:
Code: Select all
sudo apt-get install prelink
and after the instalation:
Code: Select all
sudo prelink -avmR
It seems to be very nice idea too. What do You think?
|
|
v1ncent
wrote on the 29 Feb 08 at 00:02
|
|
|
|
It seems OK to me, but i would like to see more performance tests.
|
|
|
|
what about compatibility, real tests on performance, work to be done to make progragms able to use it ?
|
|
gnu_lx
wrote on the 29 Feb 08 at 00:32
|
|
|
I am not a supporter of prelink since it seems (as I understand it) to change the executable files. It adds a map of the dynamically linked libraries so programs could start faster because this step can be skipped. I can't imagine this having a very big impact on loading times (I tested it a long time ago with gentoo and I couldn't detect any difference), but ofcourse I might be wrong.
preload could be an option, but still since it uses memory it should be easy to turn it on/off, so the user can decide not to use it.
|
|
webjames
wrote on the 29 Feb 08 at 00:44
|
|
|
|
preload is easy to install, and gives a speed increase.
|
|
Ubuwu
wrote on the 29 Feb 08 at 00:48
|
|
|
|
Prefetch is a better solution than prelink or preload, see the linked spec.
|
|
|
If this becomes default in Ubuntu, I request an easy way to turn it off. :)
It's becoming more and more common to suspend/resume instead of rebooting, and leave applications running instead of restarting them. Prefetch gains nothing in these cases, and might even decrease performance (research needed).
Personally, I log out only two or three times per year, and 95% of the programs I run start before I can remove my fingers from their launch hotkeys. So, prefetch is uninteresting to me.
|
|
|
@ToyKeeper you are so lying.
A lot of programs start up with a delay the first time. And if they are faster the second time (openoffice) it is only because they _are_ staying in memory.
This delay is purely IO related. Since we don't package the libraries of programs together, but 'share' them to reduce disk and memory space, the first time you run a program 10-20 files need to be read in memory. These files are often scattered around your harddrive. End-result: a couple of second delay.
Prefetch will not harm your memory at all. This is not the way linux works anyway. What is does is learn that when launching application X, you will be loading file Y (presumbly some library) in about .2 sec. Why not _prefetch_ the file for ya?
Rules of prefetch: 1) only use free-memory. when an app requests more memory, reduce your cache. (which is why its a kernel module) 2) only prefetch when we're not doing anything.
Rule number 2 is extra interesting because it will actually spread the usage of resources. This not only means faster launching applications, but also less power consumption and longer lasting laptop's battery's.
If you are worried about memory usage, turn off trackerd. That's a much bigger beast. And you might also want to make sure that you are not running any python applets (deskbar) either. Turn off nautilus thumbnails. Then those mysterious slowdowns will go away for ever.
|
|
dhonn
wrote on the 29 Feb 08 at 07:30
|
|
|
|
How about pre-loading the binary and libraries when the mouse hovers over the icon? By the time the user clicks the icon most of the libraries should be loaded.
|
|
azrael
wrote on the 29 Feb 08 at 09:58
|
|
|
|
Don't install prelink. Prelink has been dropped in feisty.
|
|
|
|
Just so long as I can turn it off!
|
|
|
my experience with prefetch on socket 939 based chipset is exactly the opposite: slower and unstable upon first or second launch. however like Ralf.Nieuwenhuijsen wrote the problem is purely I/O.
most users are going to gripe if they have to wait and extra 2-10 seconds wait for delay upon first launch.
if prefetch is integrated it should be an option in the install. overall, prefetch in fiesty is much quicker than in gutsy.
|
|
Jiran
wrote on the 29 Feb 08 at 19:10
|
|
|
I agree that, if it becomes default, there should be a way to turn it off. I know that pre-fetching is one of the common complaints about Windows when "after using XP for N months, it's soooo slow to boot!"
That, and the ability to clean out the database of Prefetch. If, for example, you're loaning your computer to someone for 3 months, you would want them to have a blank slate for the prefetch and not have extra resources dedicated to what you use.
|
|
Radon
wrote on the 1 Mar 08 at 16:09
|
|
|
Preload is stable. It's been part of OpenSuSE for half a year.
However, it hasn't been updated since August 2006 (Sourceforge). Prefetch seems to be the better alternative since it's more dynamic. I also like the e2remapblocks feature that rearranges the boot files closer together to reduce HDD latency.
More testing is needed for file systems other than ext. It's not yet ready for 8.04.
|
|
|
|
Just a quick one to say I installed this the other day and I'm really impressed. Things seem to load almost instantly. Superb software and would be a brilliant inclusion. However, I agree that an on/off switch is essential.
|
|
Shrat
wrote on the 5 Mar 08 at 19:03
|
|
|
Please, we don't need this bloated app. Linux has a great RAM management.
You need this kind of crap when you use Windows.
Preload and prefetch are useless.
|
|
dilomo
wrote on the 14 Mar 08 at 17:36
|
|
|
|
Not so useless when you are using that slowww nautilus.
|
|
adrian2
wrote on the 8 Apr 08 at 08:51
|
|
|
We all love Ubuntu, but windows is faster because of prefetch.
Ubuntu needs it!
+1
|
|
|
Totally agree! Vista is faster than Ubuntu on a descent piece of hardware.
+1
|
|
|
Please use as much memory as possible to preload programs. It's always much faster to empty the memory than load a program from the disk.
This would make Ubuntu more reactive.
|
|
klichota
wrote on the 10 May 08 at 11:19
|
|
|
Hello everyone.
I am the author of Google Summer of Code 2007 prefetching for Ubuntu.
I did not get any feedback on prefetch project mailing list (or any other way), so I thought it is not used, and did not have motivation to further work on it. And then I have come across this site :)
I will soon be working on adapting my prefetching solution to K/Ubuntu 8.10, so I need as much information about performance, problems, regressions, etc. as possible.
Please send comments about prefetching to mailing list prefetch-users@googlegroups.com (no subscription necessary, just send e-mail) or report bugs on Launchpad project (https://launchpad.net/prefetch/).
TIA
Krzysztof Lichota
|
|
kulight
wrote on the 27 Jul 08 at 19:09
|
|
|
i agree prefetch should be implemented and installed by default
but it should be simple to turn it off if you want to
|
|
lavinog
wrote on the 20 Aug 08 at 21:10
|
|
|
|
How is this different from the default readahead scripts in ubuntu?
|
|
rollit
wrote on the 12 Sep 08 at 13:05
|
|
|
@Krzysztof: its sad that u didnt get much feedback about your project..
however, i'm pretty sure that many desktop users are looking forward to the prefetch feature in linux..
imho, we seriously need a good prefetching solution for linux (with disk remapping), on my dual boot setup, xp takes around 40 seconds till the desktop is ready to use while ubuntu takes a whole 65 seconds!! also, my apps start faster in xp.. (eg. firefox, OO)
though i'm not an expert, i also hope that PF wont interfere with the linux kernel's buffer and cache mechanisms used to warm start apps instantly(i experienced this with preload)..
|
|
Yfrwlf
wrote on the 17 Oct 08 at 02:06
|
|
|
This would be very nice to see, as well as a system performance section in the GUI. At first I thought Vista's prefetch thing was just the same thing as leaving Linux programs in memory, but if it could learn and load up the programs you use the most, that would be a really awesome feature.
Now days RAM is dirty cheap, might as well take advantage of that speed if it's available.
|
|
Yfrwlf
wrote on the 17 Oct 08 at 02:09
|
|
|
|
Oh and one more thing, if the kernel already does some amount of prefetching stuff, perhaps some of it should either be gotten rid of or updated if any of it is still useful, but either way the prefetch module needs to be taught how to properly play nice with the rest of the kernel modules. ^^
|
|
riddle
wrote on the 12 Nov 08 at 02:49
|
|
|
Only if it is done right. If it's done wrong, I'll end up with unnecessary disk usage :(.
|
|
jken146
wrote on the 5 Jan 09 at 02:58
|
|
|
|
Not for me thanks.
|
Post your comment
|