What's new

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

ARM και άλλες αρχιτεκτονικές

lucinos

Death Knight
Joined
Nov 16, 2015
Messages
2,701
δεν έβρισκα κάποιο κατάλληλο θέμα



Το «κόλπο» με το box86/box64 είναι ότι ναι μεν κάνει εξομοίωση για τον επεξεργαστή και εκεί σίγουρα υποφέρει αλλά όπου υπάρχει κλήση βιβλιοθήκης και υπάρχει ARM έκδοση, δεν έχει σημασία και φαίνεται αρκετά μεγάλο μέρος τής δουλειάς γίνεται από τέτοιες βιβλιοθήκες ώστε να έχει αρκετά καλό αποτέλεσμα.
 

Admiral

Ancient Red Dragon
Staff member
Joined
Nov 27, 2012
Messages
12,379
Ενδιαφέρον! Επειδή δεν το κατέχω καθόλου το θέμα, υπάρχουν ομοιότητες στον τρόπο λειτουργίας με το Vulkan;
 

lucinos

Death Knight
Joined
Nov 16, 2015
Messages
2,701
Ενδιαφέρον! Επειδή δεν το κατέχω καθόλου το θέμα, υπάρχουν ομοιότητες στον τρόπο λειτουργίας με το Vulkan;
Είναι εντελώς διαφορετικά πράγματα.

Το box86 είναι εξομοιωτής για να τρέχουν x86 εφαρμογές σε ARM (αλλά δεν χρειάζεται να εξομοιώσει τα πάντα)

To Vulkan είναι API που χρησιμοποιούν οι εφαρμογές για να χρησιμοποιούν την κάρτα γραφικών. Πχ το DOOM χρησιμοποιεί Vulkan αντί για DirectX. Δηλαδή μια εφαρμογή δεν χρειάζεται να ξέρει με ποια κάρτα γραφικών έχει να κάνει, μπορεί να δίνει εντολές Vulkan και ο driver τής κάρτας γραφικών να δίνει τις ανάλογες εντολές. Το πλεονέκτημα τού Vulkan είναι ότι είναι πολύ πιο κοντά στις πραγματικές λειτουργίες τής GPU σε σχέση με παλιότερα API (DirextX11, OpenGL). Όλες οι σύγχρονες κάρτες γραφικών υποστηρίζουν Vulkan, και αυτές που έχουν οι ARM συσκευές.

