# acpi/amd64 power saving



## kamikaze (Nov 17, 2008)

Well, it's not a secret that _no_ suspend features are supported on amd64. This is pretty depressing, my notebook even supports S4BIOS and I have to do a lengthy shutdown and boot instead. And let's face it, FreeBSD boots slowly, because nothing happens in parallel and often the time spent during boot is time spent waiting for something, like a network coming up, which is not necessarily required for everything that follows, so other things could be done at the same time.


----------



## Almindor (Nov 18, 2008)

kamikaze said:
			
		

> Well, it's not a secret that _no_ suspend features are supported on amd64. This is pretty depressing, my notebook even supports S4BIOS and I have to do a lengthy shutdown and boot instead. And let's face it, FreeBSD boots slowly, because nothing happens in parallel and often the time spent during boot is time spent waiting for something, like a network coming up, which is not necessarily required for everything that follows, so other things could be done at the same time.



I agree 100% with this. I'm on a AMD64 laptop too and this is a major letdown for me, the only one coimbined with no 3D (but I fully understand that 3D is a driver/manufacturer issue).

I'm not one of those people who constantly put their laptop to sleep but it's very useful every now and then.

Also.. 100% spot on about the boot process. It needs parallelization, even basic like the debian "shell" method.


----------



## graudeejs (Nov 18, 2008)

for linux, i know few good project:
initng - this was pretty easy to setup
kyuba - successor of elinit (which was almost great, almost because at time i tried it, it had bugs on my box..., however it was superfast. configuring einit was a little difficult). don't know anything about kyuba, haven't been using linux in ages...

I was able to boot linux in about 9-12s with enint (from when i press space in grub, to point i get X)

I wonder what would it take to port them to FreeBSD


----------



## richardpl (Nov 18, 2008)

What is slow /etc/rc.d/* or kernel booting?

To make things clear, booting is finished once init is started.


----------



## kamikaze (Nov 18, 2008)

I would guess it's not possible. The most time consuming part is the hard waredetection. So the hardware detection of the kernel had to be made parallel. The second part that can consume lots of time, depending on the individual setup, is the rc-startup process. Since it already tracks dependencies it should be possible to do this.


----------



## brucec@ (Nov 19, 2008)

There are people working on ACPI sleep modes for amd64 on -CURRENT. See http://lists.freebsd.org/pipermail/freebsd-acpi/2008-October/005159.html for details.


----------



## kamikaze (Nov 19, 2008)

Thanks, that's great to know.


----------



## Almindor (Nov 19, 2008)

The rc boot section needs parallelization. Some daemons/services even block because they wait for net etc. all this could be parallelized away.

Also, the windows logic of "loading while user types password" isn't really bad either.


----------



## aragon (Nov 20, 2008)

I've seen talk of parallising rc.  It would be a nice feature I think.  There are some things that can make bootup quicker:

* disable geom_label and stop using labels in fstab - speeds up kernel load
* enable background_dhclient in rc.conf - removes block during network initialisation if you're using dhcp


----------



## kamikaze (Nov 20, 2008)

I find geom labels very useful, because they allow me to take a HD out of a machine and put it into another one where it boots without changes.

When my last notebook broke, I put the HD into a USB-case and was able to continue running the system from USB without troubles on most computers.


----------



## graudeejs (Nov 20, 2008)

aragon said:
			
		

> * enable background_dhclient in rc.conf - removes block during network initialisation if you're using dhcp



how do you do that?


----------



## oliverh (Nov 20, 2008)

killasmurf86 said:
			
		

> how do you do that?



Put background_dhclient="YES" into /etc/rc.conf

See man rc.conf for more.


----------



## Anonymous (Feb 1, 2009)

I had background dhclient for some time, but I run freenet6 straight after dhcp, so I still haven't had IP, but freenet6 wanted to run, and couldn't due to lack of internet connection. Since I preffer not to run background dhclient.


----------



## kamikaze (Feb 2, 2009)

Does anyone know about any progress lately? I'm talking about suspend/resume, which is way more important to me than fast booting.


----------



## bsdgooch (Mar 14, 2009)

See here:

http://lists.freebsd.org/pipermail/freebsd-current/2009-March/004411.html

I've been using it on my Lenovo X300 for a few months, mostly without a hitch...


----------

