Χριστίνα Γ. Σκαρπαθιωτάκη (UoP) Αγγελική Χ. Σπηλιωτοπούλου (UoP) Επιβλέπων: Νεκτάριος Χ. Μπενέκος (CERN & UIUC)

Σχετικά έγγραφα
Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Εισαγωγη στους ανιχνευτες σωματιδιων στο CERN

Standard Template Library (STL) C++ library

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡ/ΣΜΟΣ C++

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Επιτεύγματα. της Πειραματικής Φυσικής Υψηλών Ενεργειών

Δομές Δεδομένων Standard Template Library (STL) 23/3/2017 ΜΠΟΜΠΟΤΑΣ ΑΓΟΡΑΚΗΣ

Α. ΔΙΑΓΡΑΜΜΑ ΔΙΑΣΠΟΡΑΣ Απεικόνιση της σχέσης(θετική, αρνητική, απροσδιόριστη) δύο μεταβλητών. Παραδείγματα σχέσεων. Παράδειγμα

Περιεχόμενα. 2 Αριθμητικά συστήματα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Εισαγωγη στους ανιχνευτες σωματιδιων στο CERN

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ, Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

Q2-1. Πού βρίσκεται το νετρίνο; (10 μονάδες) Theory. Μέρος A. Η Φυσική του Ανιχνευτή ATLAS (4.0 μονάδες) Greek (Greece)

Διαχείριση Πολιτισμικών Δεδομένων

Προγραμματισμός Υπολογιστών

ΕΠΙΜΟΡΦΩΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΓΙΑ ΤΑ ΝΕΑ ΑΝΑΛΥΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Γ ΓΥΜΝΑΣΙΟΥ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ

Προγραμματισμός Ι (HY120)

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

CERN Επιτεύγματα, Προοπτικές, Προσδοκίες -

Week. 6: Java Collections

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Δεδομένων. Μοναστηρίου 7, Άγιος Στέφανος. Tηλ.: Φαξ: Website:

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Δομές Δεδομένων. Λουκάς Γεωργιάδης.

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

Φυσική Στοιχειωδών Σωµατιδίων ΙΙ. Μάθηµα 1ο 15/2/2011

Σύγχρονη Φυσική : Πυρηνική Φυσική και Φυσική Στοιχειωδών Σωματιδίων 18/04/16

Οντοκεντρικός Προγραμματισμός

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Εκλαϊκευτική Ομιλία. Θεοδώρα. Παπαδοπούλου, Ομ. Καθηγήτρια Φυσικής, ΕΜΠ Μέλος του Συμβουλίου Πελοποννήσου. Ημερίδα CERN Τρίπολη, 13 Νοεμβρίου 2013

Καταχωρητές & τμήματα μνήμης του Ματθές Δημήτριος Καθηγητής Πληροφορικής

Δομές Δεδομένων. Λουκάς Γεωργιάδης.

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

CERN Επιτεύγματα, Προοπτικές, Προσδοκίες -

Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας

Κωδικοποίηση και Έλεγχος Ορθότητας

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Προγραμματιζόμενη Λογική Γιατί;

Ο ανιχνευτης CMS. Ρολος και ο σχεδιασμος του ανιχνευτη. Το CMS και τα κομματια του Από τα κομματια στο συστημα. Συμπερασματα και προσδοκιες.

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Πληροφορική 2. Δομές δεδομένων και αρχείων

Εισαγωγή στη Σχεδίαση Λογισμικού

Theory Greek (Greece) Μεγάλος Επιταχυντής Αδρονίων (LHC) (10 Μονάδες)

Περιεχόμενα. Πρόλογος... 21

Δημιουργία ιστοσελίδας με Wordpress - Βασικές λειτουργίες

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

Προσομοίωση Συστημάτων

Λειτουργικά Συστήματα (Λ/Σ)

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

Οργάνωση Υπολογιστών (ΙI)

