Η μαγεία των 64bit, ή πώς η Apple μας κοροϊδεύει!

Ένα απο το παράδειγμα του πως το marketing μπορεί να διαστρεβλώσει την πραγματικότητα για να πουλήσει περισσότερα gadgets σε πρόβατα!iPhone 5c

Κατά την παρουσίαση των νέων iPhone, η Apple φρόντισε να συνδυάσει με μαεστρία διαφορετικές, πραγματικές αναφορές στο hardware των συσκευών, με αποτέλεσμα όσοι δεν γνωρίζουν πολλά απο τεχνολογία να βγάζουν λάθος συμπεράσματα. Και έτσι, κατάφερε και παλι να τους…μαγέψει!

Το πρώτο, και πραγματικό, είναι πως ο νέος επεξεργαστής του νέου iPhone 5s είναι αρκετά γρηγορότερος από αυτόν του προγόνου του. Το ίδιο και όσον αφορά στο σύστημα γραφικών του. Η διαφορά δεν είναι και τόσο κοσμοσυνταρακτική, αλλά είναι αρκετή για να δικαιολογεί μια συσκευή “επόμενης γενιάς”. Απο μόνη της, όμως, δεν θα ήταν αρκετή για να εντυπωσιάσει. Και έτσι, η Apple φρόντισε να προσθέσει τεχνητά προτερήματα στο νέο iPhone 5s. Ή, μάλλον, να παρουσιάσει με έξυπνο τρόπο την τεχνολογική του πραγματικότητα.

1982_commodore.jpg

Όσον αφορά στις επιδόσεις του, η Apple εστίασε στην σχέση του νέου iPhone με… το πρώτο – πρώτο που είχαμε δει, τονίζοντας πως είναι καμιά σαραντάρα με πενηντάρα φορές γρηγορότερα από εκείνο. Όπως σωστά έχει αναφερθεί και σε άλλα sites μέχρι σήμερα, με την ίδια λογική, μπορούμε να το συγκρίνουμε με έναν Commodore 64. Για δες, είναι μέχρι και 2000 φορές πιο γρήγορο από εκείνον! Ωωω!

Συμπέρασμα: η τεχνολογία εξελίσσεται, και η καλύτερη σύγκριση για ένα νέο gadget είναι παντά με αυτά της προηγούμενης γενιάς. Όχι της προηγούμενης… δεκαετίας!

Όσον αφορά στο ότι ο επεξεργαστής του είναι 64bit, αυτό επίσης έχει ήδη συζητηθεί αρκετά, αφού είναι… ηλίθιο από πλευράς της Apple να προσπαθεί να το διαφημίσει! Ναι, είναι η πρώτη που χρησιμοποίησε έναν 64bit επεξεργαστή σε smartphone. Είναι, όμως, παντελώς άχρηστος, και δεν υπήρχε λόγος να το κάνει. Κι επειδή κάπου εδώ τα παπαγαλάκια της εταιρίας θα έρθουν να μας κράξουν, ας εξηγηθούμε.

