Jump to content
Sign in to follow this  
rzooff

Jak uruchomić kartę graficzną NVidia

Recommended Posts

Jeśli jakieś określenia będą niejasne, to zapraszam do lektury słowniczka.

 

 

:arrow: NA CZYM TO POLEGA

Max OS X zawiera już w sobie sterowniki do większości kart graficznych NVidia. Jedyny problem jest taki, że karty PC nie są prawidłowo rozpoznawane przez system. Dlatego też wszystkie metody uruchamiania kart graficznych PC to nie są sterowniki, a tzw. enablery czy injektory. Czyli rozwiązania, które mają za zadanie spowodować, że Mac OS prawidłowo rozpozna naszą kartę. Dlatego też użyta metoda nie ma wpływu na wydajność karty graficznej.

Bez tego karta graficzna działa w tzw. trybie VESA, co oznacza brak możliwości zmiany rozdzielczości i brak wsparcia sprzętowego dla wyświetlania grafiki.

 

 

:arrow: ROZEZNANIE TERENU

Żeby nie tracić czasu na marne, dobrze jest przez właściwymi testami odrobinę się przygotować.

  • wersja systemu / model karty graficznej
    Najpierw warto sprawdzić od jakiej wersji systemu nasza karta graficzna jest obsługiwana. Nowsze modele mogą wymagać wyższej wersji Leoparda (np. 10.5.7) lub nowszej wersji Snow Leoparda (np. 10.6.2). Takie informacje bez większego problemu znaleźć można przy pomocy google ;-)
    Z kolei starsze serie, a dokładniej 7xxx potrafią sprawiać kłopoty. W przypadku Snow Leo najczęściej działają tylko w 32 bitach.
    Najmniej problemowe są obecnie popularne serie 8xxx i 9xxx.
     
  • PciRoot
    Potem należy sprawdzić jaki jest tzw. PciRoot naszej płyty. Jego właściwa identyfikacja potrzebna jest do działania m.in. fixów od grafiki, z których będziemy próbować skorzystać.
    Chodzi o to czy porty PCI w naszym Biosie są numerowane od zera (PciRoot = 0) czy od jednego (PciRoot = 1). W praktyce, płyty z Biosem f-my AMI (np. Asus) mają tą wartość równą 0, a płyty z Biosem Awarda (np. Gigabyte) równą 1. Ale najlepiej to sprawdzić w terminalu, wpisując:
    ioreg -l | grep -15 "AppleACPIPCI\ " | grep UID


    Jeśli będzie to "0" to nic nie musimy robić, bo jest to wartość domyślna.
    Jeśli będzie to "1" to trzeba do pliku apple.com.Boot.plist dodać wpis:

    PciRoot
    1
    

:arrow: METODY

Metod uruchamiania jest kilka, ale koniecznie trzeba pamiętać, by próbować ich pojedynczo! Przed spróbowaniem nowego rozwiązania, najpierw należy całkowicie usunąć poprzednie. Gdy będziemy mieli w systemie więcej niż jedną metodę, to żadna z nich nie będzie działać!

Czyli gdy zawiedzie nas metoda polegająca na modyfikacji pliku com.apple.Boot.plist, to najpierw usuwamy z niego uprzednio dodany wpis i dopiero wtedy dodajemy co innego - inny wpis lub kext. Jeśli wcześniej użyliśmy kexta, to najpierw usuwamy go z systemu, odświeżamy Cache (czyli plik Extensions.mkext) i dopiero zabieramy się za inną opcję...

 

