Compiling a custom kernel in FreeBSD has many advantages. The one the stands out the most for me in Folding@home is that the performance on my computer rose by 20% after I compiled a custom kernel and removed support for most of the devices that I do not have on my computer such as wireless devices and legacy isa devices. The gains here come from more system resources being available to the task at hand, lower memory use and your system being optimized for your hardware and processor.
All folding@home on FreeBSD is either done via linux emulation (brandelf), virutualisation such as VirtualBox or Wine. All of these benefit from stronger floating point performance.
The instructions that I will provide only apply to PC-BSD 8 or FreeBSD 8 or higher.
The first step will be to update your source tree. You will need to create a file called supfile. To update to the latest kernel and source in 8.1, create the file with these contents.
This file would update you to FreeBSD 9 current.
Open a terminal, login as root
Go to the directory where you saved supfile and type either
or
csup should be installed automatically in PC-BSD 8 or 8.1, You may have to install cvsup but if you choose to use that but there is no reason to prefer cvsup to csup.
Get a coffee. The download will take a while.
You should be using ZFS. If you are not, beat your head slowly against a wall. ZFS is miles ahead of UFS in terms of reliability, flexibility and recovery.
To back up your full system do a series of ZFS snapshots. To find the ZFS pools on your system type in terminal
You will see a list of all the pools in your system. My list is:
I would type in a terminal
If you need to see a list of the snapshots that you have created, type
to restore an earlier snapshot of tank0 for example, type
for example
By now you have your coffee finished and you are ready to start serious work.
You will need to edit your make.conf file. Building your system and kernel is often touchy and I will recommend only a plain setup to get through your compilation.
Open a terminal and type,
It may only contain a few lines. For the first step I want you to put a
#
in front of all lines that do not already have a # in front of them. Press Control x to save the file. Press Y. When prompted for the name make.conf, press Enter.
All folding@home on FreeBSD is either done via linux emulation (brandelf), virutualisation such as VirtualBox or Wine. All of these benefit from stronger floating point performance.
The instructions that I will provide only apply to PC-BSD 8 or FreeBSD 8 or higher.
The first step will be to update your source tree. You will need to create a file called supfile. To update to the latest kernel and source in 8.1, create the file with these contents.
Code:
*default release=cvs tag=RELENG_8
*default host=cvsup11.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
ports-all
doc-all
This file would update you to FreeBSD 9 current.
Code:
*default tag=.
*default host=cvsup11.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-all
ports-all
doc-all
Open a terminal, login as root
Code:
su
your password
csup supfile
or
cvsup -g -L 2 supfile
csup should be installed automatically in PC-BSD 8 or 8.1, You may have to install cvsup but if you choose to use that but there is no reason to prefer cvsup to csup.
Get a coffee. The download will take a while.
You should be using ZFS. If you are not, beat your head slowly against a wall. ZFS is miles ahead of UFS in terms of reliability, flexibility and recovery.
To back up your full system do a series of ZFS snapshots. To find the ZFS pools on your system type in terminal
Code:
su
your password
zfs list
Code:
NAME USED AVAIL REFER MOUNTPOINT
tank0 1.92G 22.1G 1.30G /mnt
tank1 4.39G 10.5G 18K none
tank1/var 4.37G 10.5G 2.62G /var
tank2 84.5G 142G 18K none
tank2/usr 84.4G 142G 65.2G /usr
I would type in a terminal
Code:
zfs snapshot tank0@backup1
zfs snaphshot tank1@backup1
zfs snapshot tank1/var@backup1
zfs snapshot tank2@backup1
zfs snapshot tank2/usr@backup1
zfs list -t snapshot
to restore an earlier snapshot of tank0 for example, type
zfs rollback tank0@backup1
for example
By now you have your coffee finished and you are ready to start serious work.
You will need to edit your make.conf file. Building your system and kernel is often touchy and I will recommend only a plain setup to get through your compilation.
Open a terminal and type,
Code:
su
your password
nano /etc/make.conf
#
in front of all lines that do not already have a # in front of them. Press Control x to save the file. Press Y. When prompted for the name make.conf, press Enter.