5 η Θεµατική Ενότητα : Μνήµη & Προγραµµατιζόµενη Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

Διαφορές single-processor αρχιτεκτονικών και SoCs

Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7

ΙΕΚ ΞΑΝΘΗΣ. Μάθημα : Στατιστική Ι. Υποενότητα : Κωδικοποίηση

Σχεδιασμός και Υλοποίηση ενός πληροφοριακού συστήματος για τους τεχνικούς του φυσικού αερίου

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Theory Greek (Cyprus) Μεγάλος Επιταχυντής Αδρονίων (LHC) (10 μονάδες)

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;

Περιεχόµενα. I Βασικές Γνώσεις 1

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Theory Greek (Greece) Μεγάλος Επιταχυντής Αδρονίων (LHC) (10 Μονάδες)

Φυσική Στοιχειωδών Σωµατιδίων ΙΙ. Μάθηµα 1ο 24/4/2007

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ, 5 ο εξάµηνο

Αρχιτεκτονική υπολογιστών

Εφαρμογές μικροελεγκτών

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Διαχείριση Κύριας Μνήμης

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο :

Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ

1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Μάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε.

Υπολογιστικό Πρόβληµα

Επιλογές και Κριτήρια Σχεδιασμού ΑΤΔ Ανεξαρτήτως από Γλώσσα Υλοποίησης 24/4/2012

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Αρχιτεκτονική Υπολογιστών

Εφαρμογές πληροφορικής στο πλαίσιο της α φάσης κτηματογράφησης (Ενεργοί Τίτλοι)

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά.

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α ΤΑΞΗ

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Εικονική Μνήμη (1/2)

Διαχείριση Πολιτισμικών Δεδομένων

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Αναγνώριση Προτύπων. 27 Ιουνίου 2008 Ημερίδα για το ΔΠΜΣ - Ηλεκτρονική και Επεξεργασία της Πληροφορίας Τμήμα Φυσικής Πανεπιστήμιο Πάτρας

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 17: Αναδιατασσόµενη Λογική Προγραµµατιζόµενο Υλικό

Transcript:

Χριστίνα Γ. Σκαρπαθιωτάκη (UoP) Αγγελική Χ. Σπηλιωτοπούλου (UoP) Επιβλέπων: Νεκτάριος Χ. Μπενέκος (CERN & UIUC) Τετάρτη, 13 Νοεμβρίου 2013 1

Διάρθρωση Παρουσίασης (1/3) Θέματα πρακτικής άσκησης στο CERN: Διαχείριση ΚΜΕ και Μνήμης κυρίως για το χαμηλότερο επίπεδο του συστήματος ελέγχου μιονίων. Modularization στο υψηλότερο επίπεδο του κώδικα ελέγχου. Βελτιστοποίηση χρήσης της Μνήμης. 2

Φασματόμετρο Μιονίων σχηματίζει το εξωτερικό τμήμα του ανιχνευτή ATLAS ανιχνεύει φορτισμένα σωματίδια καταμετρά την ορμή (P = mu) των σωματιδίων Το σύστημα μιονίων ATLAS απαρτίζεται από 4 διαφορετικές τεχνολογίες, κάθε μία εκ των οποίων αντιστοιχεί και σε ένα διαφορετικό θάλαμο: Θάλαμοι Επιφάνειας Αντίστασης (Resistive Plate Chambers) Θάλαμοι Ψιλού Ανοίγματος (Thin Gap Chambers) χρησιμοποιούνται για πυροδότηση της λειτουργίας του ανιχνευτή Ελεγχόμενες Λυχνίες Μετακίνησης (Monitored Drift Tubes) Καθοδικοί Θάλαμοι Αφαίρεσης (Cathode Strip Chambers) χρησιμοποιούνται για ακριβή μέτρηση της τροχιάς των μιονίων Διάταξη του ανιχνευτή ATLAS 3

