An invention for reassigning data elements of an application to cache lines to decrease the occurrence of cache line faults is described. First, an application is executed and used in a typically manner. While the application is running, data is collected concerning the loading and storing of data elements. This collection process creates a massive volume of data that is then processed to determine correlations between the loading and storing pairs of elements within each of the application's data structures. These correlations provide a mechanism for weighing the probability of pairs of intra-structure data elements being accessed in sequence, which is best accomplished when the data elements are within a single cache line. A set of simultaneous equations describe the probabilities using the data recording the correlations. These equations are then solved using commonly known linear programming techniques to derive a suggested ordering of data structures. An interactive editor is then used to reorder these data elements in the derived preferred order as authorized by the programmer.

Μια εφεύρεση για την επανεκχώρηση των στοιχείων στοιχείων μιας εφαρμογής για να εναποθηκευθούν οι γραμμές για να μειώσει το περιστατικό των ελαττωμάτων γραμμών κρύπτης περιγράφεται. Κατ' αρχάς, μια εφαρμογή εκτελείται και χρησιμοποιείται με έναν χαρακτηριστικά τρόπο. Ενώ η εφαρμογή τρέχει, το στοιχείο συλλέγεται σχετικά με τη φόρτωση και την αποθήκευση των στοιχείων στοιχείων. Αυτή η διαδικασία συλλογής δημιουργεί έναν ογκώδη όγκο του στοιχείου που υποβάλλεται σε επεξεργασία έπειτα για να καθορίσει τους συσχετισμούς μεταξύ των ζευγαριών φόρτωσης και αποθήκευσης των στοιχείων μέσα σε κάθε μια από τις δομές δεδομένων της εφαρμογής. Αυτοί οι συσχετισμοί παρέχουν έναν μηχανισμό για την πιθανότητα των ζευγαριών των στοιχείων στοιχείων δια--δομών που προσεγγίζονται στη σειρά, η οποία ολοκληρώνεται καλύτερα όταν είναι τα στοιχεία στοιχείων μέσα σε μια ενιαία γραμμή κρύπτης. Ένα σύνολο ταυτόχρονων εξισώσεων περιγράφει τις πιθανότητες χρησιμοποιώντας την καταγραφή στοιχείων οι συσχετισμοί. Αυτές οι εξισώσεις λύνονται έπειτα χρησιμοποιώντας τις συνήθως γνωστές γραμμικές τεχνικές προγραμματισμού για να παραχθεί μια προτεινόμενη διαταγή των δομών δεδομένων. Ένας διαλογικός συντάκτης χρησιμοποιείται έπειτα για να ξαναπαραγγείλει αυτά τα στοιχεία στοιχείων στην παραγόμενη προτιμημένη διαταγή όπως εγκρίνεται από τον προγραμματιστή.

 
Web www.patentalert.com

< (none)

< Detection of an imported transaction for finding the global transaction identifier

> Modified polymers containing poly(2-hydroxyethyl(meth)acrylate segment in the molecule

> (none)

~ 00016