Mam konfigurację z 3 monitorami (każda 1680x1050) za pośrednictwem Nvidia NVS440 (2 GPU, 2 wyjścia na GPU łącznie 4 wyjścia); działa to dobrze w systemie Windows XP, 7, ale spowodowało znaczne problemy pod Linuksem (Ubuntu 9.04).
Wcześniej użyłem XFX 9600GT i pokładowego XFX 9300GS, aby uzyskać ten sam wynik, ale karta była głośna i wymagała dużej mocy i miałem nadzieję, że w NVS4400 był jakiś magiczny przełącznik, który pozbył się tego irytującego problemu - okazuje się, że NVS440 to tylko 2 karty na jednej fizycznej płytce drukowanej :-p (przeszukałem sieć wysoko i nisko dla osób używających tej karty pod Linuksem, ale nic nie znalazłem, jeśli cokolwiek karta zużywa mniej energii i jest mniej fanem, więc i tak skorzystałem )
W każdym razie przy użyciu obu konfiguracji dostępnych było 5 rozwiązań:
- Posiadaj 3 oddzielne instancje X, wszystkie niezłączone
- Posiadaj 3 oddzielne instancje X, do których sąsiaduje Xinerama
- Posiadaj 2 oddzielne instancje X - jedna z podwójnym widokiem, obie połączone przez Xinerama
- Posiadaj 2 oddzielne instancje X - jedna z podwójnym widokiem, ale bez Xineramy
- Skonfiguruj pojedynczy widok podwójny i pozostaw trzeci ekran odłączony :-p
Czwarta opcja, wykorzystująca 2 oddzielne instancje X i twinview (ale bez xinerama) była najlepszą równowagą pod względem wydajności i użyteczności, ale spowodowała 2 naprawdę denerwujące problemy
- Nie można było kontrolować (bez zmiany skrótów), na którym ekranie otwiera się aplikacja - a po otwarciu nie można było przenieść jej na inny ekran bez otwierania terminala i zmuszania go do przeniesienia
- Przesłonięcie lub sfałszowanie Xvinamy przez Nvidię, a 2 ekrany połączone widokiem Twin zachowują się jak pojedynczy ogromny ekran, powodujący otwieranie wyskakujących okienek na środku obu ekranów i maksymalizacja okien rozciągających się na szerokość pierwszych 2 ekranów
- Firefox może uruchomić tylko jedną instancję jako ten sam użytkownik, więc posiadanie wielu okien Firefoxa wymaga co najmniej 2 użytkowników
Druga opcja „wydaje się” jak właściwa opcja, ale OpenGL jest zasadniczo wyłączony, a granie w jakąkolwiek grę lub nawet uruchomienie dowolnej grafiki powoduje ogromny spadek wydajności i niestabilność - nawet próba uruchomienia podstawowego emulatora dla gba lub gens powoduje po prostu system przewrócić się. Działa tylko na tyle, by wpatrywać się w pulpit i nic nie robić, ale jak tylko zaczniesz coś robić - otwierać okna, przeciągać rzeczy - uruchamiać wiele kopii firefoxa, to po prostu naprawdę działa wolno.
Ostatni otwarty, tylko działający podwójny ekran działa idealnie i wszystko działa zgodnie z wymaganiami, pełne przyspieszenie GPU - dwie logiczne przestrzenie ekranu - idealne, po prostu spraw, aby działało na GPU, takich jak okna! :-p
W każdym razie wiem, że RandR miał nabrać luzu, kiedy wprowadzałby obiekty GPU, aby umożliwić połączenie wielu GPU w celu utworzenia jednego ogromnego pulpitu na znacznie głębszej warstwie niż Xinerama. Zastanawiałem się, czy to teraz zostało naprawione (zauważyłem, że X server 1.7 nie działa) i czy ktoś sprawił, że działa poprawnie?
Ponownie moje wymagania to:
- Jeden ogromny pulpit do przeciągnięcia dowolnego okna
- Maksymalizacja okien na każdym ekranie (podobnie jak XP)
- Uruchamianie aplikacji pełnoekranowych na ekranie głównym i blokowanie przejścia myszy na inne lub wszystkie 3 rozciągnięte
Wreszcie jako notatka dodatkowa; Jestem świadomy potrójnego (i podwójnego) rozdzielacza głowicy Matrox, ale nawet cena, którą kupują w serwisie eBay, jest większa niż mogę sobie pozwolić na bankomat, mój argument: nie powinienem kupować dodatkowego sprzętu, aby dostać coś do pracy na Linuksie, gdy to coś, co istniało w świecie okien od dłuższego czasu (czy możesz powiedzieć, że nie radzę sobie z X :-p); Gdybym miał gotówkę, kupiłbym już najnowszą wersję tego pudełka (nowa wersja wreszcie obsługuje duże rozdzielczości, ponieważ wyświetlacze mam 1680x1050).