Κύκλος Καταγραφής Δεδομένων για Φυσική Ανάλυση ανιχνευτής φίλτρο γεγονότος (επιλογή & ανασύσταση) ακατέργαστα δεδομένα ανασύσταση γεγονότος σύνοψη δεδομένων γεγονότων επεξεργασία δεδομένων για φυσική ανάλυση επεξεργασμένα δεδομένα ανάλυση αντικειμένων (ανάλογα με την κατηγοριοποίησή τους σε φυσικό επίπεδο) προσομοίωση γεγονότος Πηγή: Νεκτάριος Μπενέκος, CERN & UIUC διαδραστική φυσική ανάλυση 4

Ποιότητα των δεδομένων Οι ανιχνευτές στοιχειωδών σωματιδίων αποτελούν πολύ σύνθετα όργανα. Συχνά προβλήματα που προκύπτουν είναι: θόρυβος στους ανιχνευτές τμήματα στον ανιχνευτή που δεν λειτουργούν Τα προβλήματα αυτά έχουν επιπτώσεις σε: ανασύσταση φυσικών αντικειμένων φυσική ανάλυση Γεγονότα που έχουν συλλεχθεί ή παραχθεί υπό δυσλειτουργικές συνθήκες: είτε αποκλείονται από περαιτέρω ανάλυση είτε υφίστανται περαιτέρω ανάλυση, δεδομένου ότι κατά την προσομοίωση, το γεγονός μοντελοποιείται κατάλληλα Υπάρχει ανάγκη για ενδελεχή έλεγχο του συστήματος, προκειμένου να διαπιστωθεί ότι τα δεδομένα που συλλέγονται είναι κατάλληλα για φυσική ανάλυση. Τα ιστογράμματα που προκύπτουν ελέγχονται από πληθώρα ανθρώπων. Η ποιότητα των δεδομένων αποτελεί σημαντικό παράγοντα για ανάκτηση σωστών φυσικών αποτελεσμάτων. Μία «νεκρή» περιοχή στο θερμιδόμετρο του ανιχνευτή ATLAS. Πηγή: Νεκτάριος Μπενέκος, CERN & UIUC

Πείραμα Φυσικής Υψηλών Ενεργειών: Ακατέργαστα Δεδομένα απόκριση ανιχνευτή σε ψηφιακή μορφή αποθήκευση δεδομένων σε ακολουθία από bytes προσδιορισμός μορφής δεδομένων από ηλεκτρονικά εμπρόσθιου τμήματος (front-end electronics) και ανάκτηση δεδομένων (data acquisition) συχνότητα καταγραφής γεγονότος: μέχρι & τα 200 Hz (μέχρι και τα 450 Hz το 2012) χωρητικότητα γεγονότος: μπορεί να καταλαμβάνει μέχρι και 1.6 MB Πηγή: Νεκτάριος Μπενέκος, CERN & UIUC Διεύθυνση μνήμης: αντιστοιχεί σε ένα συγκεκριμένο στοιχείο του ανιχνευτή Περιεχόμενα διεύθυνσης μνήμης: η τιμή που κατέγραψαν τα ηλεκτρονικά για τη συγκεκριμένη διεύθυνση μνήμης

Offline επεξεργασία Μοντέλο καταγραφής γεγονότος (ΜΚΓ) (1/3) Εκτέλεση LHC με συνεχή & ταχεία ροή δεδομένων. βαθμονόμηση Βάση Δεδομένων φυσική επεξεργασία ροής δεδομένων 12 ώρες 48 ώρες 24 48 ώρες ταχεία ακατέργαστη ροή δεδομένων Αποδοχή δεδομένων βάσει ποιότητας ακατέργαστη φυσική ροή δεδομένων ESD TAG ESD TAG AOD, HIST, DPD Πηγή: Νεκτάριος Μπενέκος, CERN & UIUC AOD, HIST, DPD

