Μιας και είμαι απο τους λίγους που πιστεύουν οτι ο κλειστός driver της ΑΤΙ κάνει μια χαρά την δουλειά του (την οποία θα εξηγήσουμε μετά ποιά είναι αυτή) είπα να γράψω μερικά πραγματάκια ώστε να γίνουν πιο κατανοητά/πιο γνωστά διάφορα θεματάκια, προβλήματα, δυνατότητες, και τι μας επιφυλλάσει το μέλλον γενικότερα, όπως και μερικά κολπάκια για να δουλέψει καλύτερα. Οπότε έχουμε και λέμε και το παίρνουμε απο την αρχή...
Τι drivers υπάρχουν για τις ΑΤΙ κάρτες?
Σύντομη απάντηση: Οι ανοιχτοί radeon και radeonhd και ο κλειστός fglrx (ή Catalyst). Αναλυτικά:
(Δείτε το σχετικό άρθρο στο http://www.phoronix.com/forums/showthread.php?t=7032 λέει και άλλα ενδιαφέροντα πράγματα)
Oι δυο ανοιχτοί drivers:
1)Ο radeon: Ουσιαστικά υποστηρίζει όλες τις κάρτες απο τις r100 μέχρι τις r700 με 3D, ενώ για τις κάρτες της σειράς 5xxx προς το παρόν υπάρχει μια μικρή υποστήριξη, χωρίς 3D αν έχετε καινούργια διανομή. (Σόρρυ για την χρησιμοποίηση αυτής της ονομασίας, είναι εύκολο πάντως να δείτε σε ποιές κάρτες αντιστοιχεί. Γρήγορος οδηγός είναι ο r700-->4xxx, r600-->HD2xxx και 3xxx, r500-->X1xxx). Δουλεύει αρκετά καλά, με 3D μέχρι τις r700. Αναπτύσσεται κυρίως απο την RedHat.
2)O radeonhd: Υποστηρίζει τις r500-r700. Αναπτυσσόταν απο την Novell, σύμφωνα με τις ανοιχτές προδιαγραφές της AMD. Aυτή τη στιγμή τρέχει καλά το 2D, το βίντεο, οπου και υποστηρίζει επιτάχυνση ΧV, και υποστηρίζει 3D μέχρι και τις r700, χωρίς όμως DRI2. Πλέον η εξέλιξή του έχει σταματήσει, ουσιαστικά καμία διανομή δεν θα τον χρησιμοποιήσει στο μέλλον. Ο μόνος λόγος να ασχοληθείτε μαζί του είναι η υποστήριξη HDMI audio.
update: Για να μην μπλέκετε με δύσκολες διαδικασίες, οι νέες διανομές (απο τον Απρίλιο του 2010) έχoυν σαν προεπιλογή τον ανοιχτό driver με 3D για όλες τις κάρτες πλην της σειράς 5xxx. Για παλιότερες διανομές έχουν γραφτεί οδηγοί για να έχετε 3D με τους ανοιχτούς drivers με τις r600&r700. Για openSuSE δείτε εδώ. Για ubuntu μπορείτε να δείτε τον οδηγό του kouskous εδώ. Σε κάθε περίπτωση αυτή τη διαδικασία δεν την προτείνω για αρχάριους χρήστες, καλύτερα να τα πάρετε έτοιμα απο τις νέες διανομές.
Οι δυο παραπάνω drivers προτείνονται απο εμένα για το μεγαλύτερο ποσοστό των χρηστών, αφού οι επιδόσεις τους στα 2D γραφικά είναι καλύτερες απο τον κλειστό driver. Εκτός άμα θέλετε γρήγορο 3D για τις νεότερες κάρτες, όπως καινούρια παιχνίδια στο wine, οπότε διαβάζετε παρακάτω....
Η διαφορές τους ήταν ελάχιστες. Γενικος κανόνας ήταν οτι η υποστήριξη νέων καρτών ερχόταν πρώτα στον radeonhd , ενω η υποστήριξη καιινούριων χαρακτηριστικών που επηρεάζουν ολη την οικογένεια καρτών της ΑΤΙ έφτανε πρώτα στον radeon. Τον τελευταίο καιρό, η ανάπτυξη του radeon είναι ταχύτατη, ενώ ο radeonhd πάει σιγά-σιγά προς εξαφάνιση...
Και τελευταίος και καλύτερος(?) με τον οποίο θα ασχοληθολύμε απο εδώ και κάτω:
3)Ο fglrx, ή αλλιώς ο κλειστός driver της ΑΤΙ, ή ο catalyst ή όπως θέλετε πείτε τον. Οι νεότερες εκδόσεις, απο τον 9.4 υποστηρίζουν απο τις r600 και πάνω, ενώ προς το παρόν είναι ο μόνος τρόπος για να παίξει σωστά και γρήγορα μια κάρτα της σειράς 5xxx. Έχει κομμάτια που είναι open-source, κυρίως packaging scripts ωστε να εντοπίζονται και να διορθώνονται προβλήματα κατα την εγκατάσταση. Ξεκίνησε ως driver για μεγάλα συστήματα που κάνουν με τις ώρες rendering και ευτυχώς ή δυστυχώς δεν έχει ξεφύγει και πολύ απο αυτό. Λόγω της προϊστορίας αυτής έχει πολύ γρήγορο 3D, στις περισσότερες περιπτώσεις πιο γρήγορο απο αυτό στα windows. (στις nvidia η απόδοση είναι χειρότερη απο οτι στα παραθύρια). Η επόμενη δυνατότητα που απέκτησε είναι μερικώς επιταχυνόμενο βίντεο, και καλύτερη ενσωμάτωση στον Xorg (με το AIGLX) και τώρα τελευταία, απο την έκδοση 10.6 γρήγορο 2D. Επίσης μοιράζεται ένα πολύ μεγάλο μέρος του κώδικά του με τον αντίστοιχο driver των windows.
Eπίσης υποστηρίζει παίξιμο HD βίντεο χωρίς να απασχολεί σχεδόν καθόλου τον επεξεργαστή. Για να το κάνετε να δουλέψει, είναι λίγο δύσκολο, κοιτάξτε στο blog του Mitsara77
Αυτά με τα θεωρητικά/ιστορικά/περι ανέμων και υδάτων. Πρακτικά πραγματάκια τώρα...
Εγκατάσταση: Δεν ξέρω τι γίνεται με τα πακέτα που δίνουν οι διανομές ή το πως δουλεύει στην κάθε διανομή ή το πως συνίσταται να περνιέται. Πολλά έχω ακούσει, δεν έχω συναντήσει προβλήματα στο δικό μου PC, αν και έχω προσπαθήσει πολύ να μην δουλέψει. Εγώ προτείνω χωρίς να αναλαμβάνω καμία ευθύνη, να γίνεται εγκατάσταση με τον παλιό καλό τρόπο, πλήρως χειροκίνητα. Επίσης δεν γνωρίζω αν κάποια διανομή θέλει να απεγκαταστήσεις πράγματα κτλ. Όποιος θέλει και έχει στοιχειώδεις γνώσεις απο εντολές δοκιμάζει. Άμα σας φαίνεται δύσκολο προτιμήστε τα εργαλεία της διανομής σας. Αφού εξασφαλίσουμε οτι έχουμε όλα τα απαραίτητα (kernel source, gcc, make κτλ, ρίξτε μια ματιά στα release notes), κατεβάζουμε το αρχείο απο το http://ati.amd.com/support/driver.html και αφού το κάνουμε εκτελέσιμο το τρέχουμε σαν root και πατάμε enter, enter, enter μέχρι να τελειώσει. Αυτό είναι. Restart και παίζει, χωρίς εντολές, χωρίς τίποτα. Το μόνο που πρέπει να προσέξουμε είναι να τον απεγκαθιστούμε πριν περάσουμε κάποιον άλλον. Επίσης αν γίνει αναβάθμιση στον πυρήνα πρέπει ή να ξαναπεραστεί (απεγκατάσταση, restart και εγκατάσταση) ή να γίνει compile μόνο το kernel module. Για το τελευταίο υπάρχει επιλογή όταν θα τρέξουμε το εκτελέσιμο. Η απεγκατάσταση γίνεται αν δώσουμε σαν root τις παρακάτω εντολές
cd /usr/share/ati (πάμε στον κατάλογο) ./fglrx-uninstall.sh (τρέχει το πρόγραμμα απεγκατάστασης & επαναφέρει τον υπολογιστή στην προηγούμενη κατάσταση)
Αν έχετε παλιότερη κάρτα αναγκαστικά κατεβάζετε την έκδοση 9.3 που όμως δεν τρέχει με τους καινούριους πυρήνες, υποστηρίζει μέχρι και τον 2.6.28.
Εγκατάσταση (2): Στην περίπτωση που δεν θέλετε να κάνετε χειροκίνητη εγκατάσταση για οποιονδήποτε λόγο, υπάρχουν τα αντίστοιχα εργαλεία της διανομής σας. Με ένα σύντομο ψάξιμο εδώ ή αλλού θα βρείτε οδηγίες. Απλά προσέξτε μέχρι ποιό σημείο θα τις ακολουθήσετε (βλ παρακάτω).
Βήμα δεύτερο: Ρυθμίσεις, πχ του xorg.conf. Αν παίξει με την μια, δεν χρειάζεται να κάνετε τίποτα. Αυτό. Προτείνω να μην κάνετε τίποτα απο οτι θα διαβάσετε στα διάφορα forum-blog, αφού ο driver στήνεται μόνος του αρκετά καλά. Τα περισσότερα έχουν ξεμείνει απο τότε που έπρεπε πράγματι να πειράξουμε πράγματα για να δουλέψει σωστά. Εκτός και αν περάσετε παλιά έκδοση. Το ίδιο ισχύει και για εντολές όπως aticonfig --input=/etc/X11/xorg.conf tls=1 ή επίσης στο SuSE δεν έχει κανένα νόημα η εκτέλεση εντολών όπως sax2 -r 0=fglrx (μην τις εκτελέσετε, δεν ξερω αν ισχύουν έτσι όπως τις έγραψα).
Βήμα τρίτο: Ρύθμιση άλλων πραγμάτων. Απο την έκδοση 10.6 δεν χρειάζεται να κάνετε τίποτα. Απλά σιγουρευτείτε οτι τρέχει η νέα 2D επιτάχυνση. Θα πρέπει (μην φοβάστε, δεν πειράζουμε κάτι οπότε δεν χαλάει τίποτα) να δώσετε σε μια κονσόλα την εντολή
cat /var/log/Xorg.0.log | grep 2D και ο υπολογιστής να "απαντήσει" (==) fglrx(0): ATI 2D Acceleration Architecture enabled. Αν δώσετε την εντολή και δεν πάρετε απάντηση μάλλον κάτι πάει στραβά, οπότε ή ανοίγετε ένα θέμα στο φόρουμ, ή δοκιμάζετε να την ενεργοποιήσετε με την εντολή (σαν root): aticonfig --set-pcs-str=DDX,Direct2DAccel,TRUE
Τελειώσαμε και με το σετάρισμα.
Πιθανά προβλήματα με τον fglrx:
- Αν τα πράγματα δεν πάνε καλά όταν τρέχουν τα εφέ ή όταν παίζει βίντεο, σιγουρευτείτε οτι είναι ενεργοποιημένη η 2D επιτάχυνση (δείτε παραπάνω)
- Αν ο flash player σε fulscreen όταν έχετε εφέ παίζει χάλια, κλείστε τα εφέ (σιγά μην φτιάξει, ο flash είναι για τα μπάζα). Δείτε το βιντεάκι με πχ τον VLC, θα το βρείτε στον κατάλογο /tmp .Ή επίσης μπορείτε να κράξετε ελεύθερα τον flash ως το χειρότερο πρόγραμμα που έχει γραφτεί. Γκρινιάξτε ελεύθερα.
Λιγότερο πιθανά προβλήματα (αλλά αρκετά συχνά)
-
Αν αντιμετωπίζετε παγώματα σε 3D εφαρμογές πχ στο compiz/Kwin τα ταλαντευόμενα παράθυρα ή σε παιχνίδια. Βάλτε σαν boot option δοκιμαστικά για αρχή το "nopat". Aν βελτιωθεί κάντε το μόνιμο πχ στο δικό μου η γραμμή του grub είναι: kernel /boot/vmlinuz-2.6.27.... root=/.... resume=/...... splash=silent showopts nopat vga=0x375. Καλό θα ήταν να δοκιμάζατε σε κάθε εγκατάσταση μιας νεότερης έκδοσης αν δουλεύει χωρίς αυτό. Αυτό δουλεύει και σε κάρτες nvidia που εμφανίζουν τα ίδια συμπτώματα.
-
Όταν παίζετε βίντεο με το Kaffeine (του KDE3) υπάρχει περίπτωση να αντιμετωπίζετε "κολλήματα" στην κίνηση, και μερικές φορές να πάει και μερικά καρέ πίσω ή να εναλλάσει δυο καρέ. Δοκιμάστε στο Kaffeine: settings-->παράμετροι xine-->subtitles-->προχωρημένες επιλογές και εδώ ξετικάρετε το κουτάκι "separate.use_unscaled_osd". Θα χαλάσει λίγο την ποιότητα των υποτιτλων αλλά θα διορθώσει τα κολλήματα. Δεν έχω εμπειρία απο άλλους players, αν υπάρχει αντιστοιχία ή αν έχουν το ίδιο πρόβλημα.
-
Όταν παίζουμε οποιοδήποτε βίντεο χρησιμοποιώντας έξοδο XVideo (Xv) τα χρώματα είναι "ξεπλυμένα" μερικές φορές. Δεν ξέρω τι γίνεται όταν επιλέγουμε άλλες εξόδους, νομίζω όμως οτι δεν υπάρχει τέτοιο πρόβλημα. Απο διάφορα που έχω διαβάσει το "χαρακτηριστικό" αυτό συμβαίνει και στα windows. Το κατάλαβα αυτές τις μέρες, οπου και δοκιμάζω το opensuse 11.2 το beta και αναγκαστικά είμαι με τον radeonhd, οπου δεν έχει αυτό το πρόβλημα στο Xv. Λύση για να έχουμε και Xv και πλήρη γκάμα χρωμάτων δεν βρήκα. Δειτε μια σχετικη συζητηση εδω
Κύρια πηγή είναι τα forum του www.phoronix.com ενώ τις εξελίξεις στους ανοιχτούς drivers μπορείτε να τις δείτε περιληπτικά στο http://wiki.x.org/wiki/RadeonFeature
Οι "συμβουλές" είναι δοκιμασμένες με ΑΤΙ 4850, 3650 και 3450 απο εμένα και τον DjDoo (Δημήτρης), moderator στα forum του compiz.
edit: Προσπαθώ να κρατάω το blog ενημερωμένο. Οι αλλαγές/προσθήκες απο εδώ και στο εξής θα έχουν και ημερομηνία.
Διορθώσεις που έχουν γίνει: Διόρθωση μετά την υπόδειξη του gnu_labis, ορθογραφικά λάθη, μερικές προσθήκες, αλλαγή τίτλου, λύση resize/restore σε ubuntu 9.04, λίγες συμπληρώσεις για τους ανοιχτούς drivers, λύση για το βιντεο στο Kaffeine αφού τελικά όλοι οι γνωστοί μου είχαν το ίδιο πρόβλημα (25/9/2009). Ξεπλυμένα χρώματα στο Xv και link, λίγες προσθήκες για τους ανοιχτούς drivers (10/10/2009) Eπιτάχυνση με ανοιχτούς drivers σε openSuSE (15/10/2009), Επιτάχυση βίντεο XvBA μέσω Vaapi και link στο blog του Mitsara77 (5/11/2009). update για τους ανοιχτούς drivers, direct2d για τον fglrx οπότε και το μισό άρθρο διαγράφηκε(17/6)
- Συνδεθείτε ή εγγραφείτε για να σχολιάσετε
Σχόλια
Ωραίος! Πολύ καλή δουλειά, να ξεκαθαρίσει κ λίγο η κατάσταση.
Έχω μόνο μία παρατηρήση να κάνω:
Μπορεί να μην το κατάλαβα καλά, αλλά εκεί που λες ότι ο radeonhd δεν υπάρχει σε πακέτο, κ θέλει compile, είναι λάθος (εκτός κ αν ήθελες να πεις κάτι άλλο). Για του λόγου το αληθές:
http://packages.debian.org/search?keywords=radeonhd
http://packages.ubuntu.com/search?keywords=radeonhd
https://admin.fedoraproject.org/pkgdb/packages/name/xorg-x11-drv-radeonhd?_csrf_token=31436f4db6efa323e1c217a7cad53f6ccb4ca4c5
http://packages.opensuse-community.org/index.jsp?searchTerm=radeonhd
http://www.archlinux.org/packages/?sort=&arch=&repo=&q=radeonhd&last_update=&limit=50
κλπ κλπ
-- gnu_labis
Το Linux ΔΕΝ είναι Windows!!!
Λάθος δικό μου. Εννοούσα για το 3D branch. Διορθώθηκε.
Teddy, πολύ καλό και πολύ χρήσιμο άρθρο. Δεν του βάζεις ένα λίιιγο πιο κατανοητό τίτλο ώστε να καταλαβαίνει το google περί τίνος πρόκειται και δεν το βάζεις και κάπου στο FAQ;Για παράδειγμα, έχουμε αυτό το άρθρο
http://www.linuxinsider.gr/content/Πως-εγκαθιστώ-drivers-για-την-κάρτα-γραφικών-μου
το οποίο αφορά όλες τις κάρτες και μάλλον χρειάζεται ενημέρωση.
[μικρό κακοπροαίρετο σχόλιο]
Εκτός από το να βάλουν κάτι σε gnome, xfce, fluxbox, ή ό,τι άλλο θέλουν, πέραν του KDE! :D
[/μικρό κακοπροαίρετο σχόλιο]
Τα είπαμε κ στη συνάντηση, στον αγώνα gnome vs kde εγώ θα κράταγα τη σφυρίχτρα, αλλά σε αυτή την περίπτωση, δεν συγκρατήθηκα :P
-- gnu_labis
Το Linux ΔΕΝ είναι Windows!!!
Δεν κρατιέμαι. ;)
Μπορούν να κάνουν και κάτι άλλο: να πετάξουν την ATI και να βάλουν μια nVidia ή ακόμα και την onboard Intel τους όπου δεν θα χρειαστούν καν drivers για να δουν όλα τα εφέ του KDE4... :)
Ωπα, μην τα μπλέκουμε! Η αλλαγή μεγέθους των παραθύρων παίρνει ώρα στις ΑΤΙ και όταν τρέχουμε compiz με gnome. Δεν φταίει το KDE σε αυτό. Το αστείο της υπόθεσης είναι οτι αν έχετε ΑΤΙ και τρέξετε compiz/ΚWin σε διανομή στο virtualbox, το resize και το restore τρέχουν κανονικά και απροβλημάτιστα.. Το δοκίμασα και σήμερα με τον "Μονομάχο".
Τώρα πραγματικά δεν ξέρω τι να πω σε αυτό που λέει ο dimitris: Γράφω πιο πάνω τι μπορείτε να κάνετε με τις ΑΤΙ και τον εκάστοτε driver, διαλέγετε και παίρνετε, ΑΤΙ, nvidia, intel. Mόνο που μετά την απομάκρυνσή σας απο το ταμείο ουδέν λάθος αναγνωρίζεται... Άντε μετά να την πάτε πίσω και να πείτε οτι η κάρτα δεν δουλεύει όπως θα θέλατε σε linux. Γι'αυτό και έγραψα το αρθράκι, τουλάχιστον να έχουμε υπ'όψιν 5 πραγματάκια πριν δώσουμε αυτά τα 50 (ή παραπάνω) ευρώπουλα.
Teddy, καλά έκανες και έγραψες το άρθρο. Είναι πολύ διαφωτιστικό και χρησιμότατο. Επειδή όμως οι drivers σε ATi είναι μια πονεμένη ιστορία (αναγνωρίζω βέβαια τα βήματα προόδου) πέταξα την μπηχτή μου ότι μπορούν όσοι θέλουν να προτιμήσουν τις nVidia ή τις intel. Ήταν λίγο πολύ πλάκα, αλλά είχε και μια δόση αλήθειας: η nVidia παραδοσιακά έδινε καλύτερη υποστήριξη στο Linux. Και η intel είναι η καλύτερη από τις τρεις - αν και δυστυχώς οι κάρτες της είναι για low-end/laptops κλπ κλπ.