Thursday, September 18, 2014

ARM: Οι βελτιώσεις που φέρνει η αρχιτεκτονική των 64-bit


Η είσοδος των 64-bit στα smartphones είναι γεγονός, όμως πολλοί είναι εκείνοι που ακόμα δεν μπορούν να διαπιστώσουν ή να προσδιορίσουν την υπεροχή τους έναντι των μέχρι τώρα δεδομένων. Η ARM με το ARMv8-A έχει ανοίξει το πρότυπο για την κατασκευή επεξεργαστών 64-bit.

Οι πληροφορίες που μπορείτε να εντοπίσετε στο διαδίκτυο είναι πάρα πολλές αλλά συχνά μπερδεύουν όσους προσπαθούν απλώς να γνωρίσουν κάτι νέο. Κάνοντας, λοιπόν, μία σημαντική κίνηση να σας βοηθήσουμε να μάθετε περισσότερα για την αρχιτεκτονική 64-bit της ARM, την οποία πιθανότατα θα τη συναντάμε πλέον όλο και συχνότερα, χρησιμοποιούμε ως βάση ένα  άρθρο του Αndroid Αuthority και αναλύουμε όσο περισσότερο γίνεται την πορεία της και τα πλεονεκτήματα της χρήσης της.

Ξεκινώντας από λίγα χρόνια πριν μπορούμε εύκολα να παρατηρήσουμε ότι τα δεδομένα των gadget έχουν αλλάξει. Οι πωλήσεις των υπολογιστών έχουν μειωθεί, ενώ τα περισσότερα smartphones και tablets έχουν επεξεργαστές με πάνω από έναν πυρήνα και ταχύτητες συνήθως ανάμεσα στο 1 με 2Ghz. Παρά την πρόοδο που είχαν πραγματοποιήσει, οι συσκευές αυτές δεν είχαν ως στόχο να φθάσουν τις επιδόσεις των υπολογιστών και γι’ αυτό διατήρησαν την αρχιτεκτονική των 32-bit και δεν προχώρησαν σ’ αυτήν των 64-bit. Ήταν, όμως, δεδομένο ότι η συνεχής και ταχύτατη εξέλιξη θα έφερνε νέες απαιτήσεις στην αγορά. 

Η ανάπτυξη εφαρμογών όπως αναγνώριση φωνής, ρεαλιστικά 3D παιχνίδια και οθόνες υψηλής ανάλυσης αναγκάζουν τους κατασκευαστές να προχωρήσουν στα 64-bit για να μπορέσουν να ανταποκριθούν σε όλα όσα τα 32-bit ωχριούν να μας προσφέρουν.

Η ARM είδε ότι χρειαζόταν επεξεργαστές 64-bit, οι οποίοι να είναι ενεργειακά οικονομική, και άρχισε να δουλεύει σε νέα σχέδια πολύ πριν ανακοινώσει τη νέα αρχιτεκτονική ARMv8-A, την πρώτη αρχιτεκτονική που περιλαμβάνει «οδηγίες» για 64-bit. Επίσης, η εταιρία φαίνεται να έχει μάθει από τα λάθη άλλων και έχει κάνει την 64-bit αρχιτεκτονική της πλήρως συμβατή με τις αρχιτεκτονικές 32-bit. Αυτό σημαίνει ότι αν ο επεξεργαστής τρέχει σε ένα λειτουργικό 64-bit, θα μπορεί να τρέξει χωρίς καμία προσαρμογή και ARMv7 32-bit binaries. 

Για το Android, αυτό σημαίνει ότι εφόσον το kernel έχει προσαρμοστεί στα 64-bits (το οποίο έχει ήδη γίνει χάρης στο Linaro) τότε το υπόλοιπο λειτουργικό, από τις βιβλιοθήκες του πυρήνα μέχρι τις εφαρμογές και τα παιχνίδια μπορούν να είναι είτε 32-bit είτε 64-bit.

Όλοι θυμόμαστε τον Α7, που είναι 64-bit και περιλαμβάνει έναν ARMv8 dual-core σχεδιασμένο από την ίδια την Apple, η οποία έχει δικαιώματα ARM αρχιτεκτονικής. Με λίγα λόγια, έχει το δικαίωμα να σχεδιάζει τους δικούς της επεξεργαστές με ARM αρχιτεκτονική, αλλά στη συνέχεια είναι υποχρεωμένη να τους στέλνει προς έγκριση στην ARM, ώστε να γίνεται πλήρες έλεγχος της συμβατότητάς τους με μια σειρά από τεστ ειδικά σχεδιασμένα από την εταιρία για το συγκεκριμένο έλεγχο. Ο A7 υπάρχει στο iPhone 5S και η ανακοίνωση του είχε προκαλέσει μεγάλο θόρυβο στον τεχνολογικό τομέα.

