This is the third time I'm trying to post this but I get "your post needs to be approved by a moderator" message every time I try and that obviously doesn't happen. I'll try to remove that link I had before and see it this works better.
I recently upgraded my computer and was thinking about getting a new graphics card. Unfortunately that requires endless hours of research and it's impossible to avoid running into problems anyway. I decided to keep my old graphics cards because I know what kind of shit I can expect from it. Very few people are qualified to answer the questions I needed to have answered anyway so I just gave up. Then I found this forum and if there are any people who have any idea of the problems I'm facing it's the people here.
I should probably begin by telling you want kind of system and config I'm running. I have a normal desktop setup with a GeForce 6600 LE using two monitors in xinerama. The dual heads are probably the source of a lot of my misery because many of the problems I have go away in single head mode but there is no way I'll ever go back to running in single head mode and preferably I would like a add a third head if possible. I don't play games so I don't need a high performance card but I use google earth and run video game emulators so I do need at least minimal opengl support.
I've been using the nvidia binary drivers for as long as I've been running desktop linux. I wouldn't go as far as calling them terrible anymore but there is definitively room for improvement. What annoys me the most about them is that they often break when I upgrade the kernel. I like to use -rc kernels and even the most recent release usually don't support the -rc kernels.
I got a laptop some years ago and decided to get an Intel cards because of the open source drivers. I believed this would make most of my problems go away but I was wrong. The Intel drivers are the worst quality shit ever. They broke for almost every kernel upgrade. It also took the developers several months to patch the problems so I had to keep a bunch of out of tree patches around myself to fix the problems. At one point I had 3 separate patches for fixing 3 different problems. I will definitively never use an Intel card in the future and the problems with the Intel drivers taught me that open source drivers doesn't necessarily have to run better.
Dual head problems:
There are to my knowledge 3 different ways of using a single nvidia cards in dual head mode. The nouveau drivers, binary with xinerama and binary with twinview. None of them run flawless but they have different problems.
* Using xinerama mode with the binary drivers is the best solution. The problem I'm having is that this mode is very slow. Moving windows between monitors takes forever and even things like minimize and resize is slow. I've gotten used to this over the years but it's something I would like to fix. Another problem with xinerama is that composition doesn't work. This is not a problem right now but it might be in the future.
* By using twinview with the binary drivers the sluggish desktop is fixed. I still can't run composition because I always get nothing but blank backgrounds every time I try. composition work fine in single head so there is some kind of problem with the twinview setup. It doesn't really matter anyway because I don't need to use composition right now.
The biggest problem with twinview is I can never get vsync in videos to work. Both the xvideo and gl video outputs of mplayer give me tearing on the 2nd monitor. I want to be able to play video with vsync on both monitors and this is not possible with twinview.
* I've only tried the nouveau drivers a few times but I've never been able to get them to work properly. I always gets verticals lines all over the monitors when I enable the xrandr extended desktop mode. The top row of pixels gets duplicated all the way down. I chatted with some people in the #nouveau channel and they even tried to debug it but without results. At least with open source drivers you can debug the problem.
60fps video problems:
Nvidias xvideo implementation can't handle running 60fps video. There must be some kind of busy wait somewhere in the drivers because I get 100% cpu when I play 60fps video. This causes the xserver to stop processing input so if I open a 60fps video by mistake I have to watch all of it or hard reset the computer. There is a thread about the problem from 2006 (I was going to insert the link here but you'll just have to find post 77735 on the nvnews forum youself). I don't think that problem will ever be fixed in the drivers. If I use the gl output with mplayer the 60fps videos play fine but I can't get any vsync on the 2nd head even with xinerama mode so I don't want to use the gl output unless I have to. I've even gone as far as to code a small wrapper for mplayer that checks if the video is 60fps and enable the gl output in that case.
Those are the main problems I'm having now. Does anyone know of a card / driver combo that can fix these problems? I want speedy working dual head preferably with composite, working vsync on both heads in dual head, working 60fps playback and preferably the ability to run -rc kernels without breaking my graphics all the time. What I'm asking for is probably impossible with the current xserver :(
I've also been hoping to find some card that can give me working triple head output. I ran a tripe head setup using a separate voodoo card a few years ago but I only ran it for a few days. It was way to slow for daily use. Triple head got some other problems because the primary monitor is not the left one. Some games changed the resolution of the center head and draw the window in the top left corner of the left head and things like that. Programs like to assume the primary monitor is at offset 0,0 and draw things there so I could never get the triple head setup to work properly because of that.
Are there any cards with nice working triple head support in linux that doesn't suffer from the problems I mentioned above? I have looked at the eyefinity support of >HD5000 amd cards but from reading this forum I've learned that the open source amd support is not mature or stable and the amd blog is the worst thing ever. Nvidia got something called surround technology for supporting 3 monitors but since it can't even properly support 2 monitors I can't see any reason why it would work.