Δεδομένα Offline επεξεργασία ΜΚΓ (2/3) E S D A O D 10 Terabytes/year TAG 1 Terabyte/year R A W 100 Terabytes/year Tier1 1Peta Byte/year (1PB/s πριν γίνει ελάττωση) Tier0 ακολουθιακά με τυχαία σειρά Χρήστες

Offline επεξεργασία ΜΚΓ (3/3) Τύπος δεδομένων Ακρωνύμιο Μέγεθος/Γεγονός (ΚΒ) Σημειώσεις Ροή από bytes RAW 640 συμπίεση στο Tier0 Event Summary Data ESD 1100 χρήση για βαθμονόμηση και ανάλυση των δεδομένων Analysis Object Data AOD 161 χρήση για φυσική ανάλυση Derived Physics Data DPD 100 1. αξιολόγηση επίδοσης ανιχνευτή 2. φυσική ανάλυση Ιστόγραμμα HIST - απεικόνιση ποιότητας δεδομένων Tag ( ετικέτα ) TAG 10 επιλογή γεγονότος 9

10

Ζητήματα στον Κώδικα Ελέγχου Μιονίων Απλά για αποθήκευση ιστογραμμάτων! Χρήση ΚΜΕ Πηγή: Rocco Mandrysch, CERN Χρήση Μνήμης 11

Επιπρόσθετα ζητήματα στον υπάρχοντα κώδικα πλεονασμός στον υπάρχοντα κώδικα τεράστιος κώδικας, όχι δομημένος σε μικρότερα τμήματα αποθαρρυντικός κώδικας για νέους προγραμματιστές 12

Διαχείριση ΚΜΕ και Μνήμης Η ιδέα πίσω από την υλοποίηση Μείωση της χρήσης της ΚΜΕ και της μνήμης στο πακέτο λογισμικού MdtRawMonManager Valgrind: εργαλείο που χρησιμοποιείται για να ανιχνεύσει και να αποσφαλματώσει διαρροές μνήμης 13

Κατηγοριοποίηση Διαρροών Μνήμης (Memory Leaks) Conditional jump or move (άλμα ή κίνηση υπό συνθήκη): οφείλεται σε μη αρχικοποιημένες τιμές ούτε η τιμή, ούτε η εκχωρηθείσα μνήμη έχουν αρχικοποιηθεί. Uninitialized value (μη αρχικοποιημένη τιμή): δημιουργείται λόγω κατανομής χώρου στη στοίβα ούτε τα πεδία του κατασκευαστή, ούτε η αντίστοιχη μνήμη που εκχωρείται έχουν αρχικοποιηθεί. Invalid read of size 4 (Άκυρη ανάγνωση μεγέθους 4 bytes) ανίχνευση λανθασμένης ανάγνωσης (δεδομένων). Possibly lost bytes in specific blocks (Ενδεχομένως χαμένα bytes σε συγκεκριμένα τμήματα της μνήμης) κατά τη διάρκεια εκτέλεσης του προγράμματος διάφορα αντικείμενα αποτυγχάνουν να επαληθευτούν από το API. 14

Διάρθρωση Παρουσίασης (2/3) Θέματα πρακτικής άσκησης στο CERN: Διαχείριση ΚΜΕ και Μνήμης κυρίως για το χαμηλότερο επίπεδο του συστήματος ελέγχου μιονίων. Modularization στο υψηλότερο επίπεδο του κώδικα ελέγχου. Βελτιστοποίηση χρήσης της Μνήμης. 15

Modularization στο υψηλότερο επίπεδο Η ιδέα πίσω από την υλοποίηση: του κώδικα ελέγχου Διαχωρισμός κώδικα για καλύτερη διαχείριση του πακέτου MuonTrkPhysMonitoring. Πλεονεκτήματα του modularization: πιο αποτελεσματική διαχείριση Μνήμης και ΚΜΕ βελτίωση λειτουργικότητας και επαναχρησιμοποίησης κώδικα ακριβέστερη ανίχνευση και εντοπισμός λογικών λαθών ενθαρρυντική τεκμηρίωση κώδικα καλύτερη δόμηση του προγράμματος Προτεινόμενη κατάτμηση κώδικα στο πακέτο MTPM Πηγή: Austin Basye, CERN &UIUC 16

