Posts mit dem Label graphics werden angezeigt. Alle Posts anzeigen
Posts mit dem Label graphics werden angezeigt. Alle Posts anzeigen

19.02.2011

Release Party!

I proudly present: video-swicher, a tool to switch betweeen the integrated and the dedicated video card on laptops that have switchable graphics cards. As far as I know, this the the first and (up to now) only tool for this job!
The package is easy to use. It comes with an upstart job that can disable the unused video card on system boot (configurable via a configuration file in /etc/default) and a binary to change the active card. It can only be run by root (or via sudo) since it needs to write into a file on /sys which is owned by root and it needs to shutdown any running display manager.
Up to now there's only one available package, video-switcher which provides the upstart job and the binary. A second package providing a GUI will follow within the next days.
Grab the package by the usual means (available in my PPA) and tell me what You think!
  1. Install
    Code:
    $ sudo apt-get install video-switcher
  2. Use
    Code:
    $ sudo video-switcher [int|ded]
That's it! You're done!

P.S.: You might ask Yourself: How come there's version 1.0.3 available if this is the release announcement? Well, I uploaded the package, found some bugs, deleted it and fixed them. When I tried to upload the fixed version as 1.0.0 again, the system rejected the code claiming that there was already a version 1.0.0 that differed. So I had to make it version 1.0.3.

17.02.2011

The end is near!

I'm about to finish work on latest package called video-switcher! I managed to write a command-line application that is able to change the video card. It has to restart the X server (closing Your session), but as far as I know, there's no getting around that.
There's only one problem left to fix. When switching back to the on-board Intel video card on my tm2-1090eg, the display often gets into a weird state where it's either showing just garbage or nothing at all. I was able to circumvent this by turning the screen off and on again. However, vbetool, the program I use for doing so, sometimes hangs up using 100% of the processor. At that point, my program hangs, too, and never gets to restart the X server. Apparently this is a known bug which hasn't been fixed yet. I'm still working on this and I hope to have a fix ready in the next few days. If You have any idea that might help, I'd be glad to hear about it!
I'll keep You posted!

P.S.: After fixing the problem it might still take some time to write a graphical user interface for the command line application. This shouldn't take more than a day, though.

17.01.2011

2 new packages to come!

Here's a small announcement:
I will probably create a package for automatic CPU frequency scaling based on my article here. From what I read in the forums where this blog was posted, there are many people (especially those new to Ubuntu) who have problems or difficulties setting up and installing scripts. The package will thus contain the script, the ACPI handler and the upstart job. This is nothing more and nothing less than I already posted in the article, but will of course be much easier to install and update. I hope the package will be useful for many people and I would be very happy about any feedback on this topic (there are visitor statistics available for me concerning the blog, but unfortunately there's no download counter for my PPA).
Another package I'm currently working on is based on the post about switchable graphics. It will contain a small graphical (also usable without a GUI) program which is able to switch the graphics card between the integrated (less power consuming) Intel card and the discrete (more powerful) ATI card. It will of course still restart the X server upon changing the card as there is currently no way to circumvent this. Personally I have little use for such a program (as I don't really need the graphical power of the ATI card in Linux), but I think it might be come in handy once in a while and may be even more useful for other people. As for the first announced package, I would be very happy about any feedback concerning this.

29.11.2010

Switchable graphics and power consumption

Update: The switch seems to work reliably for me now. I switched to the ATI card, restarted X, used it, switched back and restarted X again. The procedure worked without problems. If I find time I will probably write a small program to switch the graphics card similar to the one I wrote for screen rotation.

It is completed! Switchable graphics are supported by the Linux kernel!
The usage is pretty simple. You have 2 graphics cards installed in the system. Thus, You need drivers for both of them. For the tm2-1090eg this means You need to make sure that both the radeon and the intel module are loaded after You booted up Your laptop. If one of them does not appear in the output of lsmod, there's something wrong or You blacklisted is. How to cope with that is not covered in this guide.
Starting with some-kernel-version, there is a node in the sysfs, specifically in /sys/kernel/debug/, which is called vgaswitcheroo. This neat little thing gives us the possibility to switch the graphics adapter at runtime and also to turn off the idle one.
(As root) You can write different 3 values into the switch at /sys/kernel/debug/vgaswitcheroo/switch using:
Code:
$ echo <value> > /sys/kernel/debug/vgaswitcheroo/switch
The values are:
  1. OFF - This one is simple. It turns off the video adapter which is currently unused. It is of high value, though. I noticed that upon turning off my ATI card, the battery lifetime actually increased by a factor of 5! Before using this, I could use my laptop for about an hour before the batteries went dry and now I am able to hack on it for around 5 hours without a break. At the end of this article I will present an upstart script to automatically turn off the ATI card on startup (I can't think of a reason to use the ATI card on Linux. According to other people, the drivers don't work well and there is no need for 3D acceleration at all.).
  2. DDIS - Switch to the discrete graphics card (the ATI one). This requires a restart of the X server to take effect and the whole switching is buggy on my system. Every one or two switches, the system completely crashes and I need to hard-reboot my laptop. However, it may work for some people and may work for everyone in the near future, so I included it here as well.
  3. DIGD - Switch to the integrated graphics card (the Intel one). The same restrictions and errors apply as for the previous value.
You can also read the state of the switch:
Code:
$ cat /sys/kernel/debug/vgaswitcheroo/switch
So far so good. Now as I mentioned, the ATI card is practically useless unless You want to play games (and even then I heard it's not really making things look good). If You want to turn it off, You may copy the following script (name it ati-disable.conf and place it in /etc/init as root, of course).
Code:
# ati-disable - Disable ATI graphics card
#
# Disable the dedicated ATI graphics card to save power.

description "Disable ATI graphics card"
author "Frederik Möllers"

start on started gdm

script
    if [ -w /sys/kernel/debug/vgaswitcheroo/switch ]
    then
        echo "OFF" > /sys/kernel/debug/vgaswitcheroo/switch
    fi
end script
Upon reboot, Your ATI card should be turned off. You can check if it is by using the cat command from above.

That's it! You're done!