Στο ερώτημα 4.2 ζητείται να βρούμε το overhead της μεθόδου. Αυτό που παρατηρώ, όμως, είναι ότι εξαιτίας του loop unrolling εκτελούνται λιγότερες επαναλήψεις των βρόχων άρα συνολικά λιγότερες εντολές. Άρα υπάρχει overhead;
Δοκίμασα με το objdump (του MIPS toolchain) και είδα τον κώδικα σε assembly για το εκτελέσιμο όπου πράγματι φαίνεται ότι τα unrolled loops είναι 2 φορές μεγαλύτερα από τα loops της απλής έκδοσης.
Τι είναι τελικά αυτό που θέλετε να σας παρουσιάσουμε σε αυτό το ερώτημα;
Υ.Γ. Σαν μέση λύση σκέφτηκα να πολλαπλασιάσω x4 τις συνολικές εντολές (μιας και έχουν γίνει 2 unroll) και να συγκρίνω αυτό το νούμερο. Τα αποτελέσματα που βγαίνουν μου φαίνονται λογικά.
Αυτό που ζητάμε στην ουσία είναι να μας δώσετε το σχετικό αριθμό εντολών της register blocked έκδοσης ως προς τον αριθμό εντολών της cache blocked έκδοσης. Αυτό το λέμε overhead (ίσως λίγο καταχρηστικά αν θέλεις) επειδή στη γενική περίπτωση του blocking οι εντολές που απαιτούνται είναι περισσότερες σε σχέση με τη non-blocked έκδοση. Σε αυτή την περίπτωση βέβαια του reg. blocking οι εντολές είναι λιγότερες, μάλλον διότι στο εσωτερικότερο loop δε χρειάζεται να γίνουν τα loads για τον πίνακα του οποίου οι τιμές αποθηκεύονται σε registers.
George Prekas wrote:
Στο ερώτημα 4.2 ζητείται να βρούμε το overhead της μεθόδου. Αυτό που παρατηρώ, όμως, είναι ότι εξαιτίας του loop unrolling εκτελούνται λιγότερες επαναλήψεις των βρόχων άρα συνολικά λιγότερες εντολές. Άρα υπάρχει overhead;
Δοκίμασα με το objdump (του MIPS toolchain) και είδα τον κώδικα σε assembly για το εκτελέσιμο όπου πράγματι φαίνεται ότι τα unrolled loops είναι 2 φορές μεγαλύτερα από τα loops της απλής έκδοσης.
Τι είναι τελικά αυτό που θέλετε να σας παρουσιάσουμε σε αυτό το ερώτημα;
Υ.Γ. Σαν μέση λύση σκέφτηκα να πολλαπλασιάσω x4 τις συνολικές εντολές (μιας και έχουν γίνει 2 unroll) και να συγκρίνω αυτό το νούμερο. Τα αποτελέσματα που βγαίνουν μου φαίνονται λογικά.
Advcomparch mailing list Advcomparch@lists.cslab.ece.ntua.gr http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch
advcomparch@lists.cslab.ece.ntua.gr