Σε λίγο καιρό όμως θα κυκλοφορήσει το καινούριο Android L το οποίο θα επιτρέπει σε συσκευές με 64-bit ARM επεξεργαστές να χρησιμοποιήσουν πλήρως την τεχνολογία τους. Αλλά τι πλεονεκτήματα θα έχει αυτή η κίνηση;

Η «καρδιά» του επεξεργαστή αποτελείται από registers. Πρόκειται, ουσιαστικά, για θέσης εσωτερικής αποθήκευσης που αποθηκεύουν νούμερα και διευθύνσεις. Στην πραγματικότητα, κάθε ενέργεια που κάνει ένας επεξεργαστής καταλαμβάνει μια από αυτές τις θέσεις. Όταν ένας επεξεργαστής κάνει περίπλοκες πράξεις αυτές οι θέσης χρησιμοποιούνται ξανά και ξανά. Όταν όλες οι θήκες χρησιμοποιούνται ο μόνος τρόπος για να ελευθερωθεί μια είναι να περάσει το περιεχόμενο της σε μια θέση από την RAM, να εκτελέσει αυτήν την ενέργεια και μετά να φορτώσει εκ νέου την προηγούμενη από την RAM. Αυτό γίνεται πολύ γρήγορα και δεν μπορείτε να το αντιληφθείτε αλλά δεν είναι και πολύ αποδοτικός τρόπος.

Η αρχιτεκτονική 32-bit ARMv7 έχει 15 registers, μεγέθους 32-bit έκαστος, ενώ η ARMv8 έχει 31, μεγέθους 64-bit. Αυτό με απλά λόγια σημαίνει ότι με τις κατάλληλες προσαρμογές στον κώδικα θα μπορούν να αποθηκεύουν περισσότερες πληροφορίες και να επεξεργάζονται πιο γρήγορα τις πληροφορίες, αφού θα απαιτείται μικρότερη αναζήτηση των στοιχείων στη RAM. Από πλευρά ενεργειακής κατανάλωσης η αρχιτεκτονική αυτή είναι ή το ίδιο οικονομική με τα 32-bit ή οικονομικότερη γιατί θα εκτελεί πιο γρήγορα τις εργασίες.

Στους υπολογιστές θα έχετε ακούσει ότι οι δυνατότητες των 32-bit έχουν ως όριο τα 4GB RAM αλλά επεξεργαστές όπως μερικοί ARMv7 με την χρήση LPAE μπορούν να υποστηρίξουν μέχρι 1024GB οπότε η περιορισμένη RAM δεν αποτελεί πρόβλημα σε αυτή την περίπτωση.  Η πλειοψηφία όμως εξακολουθεί να αντιμετωπίζει το συγκεκριμένο πρόβλημα.

Βέβαια, τα πλεονεκτήματα από τους 64-bit ARM δεν περιορίζονται μόνο σε κινητά και tablet. Μια από τις αγορές που δεν έχει διεισδύσει ακόμα είναι οι server, στην αγορά αυτή θα μπορούσε να προσφέρει μεγάλη οικονομία, καθώς χρειάζονται λιγότερη ενέργεια  για να λειτουργήσουν και επειδή ψύχονται παθητικά, έχουν μικρότερη κατανάλωση ενέργειας για ψύξη. Συγχρόνως, δεν χρειάζεται να ανησυχείτε για προβλήματα υπερθέρμανσης άμα τοποθετήσετε πολλούς μαζί. Τέλος, ήδη πολλά λειτουργικά Linux υποστηρίζουν ARMv8 οπότε δεν είναι δύσκολο να δημιουργηθούν και να πουληθούν τέτοια συστήματα.

Αυτή είναι μία σύντομη περιγραφή των λόγων για τους οποίους αξίζει να εμπιστευτείτε την αρχιτεκτονική των 64-bit της ARM. Περιμένουμε τα σχόλια σας και τυχόν απορίες σας.


No comments:

Post a Comment