Υλοποίηση (ένα ενδεικτικό παράδειγμα) Ο πηγαίος κώδικας που παρουσιάζεται παραπάνω, αναφέρεται σε ένα συγκεκριμένο τύπο ιστογράμματος. Κάθε τύπος ιστογράμματος υλοποιείται με τη χρήση των ακόλουθων τριών συναρτήσεων: bookhistogram(), fillhistogram(), prochistogram(). 17

Αναπαράσταση του modularization που έγινε στο πακέτο MuonTrkPhysMonitoring ΠΡΙΝ ΜΕΤΑ Πηγή: Austin Basye, CERN &UIUC 18

Επιπρόσθετες Βελτιώσεις Οι παραπάνω προτάσεις στοχεύουν στη μείωση του πλεονάζοντα κώδικα. Έτσι, παρέχεται καλύτερη συντήρηση και διαχείριση του προγράμματος. Για να επιτύχουμε κάτι τέτοιο, θα μπορούσαμε να χρησιμοποιήσουμε εργαλεία όπως: μία νέα δομή enumerator, η οποία να καλείται Sector ένα διδιάστατο διάνυσμα (2D vector) για αποθήκευση ιστογραμμάτων ένα βρόχο for για διάσχιση κάθε ιστογράμματος 19

Προτεινόμενες τροποποιήσεις κατά την 1 η αναστολή λειτουργίας του πειράματος ATLAS Προσδοκώμενες αλλαγές στο framework του κώδικα Μείωση λογικών λαθών. Βελτίωση αναγνωσιμότητας στον κώδικα. Ευκολότερη εφαρμογή καλών πρακτικών που χειρίζονται δύσκολα ζητήματα. Εισαγωγή μιας Διεπαφής Αφαιρετικών Ιστογραμμάτων (Abstract Histogram Interface ). Αυτή η διεπαφή θα μπορούσε να χρησιμοποιηθεί προκειμένου να συνδέσει υλοποιήσεις μέσα στο πακέτο AthenaMonitoring, όπως π.χ. τα ιστογράμματα native ROOT και light weight. Αναθεώρηση του κώδικα Muon DQA για βελτιστοποίηση λειτουργικότητας. Προτάσεις για καλύτερη χρήση της Μνήμης και της ΚΜΕ. 20

Διάρθρωση Παρουσίασης (3/3) Θέματα πρακτικής άσκησης στο CERN: Διαχείριση ΚΜΕ και Μνήμης κυρίως για το χαμηλότερο επίπεδο του συστήματος ελέγχου μιονίων. Modularization στο υψηλότερο επίπεδο του κώδικα ελέγχου. Βελτιστοποίηση χρήσης της Μνήμης. 21

Βελτιστοποίηση χρήσης της Μνήμης Η ιδέα πίσω από την υλοποίηση: Μείωση της υπερβολικής χρήσης της ΚΜΕ και της Μνήμης που προκαλούνται από το πακέτο MuonRawDataMonitoring. Το κύριο αίτιο του προβλήματος: η αντιστοίχιση που προκύπτει, μέσω του ακόλουθου map: <hardware_name, hit_occupancy> Hardware_name => αλφαριθμητικό 7 χαρακτήρων που αναπαριστά την ονομασία ενός συγκεκριμένου θαλάμου μέσα στον ανιχνευτή Hit_occupancy => καταγεγραμμένος αριθμός σωματιδίων που εξήλθε από τον ανιχνευτή μετά τη σύγκρουση Το τμήμα του κώδικα που εντοπίστηκε το πρόβλημα: map< string, float >::iterator iter_hitsperchamber = hitsperchamber_map.find(hardware_name); 22