Εκτός από επιμέρους τεχνικές διαφορές η ουσιαστική διαφορά μεταξύ OpenGL/Vulkan και DirectX είναι ότι το OpenGL και το Vulkan το σχεδιάζει η Khronos Group (που συμμετέχουν σε μικρότερο ή μεγαλύτερο βαθμό πολλές εταιρείες ενώ το DirectX το σχεδίαζει η Microsoft.

Μια εφαρμογή που τρέχει μέσω box86 για να χρησιμοποιεί την κάρτα γραφικών, χρησιμοποιεί κάποιο API που μπορεί κάλλιστα να είναι το Vulkan (ή οποιοδήποτε άλλο). Οι εντολές αυτές είναι εντολές για την κάρτα γραφικών, δεν είναι κώδικας μηχανής για τον x86 επεξεργαστή, δηλαδή δεν είναι κάτι που χρειάζεται εξομοίωση!
 
Last edited:

Thaxll'ssillyia

Φραγκολεβαντίνος μπιφτεκάς
Joined
Feb 11, 2021
Messages
2,000
Ωραιο θεματακι!

Μια που δεν εχω πολυασχοληθει με ARM, η και γενικοτερα με αρχιτεκτονικες σχεδιασης επεξεργαστων περα απο τα βασικα που διδαχθηκαμε στη σχολη, με αφορμη το σχολιο του @nitro912gr εψαξα λιγο να δω τι παιζει και ειπα να τα μοιραστω για μεταλαμπαδευση γνωσης/επιβεβαιωση/επικαιροποιηση (καθως οι πηγες που βρηκα και τα εξηγουν ειναι παλιες, πολυ παλιες -μερικες και 11 χρονια πισω!- ) οποτε αν εχετε κατι χρησιμοτερο ριξτε το!

βασικες λειτουργιες επεξεργαστων:






διαφορες αρχιτεκτονικης x86 και ARM σε απλο High Level explanation:



παρουσιαση του ARM με αφορμη την Apple ARM M1:

 

Admiral

Ancient Red Dragon
Staff member
Joined
Nov 27, 2012
Messages
12,379
Είναι εντελώς διαφορετικά πράγματα.

Το box86 είναι εξομοιωτής για να τρέχουν x86 εφαρμογές σε ARM (αλλά δεν χρειάζεται να εξομοιώσει τα πάντα)

To Vulkan είναι API που χρησιμοποιούν οι εφαρμογές για να χρησιμοποιούν την κάρτα γραφικών. Πχ το DOOM χρησιμοποιεί Vulkan αντί για DirectX. Δηλαδή μια εφαρμογή δεν χρειάζεται να ξέρει με ποια κάρτα γραφικών έχει να κάνει, μπορεί να δίνει εντολές Vulkan και ο driver τής κάρτας γραφικών να δίνει τις ανάλογες εντολές. Το πλεονέκτημα τού Vulkan είναι ότι είναι πολύ πιο κοντά στις πραγματικές λειτουργίες τής GPU σε σχέση με παλιότερα API (DirextX11, OpenGL). Όλες οι σύγχρονες κάρτες γραφικών υποστηρίζουν Vulkan, και αυτές που έχουν οι ARM συσκευές.

Εκτός από επιμέρους τεχνικές διαφορές η ουσιαστική διαφορά μεταξύ OpenGL/Vulkan και DirectX είναι ότι το OpenGL και το Vulkan το σχεδιάζει η Khronos Group (που συμμετέχουν σε μικρότερο ή μεγαλύτερο βαθμό πολλές εταιρείες ενώ το DirectX το σχεδίαζει η Microsoft.

Μια εφαρμογή που τρέχει μέσω box86 για να χρησιμοποιεί την κάρτα γραφικών, χρησιμοποιεί κάποιο API που μπορεί κάλλιστα να είναι το Vulkan (ή οποιοδήποτε άλλο). Οι εντολές αυτές είναι εντολές για την κάρτα γραφικών, δεν είναι κώδικας μηχανής για τον x86 επεξεργαστή, δηλαδή δεν είναι κάτι που χρειάζεται εξομοίωση!

Εκ παραδρομής έγραψα Vulkan αντί για Proton, συγγνώμη. Το box86 έχει ομοιότητες με το Proton?
 

nitro912gr

Ancient Red Dragon
Approval of the Admiral PCMaster Veteran Klika Member
Joined
Nov 26, 2012
Messages
14,471
Είχα γράψει 2 λόγια κάποτε, παλιά πολύ παλιά https://ragequit.gr/editorials/item/the-end-of-x86-era/

Γενικά φαίνεται ότι έχει πάρει μεγάλη φόρα η φάση με την επιστροφή στους RISC επεξεργαστές όπως οι ARM, παρακολουθώ με ενδιαφέρον και τους risc-V που πέφτει αρκετό χρήμα τελευταία.
 

lucinos

Death Knight
Joined
Nov 16, 2015
Messages
2,701
Εκ παραδρομής έγραψα Vulkan αντί για Proton, συγγνώμη. Το box86 έχει ομοιότητες με το Proton?
Κάνουν διαφορετικά πράγματα, το box86 μεταφράζει x86 κώδικα μηχανής (είναι για την ίδια την CPU) και δεν ασχολείται με το λειτουργικό,, το Proton/wine μεταφράζει τα API για το λειτουργικό ενώ τον κώδικα μηχανής τον χρησιμοποιεί ως έχει.

Το DOOM 2016 που τρέχει στο βίντεο λογικά χρησιμοποιεί και τα δύο αφού δεν έχει ιθαγενή έκδοση λίνουξ. Τα περισσότερα άλλα παιχνίδια στο βίντεο τρέχουν την ιθαγενή έκδοση λίνουξ άρα χρειάζονται μόνο το box86. Υποθέτω για τα παιχνίδια που χρειάζονται και τα δύο κάποιος ίσως κατάφερνε να κάνει καλύτερες βελτιστοποιήσεις φτιάχνοντας μια ειδική έκδοση proton που να κάνει και την μετάφραση για ARM.
 

Admiral

Ancient Red Dragon
Staff member
Joined
Nov 27, 2012
Messages
12,379
Κατάλαβα, ευχαριστώ!
 

Tony Corvus

Ancient Red Dragon
Φασαίος Larianός Τσοβόλα δώστα όλα Sign me up! Approval of the Admiral
Joined
Dec 1, 2012
Messages
11,266
Shieeeet. Μπήκα σε ετούτο το θρεντ και μου έσκασαν αναμνήσεις από Ασεμπλι και Αρχιτεκτονική Υπολογιστών

:frak:
 

lucinos

Death Knight
Joined
Nov 16, 2015
Messages
2,701
Κατάλαβα, ευχαριστώ!
Υπάρχει πάντως μια «ομοιότητα», ότι και τα δυο δεν κάνουν αυτό που κάνουν συνήθως οι εξομοιωτές δημιουργόντας ένα πλήρες εικονικό σύστημα, αλλά τρέχουν τα προγράμματα σαν «ιθαγενή».

Σε αυτό το proton έχει πολύ περισσότερα πράγματα να φτιάξει γιατί πρέπει να δημιουργήσει ανεξάρτητες υλοποιήσεις για κάθε τι που απαιτεί μια windows εφαρμογή αλλά όλο αυτό είναι software οπότε δεν υπάρχει θεμελιώδης λόγος να υστερεί. Το box86 από την άλλη πρέπει να εξομοιώσει τον x86 επεξεργαστή, αυτό είναι hardware οπότε αναγκαστκά πρέπει να κάνει εξομοίωση, αλλά η ιδέα είναι ότι κάνει μόνο αυτό και τις άλλες κλήσεις τις τρέχει με ιθαγενής ARM βιβλιοθήκες, οπότε όσο μπορεί τρέχει τις εφαρμογές ιθαγενώς.
 

captain kal

Death Knight
Joined
Dec 2, 2012
Messages
3,333
Το box86 από την άλλη πρέπει να εξομοιώσει τον x86 επεξεργαστή, αυτό είναι hardware οπότε αναγκαστκά πρέπει να κάνει εξομοίωση, αλλά η ιδέα είναι ότι κάνει μόνο αυτό και τις άλλες κλήσεις τις τρέχει με ιθαγενής ARM βιβλιοθήκες, οπότε όσο μπορεί τρέχει τις εφαρμογές ιθαγενώς.

Η αργοπορημένη εκδίκηση της Acorn και του Αρχιμήδη!!!!!!!!!
 

lucinos

Death Knight
Joined
Nov 16, 2015
Messages
2,701
Το ψιλοσκέφτομαι να πάρω ένα Pi 400!!!
Πιστεύω ότι είναι πάρα πολύ καλή ιδέα για παιδί. Πχ εγώ θα σκεφτόμουν να δώσω στο παιδί ένα Pi400 δικό του, να υπάρχει ένας κοινός κανονικός υπολογιστής ενώ ένα steam deck θα το έπαιρνα για μένα.

Δεν ξέρω εσύ τι σκέφτεσαι να κάνεις με το Pi 400. (να το κάνεις amiga ίσως;)
 

captain kal

Death Knight
Joined
Dec 2, 2012
Messages
3,333
Πιστεύω ότι είναι πάρα πολύ καλή ιδέα για παιδί. Πχ εγώ θα σκεφτόμουν να δώσω στο παιδί ένα Pi400 δικό του, να υπάρχει ένας κοινός κανονικός υπολογιστής ενώ ένα steam deck θα το έπαιρνα για μένα.

Δεν ξέρω εσύ τι σκέφτεσαι να κάνεις με το Pi 400. (να το κάνεις amiga ίσως;)

Και RISC OS!!!
 

Norshgaath

Mind-flayer
Approval of the Admiral
Joined
Aug 3, 2023
Messages
1,864

o_O


1696328571015.png

Βιντεο με τη παρουσιαση του

 

Hank

Mind-flayer
Sign me up! Approval of the Admiral The Ultimate Sacrifice Fighting stocism with stoicism
Joined
Jan 22, 2020
Messages
1,889
Για λίγο φοβήθηκα ότι μετά το link θα έβαζες και quotes με κινέζικα.
 
Top Bottom