Page 1 of 3123
...γνωστός και ως Οδυσσέας Κουράφαλος, αρχικός υπεύθυνος για το unregistered. Συντάκτης, γραφίστας, "μαλτιμηντιάς", φανατικός της science fiction και των αστείων γατιών στου ιντερνέτ. "Δηλώνω graphics whore" (παίζω Ms. Pac-Man στο MAME με 2xSAL και το πρώτο Max Payne με FXAA antialiasing). Load "unreg*",8,1.
  • George Lolas

    Ας ανοίξει επιτέλους ο κόσμος τα μάτια του… Δεν είναι και τόσο δύσκολο. Έλεος πια!

  • ha’la’tha

    Ωραίο άρθρο!
    Διαφωνώ μόνο στο κομμάτι της κρυπτογράφησης… *Όλοι* όσοι χρησιμοποιούν κάποιο smartphone για browsing χρησιμοποιούν κρυπτογράφηση (ssl). Έχω όμως την εντύπωση πως για τους αλγορίθμους που χρησιμοποιούνται εκεί (π.χ. τον AES) υπάρχει ήδη υποστήριξη από το hw…

  • guest

    Ρε παιδια εγραψα ενα σχολιο χτες, που χαθηκε; Τελος παντων διαβασα καπου αυτο εδω. Μπορουμε να εχουμε μια τεχνικη αναλυση του;
    http://www.anandtech.com/show/7335/the-iphone-5s-review/4

  • ducklord

    Δεν γνωρίζω αν υπάρχει υποστήριξη από το hardware (νομίζω πως ναι), αλλά η περίπτωση που αναφέρεις ΔΕΝ θα έβλεπε και τόσο σημαντικό κέρδος. Η όποια κρυπτογράφηση γίνεται σε μικρά ποσά δεδομένων, όταν πρωτοφορτώνει μια σελίδα ή όταν αλληλεπιδράς μαζί της. Έτσι, άντε, ανάμεσα σε δυο ΠΑΝΟΜΟΙΟΤΥΠΕΣ συσκευές, η μια 32bit, η άλλη 64bit, να έβλεπες διαφορά της τάξης του… 1 δευτερολέπτου κατά τη χρήση τους. Διαφορά, με άλλα λόγια, που μποιρείς “να κλέψεις” από αλλού (π.χ. με λίγο overclock του επεξεργαστή, με γρηγορότερες μνήμες κ.λπ.).

    Η κρυπτογράφηση όπου θα φαινόταν η διαφορά είναι όταν, για παράδειγμα, προσπαθείς να κρυπτογραφήσεις ένα ΠΑΚΕΤΟ αρχείων αρκετών MBs, το partition ενός δίσκου με μια εφαρμογή σαν το Truecrypt κ.λπ. Πράγματα ολίγον τι… άτοπα, δηλαδή, για τη ΣΗΜΕΡΙΝΗ χρήση των smartphones και tablets.

    Φυσικά, σε δυο, άντε τρία χρόνια από τώρα, και τα smartphones και tablets μας θα έχουν 4GBs μνήμης, και θα έχουν αντικαταστήσει σε μεγάλο βαθμο την τυπική desktop χρήση ώστε να συναντώνται εκεί περισσότερες εφαρμογές που όντως να κερδίζουν από τα 64bits. Μη γελιόμαστε, όμως, ο βασικός λόγος για αυτά, από καθαρά χρηστικής άποψης, είναι οι αυξημένες ανάγκες σε μνήμη και μόνο.

  • ducklord

    Ιδέα δεν έχω. Δεν βλέπω κάτι… :-|

    Για την “τεχνική ανάλυση”, τι… πιο τεχνικό να γράψω από το link που έδωσες; Είναι υπερ-αναλυτικό και υπερ-πλήρες! Εκτός αν εννοείς μια πιο κατανοητή σύνοψη του – αν “ναι”, τότε… Είναι αυτά που είπαμε στο δικό μας άρθρο: ο λόγος για τη μετάβαση σε 64bits είναι οι αυξημένες ανάγκες σε μνήμη που θα έχουν τα ΕΠΟΜΕΝΑ iPhone, iPads και, ίσως, iPods, και η Apple έκανε την κίνηση της από τώρα κυρίως για να προετοιμαστεί για τότε. Με την ευκαιρία, την εκμεταλλεύτηκε με καλό marketing για να την προβάλλει ως κάτι επαναστατικό, ενώ σήμερα ΔΕΝ είναι κάτι όντως χρήσιμο (με έμφαση στο “σήμερα”).

  • ha;la;tha

    Για το browsing έχεις απόλυτο δίκαιο. Έχουν αρχίσει όμως να χρησιμοποιούν ssl και για μεταφορά δεδομένων (υπηρεσίες cloud storage) -το dropbox αρχικά δεν χρησιμοποιούσε ssl για ν’ αποφύγει το “penalty…”. To bittorent sync κρυπτογραφεί… τα πάντα.

  • ducklord

    Άσκηση: βάλε το BitTorrent Sync σε έναν υπολογιστή με 64bit έκδοση των Windows και 2GBs μνήμης και βάλε το και σε έναν υπολογιστή με 32bit έκδοση. Το πιθανότερο είναι πως θα σου φανει γρηγορότερο στον δεύτερο, και ουχί στον πρώτο – όπως και οτιδήποτε άλλο κάνεις. Και αυτό διότι, λόγω 64bit, οι εφαρμογές θα έχουν αυξημένες απαιτήσεις σε μνήμη και “θα σου φάνε” τα 2GBs γρηγορότερα από ό,τι στα 32bit. Σε αυτή την περίπτωση, το όποιο μικρό κέρδος από τα 64bit, χάνεται λόγω του “μπουκώματος” του περιορισμού μνήμης.

    Δεν ξέρεις πόσο λυπάμαι για τη φάση, διότι ΚΑΙ ΕΓΩ ήθελα να δω τα 64bits να κάνουν την επαναστατική διαφορά που τόσοι και τόσοι μας είχαν πει. Να θυμίσω πως δεν είμαι απλά “ένας blogger”, μα έχω ασχοληθεί (και επαγγελματικά) και με επεξεργασία video, μοντάζ, ενώ “επίσημα” υποτίθεται πως είμαι γραφίστας. Όλα προγράμματα που μας είχαν πει πως “θα πετούσαν” στα 64bits. Πίτσες. “Πετούσαν” όταν έβαλα περισσότερη μνήμη και SSD (για την cache / το “swap file” τους, που μπορεί να φτάσει εκατοντάδες GBs), όχι “όταν έβαλα 64bit έκδοση των Windows”.

    Είναι αντίστοιχη… απάτη με τότε που ξεκίνησαν να μας πρωτοπλασάρουν πολυπύρηνους επεξεργαστές επειδή δεν μπορούσαν να ανεβάσουν άλλο τις συχνότητες, και, ανάμεσα σε άλλα, έλεγαν πως “θα είναι καλύτεροι και στο gaming”. Μέχρι και πέντε χρόνια αργότερα, καλύτερος επεξεργαστής για παιχνίδια εξακολουθούσε να είναι “αυτός που έπιανε τα περισσότερα GHz”, και όχι “αυτός που είχε περισσότερους πυρήνες/καλύτερο multithreading”, απλά και μόνο διότι δεν ήταν γραμμένο το software ώστε να το εκμεταλλεύεται. Ανέκδοτο; ΑΚΟΜΗ δεν είναι – ο Firefox είναι ως επί το πλείστον single threaded εφαρμογή.

    Θέλεις να νιώσεις ακόμη καλύτερα με το πώς μας δουλεύουν; Ψάξε βρες 64bit έκδοση του Chrome. Αν βρεις, επίσημη, τρύπα μου τη μύτη. “Ετοιμάζεται”. Ψάξε βρες ΣΤΑΘΕΡΗ και επίσημη έκδοση του Firefox για 64bit. Ομοίως. “Μόνο σε μπέτες”. Πήγαινε και παραπονέσου στους δημιουργούς τους – θυμιζω, Google και Mozilla, “από τα μεγαθήρια του web” (καλά, ειδικά η πρώτη – η δεύτερη… προσπαθεί). Ξέρεις τι θα σου πουν; “Μα, αφού δεν έχεις σημαντικό κέρδος, πέρα από την πρόσβαση σε περισσότερη μνήμη, γιατί να αφιερώσουμε τους πόρους μας εκεί, όταν υπάρχουν σημαντικότερα προβλήματα να αντιμετωπίσουμε;!”.

    Η Apple ορθώς αναγνώρισε πως αυτό είναι ΛΑΘΟΣ ΤΟΥΣ, αφού το web εξελίσσεται ταχύτατα και ήδη έχουμε πήξει στις “web εφαρμογές”. Και σύντομα τα 1, 2 και 3GBs στα οποία έχουν πρόσβαση, θα τους είναι λίγα. ΤΟΤΕ θα χρειάζονται ΚΑΙ αυτές 64bit εκδοχές – όταν, π.χ., δούμε υπερπλήρες Photoshop να… τρέχει στον browser. ΤΟΤΕ η Apple θα είναι έτοιμη. Όλοι οι άλλοι θα τρέχουν.

    Με άλλα λόγια, έριξε πολύ καλό χαστουκάκι στο Android, αλλά για τους λάθος λόγους από ό,τι αναγνωρίζουν οι οπαδοί της: σε ένα χρόνο, άντε, δυο χρόνια από τώρα, ΤΟ ΛΟΓΙΣΜΙΚΟ ΓΙΑ ΤΙΣ ΠΛΑΤΦΟΡΜΕΣ ΤΗΣ θα τρέχει χωρίς πολλά-πολλά προβλήματα σε 64bit, έχοντας πρόσβαση σε 4, 8, 16GBs μνήμης. Στο Android ΤΟΤΕ θα αρχίζει “η μετάβαση στα 64bit”, και… θα έχουμε να γελάμε με αστάθειες, διαρροές μνήμης κ.ά.

    ΤΩΡΑ, τα 64bits της είναι απάτη (έτσι όπως τα πλάσαρε). Δεν το έκανε για ΤΩΡΑ, άσχετα με το τι είπε (για να πουλήσει). Το έκανε, όπως είπα, για το ΤΟΤΕ. Δεν είναι θέμα ΤΩΡΙΝΩΝ επιδόσεων, των ΣΗΜΕΡΙΝΩΝ εφαρμογών. Είναι θέμα του “σε δυο χρόνια θα τρέχεις Final Cut στο smartphone που θα το χώνεις στην TV και θα γίνεται iMac” :-)

  • ha’la’tha

    Ναι, είναι γεγονός ότι καταναλώνουν (γενικά μιλώντας) περισσότερη μνήμη τα προγράμματα στις 64bit εκδόσεις τους. Παραπάνω αναφερόμουν κυρίως στις απαιτήσεις σε επεξεργαστική ισχύ. Δυστυχώς δεν έχω 32bit μηχάνημα για να κάνω την δοκιμή που προτείνεις. Έχω 64bit μηχάνημα όμως με αδύναμο επεξεργαστή (Celeron ULV) και 2 gb και ακόμα και σ’ αυτή την περίπτωση δεν έχω παρατηρήσει να υπάρχει πρόβλημα με την μνήμη (64bit λειτουργικό).
    Όσο για τους chrome και firefox, στα μηχανήματα που έχω linux έχουν κανονικότατα 64bit εκδόσεις.
    Στα υπόλοιπα δεν διαφωνώ:)

  • ha’la’tha

    Να διευκρινίσω ότι το μηχάνημα παραπάνω τρέχει linux, δεν νομίζω όμως ότι θα άλλαζε κάτι με win στην συγκεκριμένη περίπτωση. Ίσως δοκιμάσω με μια 32bit έκδοση κάποιου livecd – το btsync είναι όλο κι όλο ένα εκτελέσιμο, χωρίς πρακτικά εξαρτήσεις…

  • ha’la’tha

    Για όσους θέλουν κάτι πιο τεχνικό για την ARM64 (άρθρο και σχόλια):

    http://www.mikeash.com/pyblog/friday-qa-2013-09-27-arm64-and-you.html

    https://news.ycombinator.com/item?id=6457331

  • ducklord

    Nope, ειδικά ο Firefox ναι μεν “υποστηρίζει 64bit” στο Linux, αλλά το περιβάλλον του είναι σχεδιασμένο με single threaded λογική. Με άλλα λόγια, έχεις επεξεργαστή με 4-8 πυρήνες, και αυτός χρησιμοποιεί τον ΕΝΑΝ. ΑΣΧΕΤΑ με το τι μπορεί να σου δείχνει ο όποιος task manager – επειδή μπορεί, π.χ., το Linux με κάποιον τρόπο “να μοιράζει το φόρτο του ενός thread σε πολλούς πυρήνες”, ο ίδιος ο Firefox ΔΕΝ είναι σχεδιασμένος ώστε να τους εκμεταλλεύεται αποτελεσματικά. Αυτό ΘΑ συμβεί κάποια στιγμή στο απροσδιόριστο μέλλον, και είναι ο λόγος της ύπαρξης του Electrolysis project της Mozilla.

    Βλέπεις πόσοι διαφορετικοί παράγοντες “μετράνε” για το “αν είναι σύγχρονη μια εφαρμογή”; Για αυτό “τα παίρνω στο κρανίο” όταν βγαίνει η Apple και παρουσιάζει τα 64bits ως θαύμα, ως τη βασική διαφορά του τωρινού επεξεργαστή της από τους προηγούμενους (είναι η βασικότερη για ΤΟ ΜΕΛΛΟΝ αλλά η πλέον άχρηστη για ΤΩΡΑ). Διότι αγνοεί επιδεικτικά 99 από τις 100 πιθανές παραμέτρους (λέμε τώρα) μετατρέποντας τη μια από αυτές σε “μαρκετινίστικο τρύκ”.

    Όσο για τις αυξημένες απαιτήσεις σε μνήμη των 64bits σε σχέση με τα 32bits… Εμ… Ξέρεις, δεν χρειάζεται να έχεις 32bit hardware για να δεις “τις διαφορές ανάμεσα σε 32bit και 64bit software”! Απλά εγκατέστησε μια 32bit εκδοχή ενός λειτουργικού συστήματος και δίπλα μια 64bit. Όχι, “δεν θα γίνει 64bit η 32bit εκδοχή επειδή τρέχει σε 64bit hardware”.

    Έτσι μπορείς να δεις και πρακτικά όλα αυτά που λέω. Πρώτον, θα δεις καλύτερη απόκριση στα 64bit σε συγκεκριμένες εφαρμογές που είναι γραμμένες ώστε να τα εκμεταλλεύονται και να “τρώνε” μπόλικη μνήμη (π.χ. Photoshop, Premiere, αλλά σε αυτά το όποιο κέρδος είναι περισσότερο από τη μνήμη, όχι τον ίδιο τον 64bit “διαφορετικό από τις 32bit εκδοχές τους” κώδικα τους). Δεύτερον, θα δεις τα ίδια προγράμματα να σου τρώνε λίιιιγο περισσότερη μνήμη και ίσως να πηγαίνουν και κομματάκι πιο αργά σε τυπικά σενάρια χρήσης (π.χ. Firefox).

    Και ΑΥΤΟ “πούλησε” η Apple ως “εκπληκτική διαφορά”. Τα 64bits. Αυτό που, όπως θα δεις όταν και αν το δοκιμάσεις, κάνει ένα 0,1% της συνολικής διαφοράς στην σημερινή εμπειρία χρήσης.

  • ducklord

    …και δες το conclusion του. Τι λέγαμε; Δεν έχεις ΣΗΜΕΡΑ κέρδος, ΩΣ ΧΡΗΣΤΗΣ, από τα 64bits. Έχεις ως προγραμματιστής, και αυτό ΔΕΝ έρχεται τόσο από τα ίδια “τα 64bits”, όσο από τις αλλαγές και εξελίξεις στην αρχιτεκτονική του επεξεργαστή σε σχέση με τους προκατόχους του (που ΔΕΝ σχετίζονται ντε-και-καλά “με το ότι είναι 64bits”).

    Με άλλα λόγια, θα μπορούσε να είναι και πάλι ένα 32bit τσιπάκι, και να παρουσιάζει επιδόσεις 99% πανομοιότυπες με αυτές που παρουσιάζει η 64bit εκδοχή του που αποκάλυψε η Apple!

    :-D

  • ha’la’tha

    Ο ff τρέχει εδώ και αρκετές εκδόσεις το flash σε ξεχωριστό thread (plugin-container), για λόγους σταθερότητας όμως, όχι τόσο επιδόσεων. Ακόμα και χωρίς αυτό, ποιος λέει ότι όσοι τρέχουν ff δεν τρέχουν άλλα προγράμματα ταυτόχρονα; Ο υπολογιστής δεν είναι “one trick pony”. Μπορείς να κάνεις πολλά πράγματα ταυτόχρονα και… πρακτικά κάνεις. Η διαμάχη ff-chrome στον τομέα των επιδόσεων αν δείχνει κάτι είναι το πόσο υπερτιμημένο είναι το multithreading:)
    Εμ… ξέρεις δεν το έχω χάσει ακόμα να εγκαθιστώ 32bit λειτουργικό σε 64bit μηχάνημα… θα έκανα το test αν είχα έτοιμη εγκατάσταση. Γι’ αυτό μετά αναφέρω το live cd :p
    H Apple “πουλά” κατα καιρούς και πράγματα που είναι εντελώς ψεύτικα, στο αν έχει διαφορές στις επιδόσεις από τα 32 στα 64 bit θα κολλούσε;

  • ducklord

    Έχει ΤΕΡΑΣΤΙΑ διαφορά στις επιδόσεις το “αν χρησιμοποιεί multithreading ή όχι”! Ακόμη και αν “κάνεις πολλά πράγματα ταυτόχρονα”, το λειτουργικό πάντα δίνει προτεραιότητα “στο πρόγραμμα που είναι μπροστά σου” (και όχι στα “background tasks”). Ως εκ τούτου, εκείνο μπορεί να εκμεταλλευτεί απόλυτα τον επεξεργαστή σου.

    Όταν, τώρα, έχεις τετραπύρηνο με multithreading (aka: παρουσιάζεται ως οκταπύρηνος) και ο Firefox χρησιμοποιεί μόνο δυο παράλληλα tasks, ουσιαστικά χρησιμοποιεί το 1/4 του επεξεργαστή σου. Το σημαντικό, όμως, δεν είναι πως “χάνει σε επιδόσεις” αλλά το ότι… “μπουκώνει”!

    Ακόμη και αν το plugin-container παρουσιάζεται ανεξάρτητα (σημείωση: δεν είναι “μόνο για το Flash”, η Mozilla θέλει να μεταφέρει εκεί όλα “τα πρόσθετα”), ο βασικός browser, ή μάλλον το βασικό περιβάλλον του, έχει ΕΝΑ thread. Αυτό, για να το καταλάβεις πρακτικά, ξέρεις τι σημαίνει;

    Πες πως στον Chrome έχεις ανοιχτές τέσσερις σελίδες σε tabs. Καθεμιά θα είναι ένα thread, και υπάρχει και ένα πρόσθετο thread για το περιβάλλον. Στον Firefox, απλοποιημένα, ΟΛΑ είναι σε ένα thread.

    Εκεί, λοιπόν, που είσαι σε ένα tab, κάνεις κλικ στο άλλο. Ο Chrome, “ο κεντρικός” Chrome, απλά “δίνει προτεραιότητα σε άλλο process” (σε αυτό του tab που διάλεξες) και στο παρουσιάζει επιτόποτ. Το κεντρικό thread-ελεγκτής απλά “μανατζάρει” το ποιο από τα άλλα είναι ενεργό και το πώς συνεργάζονται μεταξύ τους.

    Στον Firefox, στην ίδια περίπτωση, πες πως φορτώνει μια σελίδα και κάνεις κλικ σε ένα άλλο tab. Επειδή υπάρχει ΕΝΑ κεντρικό thread, που “μέχρι τώρα φόρτωνε τη σελίδα που έβλεπες”, έχει ήδη λάβει εντολή “να κατεβάσει πράμα” από τη σελίδα που έβλεπες. Εσύ “του λες” πως θέλεις να πας σε άλλο tab. Αυτό, σαν… αγχωμένος και πρωτάρης υπάλληλος του Δημοσίου, σηκώνεται όρθιο, ενώ κατεβάζει γρήγορα-γρήγορα ό,τι προλάβει “να τελειώσει” από τη σελίδα που έβλεπες, και μετά πηγαίνει… στο διπλανό δωμάτιο, αναλαμβάνοντας ρόλο “ελεγκτή tabs”, για να δώσει προτεραιότητα στο άλλο tab. Μετά, φεύγει και πηγαίνει τρέχοντας σε τρίτο δωμάτιο, διότι ο ίδιος Θρέντης (να του δώσουμε και ονοματάκι) “τα κάνει όλα”, και έτσι πρέπει να πει και στο νέο tab πώς να παρουσιαστεί. ΩΠ! Έχεις και addons, όμως, και κάποια από αυτά επηρεάζουν τη σελίδα! Φεύγει τρέχοντας, λοιπόν, να πάει και σε αυτά, και να τους πει “τι να κάνουν” – και, παράλληλα, “ρίχνει και ματιές” συνεχώς, από τα ενδιάμεσα παράθυρα, σε… εκείνο το πρώτο tab “που κατέβαζε πράμα” και το παράτησε στη μέση.

    Στον Chrome αυτά γίνονται παράλληλα. Κατάλαβες τη διαφορά; Το ένα έχει “τη δύναμη της μάζας”, το άλλο αναλαμβάνει ρόλο… Βέγγου, τρέχοντας να τα προλάβει όλα.

    Είναι καλύτερο το μοντέλο του Chrome; Ναι. Μακράν. Δυστυχώς, όμως, τρώει και τα κέρατα του σε μνήμη, απέχει από το τέλειο (λόγω των πολιτικών ασφαλείας της Google που δεν επιτρέπουν στενή συνεργασία addons/pages όπως στον Firefox) και σε πολλά σημεία, αντίθετα με το τι φαίνεται, σηκώνει πολύ περισσότερο optimization (π.χ. ο Firefox σε θέματα μνήμης του βαράει στα αυτιά).

    Γενικά, οι δυο browsers ταιριάζουν κυρίως σε δυο εντελώς διαφορετικά προφίλ χρηστών: Chrome για όσους εργάζονται με λιγότερα από 5-10 tabs και χωρίς πολλά-πολλά addons, Firefox για όσους “είναι large” και έχουν δεκάδες addons και συχνά-πυκνά… εκατοντάδες σελίδες ανοιχτές (όπου ο Chrome απλά θα… παρέδιδε το πνεύμα – λίγο πριν ανατινάξει το PC σου).

    Σημειώνω πως ΚΑΙ ο Firefox “το πηγαίνει για multi-threaded”, αλλά οι άνθρωποι εκεί είναι βόδια. Πριν 5 χρόνια ξεκίνησαν την προσπάθεια, μετά από ένα χρόνο τα παράτησαν θεωρώντας πως “δεν είναι σημαντική” (πίτσες, απλά ήθελαν να δώσουν προτεραιότητα στο mobile για να χωθούν και σε αυτή τη μεγάλη αγορά) και τώρα, που είδαν ΚΑΙ τα κινητά και tablets να γίνονται πολυπύρηνα, χέστηκαν, με το συμπάθειο, κατάλαβαν πως έκαναν πατάτα και έχουν μείνει πίσω μια πενταετία και ανέστησαν και πάλι το project (Electrolysis, ψάξ’το). ΘΑ δούμε αποτελέσματα από αυτό, στο μέλλον, και πάλι… Ίσως! Το εχουν αναλάβει 3-4 προγραμματιστές (ΜΟΝΟ, και κατά τα άλλα είναι από τα σημαντικότερα features που θα έπρεπε να έχει για να εκμεταλλεύεται το σύγχρονο hardware), και ο boss της παρέας τους, αν θυμάμαι καλά, έχει προειδοποιήσει κιόλας πως “αν δεν τους κάτσει εύκολα, θα το παρατήσουν”.

    Εγκυκλοπαιδικά, μπορείς να το ενεργοποιήσεις εδώ-και-τώρα στις μπέτες του ff. Θα σου λειτουργήσει για 5, άντε 10 δευτερόλεπτα, και χωρίς add-ons, ασυμβατότητες με στοιχειώδεις λειτουργίες του ίδιου του browser (παίζει και να σου δουλέψουν… τα μενού) κ.λπ. Αξίζει να το κάνεις ΜΙΑ φορά για να… πάθεις κοκομπλόκο και να αρχίσεις να κάνεις κούκου όταν δεις πόση, ω, πόση διαφορά έχει στην ταχύτητα. Περίμενα “optimization”, αλλά με αυτό έμεινα λίγο κάγκελο. Κρίμα να είναι παντελώς και ολοκληρωτικά άχρηστο εδώ και τώρα.

  • ha’la’tha

    Θα δοκιμάσω το electrolysis (το έχω ακουστά).
    Η σύγκρισή μου ήταν ανάμεσα σε ff και chrome. Ο λόγος: Ένα τεράστιο single threaded πρόγραμμα όπως ο ff καταφέρνει και στέκεται μια χαρά από άποψη επιδόσεων απέναντι στον μοντέρνο (ναι, γνωρίζω πως δουλεύει) chrome.
    Δεν ακυρώνω το multithreading, αλλά *δεν έχει σε όλα τα workloads τα ίδια αποτελέσματα* και έχει και σημαντικό κόστος. Ειδικά στην περίπτωση των 2 browsers θα έπρεπε να προβληματίζει το γεγονός ότι οι επιδόσεις είναι παραπλήσιες.
    Πάντως, φαίνεται ότι στο μέλλον θα πάμε σε προγράμματα που θα παραλληλίζονται… “όσο πάει”. Η νέα γλώσσα προγραμματισμού της Mozilla (rust) το έχει σαν βασικό στόχο, και ένα από τα project τα οποία χτίζονται σε αυτήν είναι μια layout engine για browsers (servo).

  • ducklord

    Αμ “δεν στέκεται” – και για αυτό “έβγαλε” τα plugins από το βασικό κομμάτι του η Mozilla στο “παράλληλο” plugin-container. ΝΟΜΙΖΕΙΣ πως “στέκεται”, λόγω του δικού σου προσωπικού στυλ χρήσης! Να σου δείξω το πρόβλημα στην πράξη – θα το δεις περισσότερο αν έχεις PC… τριετίας και βγάλε (πριν τους Core iX) όπου “μπουκώνει” ευκολότερα κάθε single thread.

    Φτιάξε ένα shortcut στο desktop σου που να αναλαμβάνει να τρέξει τον καθένα από τους δυο browsers. Πρόσθεσε μετά το “Run:…” όπου βρίσκεται η διεύθυνση του browser στο file system σου τις διευθύνσεις από 5 “σχετικά βαριά” sites (το πρώτο μάλλον είναι… η αρχική σελίδα μας :-D ). Κλείσε τους, ή καλύτερα κάνε και ένα restart “να είσαι σίγουρος πως οι δευτερεύοντες παράγοντες που μπορεί να επηρεάσουν το test είναι στο minimum” και…

    Κάνε διπλό κλικ στο ένα shortcut και αμέσως μόλις εμφανιστεί ο browser και αρχίσει να φορτώνει τις σελίδες, άρχισε να “χτυπάς” απανωτά CTRL+Page Down.

    Θα δεις πως στην περίπτωση του Chrome η μετάβαση από tab σε tab θα είναι σχεδόν στιγμιαία, μα στον Firefox θα έχει σημαντική καθυστέρηση.

    Επανέλαβε με 10 tabs και θαύμασε το τραγικά μεγαλύτερο “μπούκωμα” του.

    Αυτό διότι “βάζει τα πάντα σε σειρά σε ένα thread”. Αυτό ακριβώς “λύνει” το Electrolysis (που, όμως… δεν τρέχει – ακόμα – σωστά). Η μαγκιά του FF είναι πως έχει πολύ καλύτερο optimization όσον αφορά στη χρήση μνήμης, οπότε με ενεργοποιημένο το Electrolysis θα σου φανεί ακόμη γρηγορότερος στο παραπάνω τεστ από τον Chrome. Μέχρι το τρίτο tab. Και αν. Ώσπου να φτάσεις στο τέταρτο, “θα σου έχει πέσει” μόνος του, θα βαρεθείς, θα καταλάβεις πόσο ανούσιο είναι αυτή τη στιγμή και θα το απενεργοποιήσεις και πάλι… Δυστυχώς… :-D

    Το αστείο είναι πως ο Opera φαινόταν να έχει καλύτερη engine και από τους δυο, αλλά τα είχε κάνει μαντάρα σε όλα τα υπόλοιπα. Και αντί να τα βελτιώσουν, τα βλήτα πέταξαν την engine και αποφάσισαν να χώσουν ακριβώς “όλα αυτά τα υπόλοιπα” σε έναν κλώνο του Chrome. Κρίμα.

    Στο δε Linux, όπου θα περίμενα να δω να εμφανίζεται κάτι νέο και πρωτότυπο, μου φαίνεται πως απλά παίζουν και αυτοί με κλώνους του Chrome. “Τους χάλασε” το Ubuntu “με τα εύκολα”. :-(

    Όσο για τον “παραλληλισμό”, υποχρεωτικά. Τα GHz έχουν χτυπήσει κόκκινο, και δεν υπάρχει τεχνολογία που να μπορεί να τα αυξήσει περισσότερο (υπό φυσιολογικές συνθήκες – aka: “να μην έχει ο καθένας ένα βαρέλι υγρό άζωτο επάνω από τον επεξεργαστή”). Ευτυχώς, υπάρχουν πια λύσεις που αναλαμβάνουν μερική αυτοματοποίηση της διαδικασίας του παραλληλισμού στη φάση του compiling, από ό,τι γνωρίζω (δεν είμαι προγραμματιστής). Δεν κάνουν την ίδια δουλειά με το “χειροκίνητο” optimization, και δεν μπορούν και να “παραλληλίσουν αυτόματα” προγράμματα που έχουν γραφτεί με εντελως single threaded λογική, αλλά λειτουργούν περισσότερο ως “βοηθήματα” ώστε να μπορεί πια σήμερα ένας προγραμματιστής να γράψει σχεδόν το ίδιο εύκολα “μοιρασμένο” κώδικα τόσο σε πυρήνες του επεξεργαστή, όσο και… της GPU.

  • ha’la’tha

    Εννοείται πως αναφέρομαι στο δικό μου στυλ χρήσης (και σε benchmarks, αλλά δεν μετρούν αυτό που ζητάς, δηλ. αποκρισιμότητα και καλή “συμπεριφορα” ομολογουμένως).
    Έχω δει εξαιρετικά χειρότερη συμπεριφορά του chrome(ium) σε παλιότερα μηχανήματα από τον ff, ακόμα και σε αυτόν τον τομέα. Ξέρω, anecdotal evidence. Μηχάνημα με pentium dula-core και 2 gb ram να αρχίζει να κολλάει με 5-6 tabs όταν κάποια από αυτά φορτώνουν κάτι βαρύ. Να μην μπορείς (ή να καθυστερείς) να αλλάξεις tab μέχρι να βγει το γνωστό παραθυράκι κ.α….

    Για τον opera η απόφαση μάλλον ήταν των “bean counters” της εταιρείας. H ανάπτυξη και συντήρηση μια σύγχρονης layout engine και ενός σύγχρονου js runtime είναι πολύ δύσκολη (και ακριβή) υπόθεση. Γι’ αυτό υπάρχουν τόσο λίγα σήμερα. Απλά θεώρησαν ότι δεν τους συνέφερε.
    Σε linux προσωπικά περιμένω από 2-3 project (midori, qupzilla, web/epiphany) έναν αξιοπρεπή webkit-based browser, αλλά όχι κάτι περισσότερο…