Προτεινόμενες Λύσεις & Απορρίψεις + γρηγορότερη και αποτελεσματικότερη αναζήτηση - πλεονασμός στον κώδικα - μη καθολική σύμβαση - ανάγκη για εισαγωγή νέου μοντέλου δεδομένων + γρηγορότερη και αποτελεσματικότερη αναζήτηση - μη αποδεκτός τύπος δεδομένων για ένα map<> - η υλοποίηση της λύσης δεν διατίθεται ακόμα (ανάγκη για νέες δομές δεδομένων, όπως operators, templates, κτλ. ) + γρήγορη γραμμική αναζήτηση - αργή τυχαία αναζήτηση, καθώς κάθε στοιχείο στο ή μετά το σημείο εισαγωγής, πρέπει να μετακινηθεί, ώστε να μπορέσει να εισαχθεί το νέο στοιχείο - ανάγκη για εισαγωγή νέας δομής δεδομένων που να συσχετίζει το hashid με το hit_occupancy + επαρκώς γρήγορη αναζήτηση + εφικτή υλοποίηση - υπερβολική δέσμευση Μνήμης για μικρές αριθμητικές τιμές - διαφορετικές εντολές προ επεξεργαστή για 32-, 64- bit συστήματα, γεγονός που οδηγεί σε απώλεια συμβατότητας 23

Μία ακόμη ιδέα Πλεονεκτήματα: + γρηγορότερη και πιο αποτελεσματική αναζήτηση ενός συγκεκριμένου στοιχείου Αυτή η δομή δεδομένων συσχετίζει κάθε identifier με τη δική του hit_occupancy. Μειονεκτήματα: -νέα δήλωση και υλοποίηση δομών δεδομένων όπως: templates operators classes constructors destructors κτλ. 24

Μερικές επιπρόσθετες προτάσεις Containers Υλοποίηση Χρονική Πολυπλοκότητα Hash_map - Λειτουργίες Βέλτιστη Περίπτωση Χειρότερη Περίπτωση εισαγωγή O(1) O(n) Hash_multimap - αναζήτηση O(1) O(n) διαγραφή O(1) O(n) Η υλοποίηση των παραπάνω κλάσεων δεν υπάρχει ακόμα στη standard βιβλιοθήκη προτύπων (STL) της C++. 25

Επίλογος Προτάσεις για περαιτέρω ενέργειες εντοπισμού και διόρθωσης προβλημάτων κατά την 1 η περίοδο αναστολής της λειτουργίας του πειράματος ATLAS. Προτεινόμενες αλλαγές για βελτιστοποίηση χρήσης ΚΜΕ και Μνήμης. Προτάσεις για αναθεώρηση του κώδικα που αφορά το τμήμα Muon Offline DQA. Ενδελεχείς διαγνωστικοί έλεγχοι πρέπει να διεξαχθούν μέσα στο πακέτο MuonTrkPhysMonitoring, ο κώδικας του οποίου έχει κατατμηθεί και η νέα έκδοσή του έχει ανέβει στο SVN. Απαραίτητες τροποποιήσεις, συμβατές με το μοντέλο δεδομένων ATLAS DQ, οι οποίες είναι έτοιμες προς υλοποίηση. 26

Η πρακτική άσκηση στο CERN υποστηρίχθηκε ιδιαίτερα από τους κ. Εμμανουήλ Τσεσμελή, κ. Νεκτάριο Μπενέκο και κα. Θεοδώρα Παπαδοπούλου, καθώς επίσης και από τον κ. Andrea Dell Acqua. Ειλικρινά, θα θέλαμε ακόμη να ευχαριστήσουμε το τμήμα μας, Τμήμα Πληροφορικής και Τηλεπικοινωνιών του Πανεπιστημίου Πελοποννήσου, καθώς και το ΕΜΠ, για τη βοήθεια και την υποστήριξη που μας πρόσφεραν. 27

28

29