Sugeruję by próby przeprowadzać wg kolejności z poniższej listy. Po każdej zmianie, ewentualne efekty będą widoczne dopiero po restarcie. Jeśli dana metoda będzie skuteczna, to kolejnych punktów oczywiście już nie wykonujemy:

  • 1. Graphics Enabler Chameleon'a 2.
    Najpierw upewniamy się, że mamy możliwie aktualną wersję Chameleona (min. RC4) i do pliku com.apple.Boot.plist dopisujemy:
    GraphicsEnabler
    Yes


    Przykładowy cały com.apple.Boot.plist, dodatkowo z wpisanym PciRoot = 1:

    <?xml version="1.0" encoding="UTF-8"?> 
    
    
    
    Kernel
    mach_kernel
    Kernel Flags
    
    Timeout
    3
    PciRoot
    1
    GraphicsEnabler
    Yes
    
    


     

  • 2. EFI String
    Przy pomocy aplikacji EFI Studio lub OSx86Tools generujemy sobie tzw. EFI String i dopisujemy do pliku com.apple.Boot.plist (taki string jest bardzo długi, więc poniżej wersja z wyciętym "środkiem"):
    device-properties
    6a020000 [...] 6495d


    Przykładowy cały com.apple.Boot.plist:

    <?xml version="1.0" encoding="UTF-8"?> 
    
    
    
    Kernel
    mach_kernel
    Kernel Flags
    
    Timeout
    3
    device-properties
    6a020000 [...] 6495d
    
    


     

  • 3. NVEnabler.kext
    Instalujemy w systemi powyższego kexta, w /S/L/E lub /E/E - najprościej przy pomocy aplikacji Kext Utility:
    http://www.kexts.com/view/118-snow_leopard_nvenabler.html


     

  • 4. Injector
    Próbujemy (tylko pojedynczo!) instalować tzw. injectory: NViject.kext, NVkush.kext, ATY_Init.kext...
     
  • 5. Inne
    Istnieją jeszcze inne metody - np: jak dopisywanie sekcji grafiki DSDT czy podmiana Biosu karty graficznej na Mac'owy (przez plik lub flashowanie). Nie przynoszą one dodatkowych korzyści, ale dla niektórych taka opcja jest po prostu ciekawa. Niestety metody te są także zdecydowanie bardziej skomplikowane i nie będę ich tutaj szczegółowo opisywał.

 

:arrow: JAK SPRAWDZIĆ CZY DZIAŁA

 

Po pierwsze będziemy mogli ustawić właściwą rozdzielczość. Albo jeśli mamy monitor podłączony przez DVI to ustawi się ona automatycznie.

Druga sprawa, to tzw. QE/CI, czyli Quarz Extreme i Core Image, co oznacza sprzętowe wsparcie wyświetlania grafiki przez kartę graficzną.

W przypadku Leoparda 10.5 wszystko widać w System Profiler'ze -> Graphics/Displays.

Jeśli jest dobrze, to będą tam takie wpisy:

Core Image: Hardware Acceleraterd

Quarz Extreme: Supported

Jeśli nie jest dobrze, to takie:

Core Image: Software Acceleraterd

Quarz Extreme: Unsupported

W przypadu Snow Leoparda 10.6 trzeba zajrzeć do System Preferences -> Desktop & Screen Saver. Jeśli na samym dole mamy opcję "Translucent menu bar", to znaczy, że wszystko działa jak należy. Jeśli nie to nie:

translucent.png

 

:arrow: KILKA WSKAZÓWEK

  • Jeśli po restarcie będziemy mieli czarny ekran, a mamy dwa wyjście z karty graficznej, to najprawdopodobniej sygnał idzie na to drugie wyjście.
    W szczególności dotyczy to kart z wyjściami D-SUB i DVI, gdzie sygnał prawie zawsze będzie szedł na DVI. Wtedy można sobie pomóc np. przejściówką DVI -> D-SUB.
     
  • W przypadku EFI Stringa, warto pokombinować nie tylko z jednym. Dla jednego modelu karty można wygenerować kilka różnych, bo dla każdego zestawu wyjść będzie potrzebny inny EFI String. Może się okazać, że standardowy np. dla nie działa, a wersja wygenerowana przez opcję "Custom String", zaskoczy.
     
  • Jeśli karta graficzna cały czas działa tylko w trybie VESA, to koniecznie trzeba się upewnić, że nie próbujmy użyć dwóch metod na raz!
     
  • Jeśli system nie wstaje lub wstaje ale nic nie widać, to ratować można się trybem Safe Mode (-x), Single User (-s) lub, w ostateczności, uruchamiając Terminal z poziomu instalatora.
     
  • Jeśli spotkacie się ze znanym problemem tzw. "mouse lag" (skaczący kursor), to winowajcą jest AppleUpstreamUserClient.kext. Można go skasować np. z poziomu terminala:
    sudo rm -R /System/Library/Extensions/AppleUpstreamUserClient.kext 
    sudo rm /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext


    Lub spróbować zastosować elegantsze rozwiązanie, np. to:

    http://www.insanelymac.com/forum/index.php?showtopic=148843

 

