Return to search

Χρονοδρομολόγηση μεταφορών δεδομένων και εντολών για μεγαλύτερη ταχύτητα εφαρμογών σάρωσης πινάκων

Με την εξέλιξη της τεχνολογίας, ο κύριος στόχος των υπολογιστικών συστημάτων, επιτραπέζιων, εξυπηρετητών και ενσωματωμένων είναι η υψηλή απόδοση. Όμως, το σύνολο σχεδόν των εφαρμογών στις μέρες μας είναι γραμμένο σε κάποια γλώσσα υψηλού επιπέδου, με αποτέλεσμα να απαιτείται μεταγλώττιση ώστε να μεταφραστούν σε γλώσσα μηχανής και για να μπορέσουν στη συνέχεια να εκτελεστούν σε κάποιον επεξεργαστή. Η ποιότητα του κώδικα που παράγεται είναι κρίσιμος παράγοντας για την ορθή και γρήγορη εκτέλεσή του. Επομένως, η χρήση ενός μεταγλωττιστή που ικανοποιεί τις παραπάνω απαιτήσεις είναι εξαιρετικά σημαντική. Αν και η ανάπτυξη όλο και πιο αποδοτικών μεταγλωττιστών είναι γεγονός, δεν είναι δυνατό να χρησιμοποιηθούν από όλα τα υπολογιστικά συστήματα. Για παράδειγμα, τα ενσωματωμένα συστήματα, που αποτελούν μεγάλο κλάδο των υπολογιστικών συστημάτων και χρησιμοποιούνται σε πληθώρα θεμάτων, λόγω της απαίτησης τους για χαμηλό κόστος και χαμηλή κατανάλωση ισχύος χρησιμοποιούν υποτυπώδεις μεταγλωττιστές. Παρόλα αυτά η απαίτηση για υψηλή απόδοση παραμένει.
Έτσι, έχει δοθεί ιδιαίτερη ώθηση στη μελέτη των μεταγλωττιστών και των τεχνικών βελτιστοποίησης προγραμμάτων που χρησιμοποιούν. Αυτό οδήγησε στη χρήση των τεχνικών μεταγλωττιστών από τους προγραμματιστές με στόχο την επίτευξη βελτιστοποίησης στο υψηλότερο επίπεδο, κάτι που είναι ιδιαίτερα χρήσιμο για τα ενσωματωμένα συστήματα όπου δεν χρησιμοποιούνται ακριβοί μεταγλωττιστές.
Σκοπός της εργασίας είναι η μελέτη και βελτιστοποίηση μιας εφαρμογής σάρωσης πίνακα με στόχο την αύξηση της ταχύτητας εκτέλεσης και τη μείωση των μετακινήσεων στη μνήμη σε διαφορετικές αρχιτεκτονικές. / As technology changes, the main goal of every computer system (PCs, servers, embedded systems) is high performance. Nowadays, the majority of applications is written in high level languages and compiling is appropriate for their execution in a processor. The quality of binary code produced by a compiler is a critical factor for its correct and fast execution. So, it is extremely significant to use compilers that fulfill the requirements above. Even though the production of compilers which produce high quality binary code is a fact, they cannot be used by every computer system. For instance, embedded systems which are a big part of computer systems and are used in a wide range of applications, use simple compilers. This is because embedded systems are of low cost and low power. Nevertheless, the requirement for high performance remains.
As a result, research moved towards compilers’ structure and optimization methods that are used by them. This lead to the use of compilers’ optimization methods by programmers in order to achieve high level optimization in their codes. This is very useful for embedded systems where simple compilers are used and the quality of produced code is not the desired.
The aim of this work is the optimization of an application which scans a matrix (filter image) in order to achieve better performance which contains reducing memory accesses and increasing the execution time.

Identiferoai:union.ndltd.org:upatras.gr/oai:nemertes:10889/3128
Date07 June 2010
CreatorsΒασιλείου, Χρυσάνθη
ContributorsΓκούτης, Κωνσταντίνος, Vasileiou, Chrysanthi, Κουφοπαύλου, Οδυσσέας
Source SetsUniversity of Patras
Languagegr
Detected LanguageGreek
TypeThesis
Rights0

Page generated in 0.0025 seconds