:arrow: STEROWNIKI NVIDIA ZE ŚCIĄGNIĘTYMI ZABEZPIECZENIAMI

  • Dla systemu Mac OS X 10.6.8 Snow Leopard
    http://dl.dropbox.com/u/9641107/NVIDIA%20Retail%20Mac%20Driver%20256.02.25f01.zip


  • Dla Systemu Mac OS X 10.7.3 Lion
    http://dl.dropbox.com/u/9641107/NVIDIA%20Retail%20Mac%20Driver%20270.00.00f01.zip

Share this post


Link to post
Share on other sites

Poczytaj parę wątków o nvidii, to się dowiesz, że sterowniki pod OS X są skopane i karty działają mniej wydajnie niż pod windows ;)

 

A to, że nie masz poprawnych info w profilerze, wcale nie znaczy, że karta nie działa - ogólnie masz przeźroczysty pasek = masz QE/CI. Jak bardzo zależy Ci na wpisach, to modyfikacja DSDT załatwi sprawę.

Share this post


Link to post
Share on other sites
gry dzialaja inna droga ze 10 razy wolnej niz na windowsie

Sterowniki dla kart nvidia pod OSX są skopane niestety. Więc i wydajność jest do d... Raczej nic na to nie poradzisz.

Jeśli będzie Cię ta wydajność bolała to rozwiązaniem jest przesiadka na ATI.

Share this post


Link to post
Share on other sites

Bardzo przydatny poradnik dla początkujących jak ja. Dzięki!

Mam bardzo ciekawą sytuację, otóż podane tu rozwiązania 1,2 i 3 działają na mojej karcie GeForce 9500 GS połowicznie. Mianowicie mój główny monitor mam podpięty przez DVI i jeśli tylko ten monitor jest podpięty to po bootowaniu pojawia się czarny ekran i kaplica :-( Natomiast jeśli podepnę przez RGB drugi monitor to on staje się aktywny podczas bootowania, ale w momencie załadowania systemu obraz przeskakuje na ten z DVI i wtedy działa grafika aż miło.

 

Musiałem też wyłączyć usypianie monitora, bo później nie chciał się wybudzić.

Share this post


Link to post
Share on other sites

Być może ta karta ma nietypowy NVCAP. Spróbuj utworzyć customowego EFI String'a, a jak nie, to trzeba ręcznie pobawić się w dopisanie NVCAP do DSDT. NVCAP Maker'a znajdziesz tu:

https://skydrive.live.com/?cid=8b65993ef55cf014&id=8B65993EF55CF014%21207

Jeszcze inna opcja, to próba z podpięcia kabli pod oba wejścia - pod RGB, przejściówka na DVI, a pod DVI podpinasz monitor.

Share this post


Link to post
Share on other sites

W jaki sposób wyciągnąć Efi stringa z Geforce GTX 470?

Nie ma go na liście programu, a w sieci nie udało mi się znaleźć konkretnego rozwiązania. Niestety inne metody nie skutkują (NVEnabler - zawiesza system przy starcie.)

 

Karta ma służyć do wspomagania pakietu adobe (after effects) oraz kilku podstawowych programów do 3d jak Maya czy 3dsmax, dlatego bardzo mi zależy na jej jak najlepszym działaniu w ramach moich możliwości sprzętowych.

 

(Są to moje początki z hackiem i zastanawiam się czy nie zlecić komuś tego, bo dziś przeinstalowywałem system po raz 5, a zależy mi na czasie)

 

 

Ok. Sytuacja już rozwiązana. Wystarczyło dodać

 

device_type
NVDA,Parent
model
NVIDIA GeForce GTX 470

 

w org.chameleon.Boot.plist

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.