Επιστηµονικός Υπολογισµός Ι

Σχετικά έγγραφα
Επιστηµονικός Υπολογισµός Ι

Επιστηµονικός Υπολογισµός Ι

Επιστηµονικός Υπολογισµός Ι

Γραµµική Αλγεβρα. Ενότητα 7 : Γραµµικοί Μετασχηµατισµοί. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Επιστηµονικός Υπολογισµός Ι Ενότητα 1 - Εισαγωγή. Ευστράτιος Γαλλόπουλος

Εισαγωγή στους Αλγορίθμους

Γραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γραµµική Αλγεβρα. Ενότητα 1 : Εισαγωγή στη Γραµµική Αλγεβρα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γραµµική Αλγεβρα. Ενότητα 4 : Ορθογωνιότητα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Επιστηµονικός Υπολογισµός Ι Ενότητα 5 - Επίλυση Γραµµικών Συστηµάτων. Ευστράτιος Γαλλόπουλος

Επιστηµονικός Υπολογισµός Ι

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γραµµική Αλγεβρα. Ενότητα 6 : Ιδιοτιµές & Ιδιοδιανύσµατα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Γραµµική Αλγεβρα. Ενότητα 3 : ιανυσµατικοί Χώροι και Υπόχωροι. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Δομές Δεδομένων Ενότητα 1

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Γενικά Μαθηματικά Ι. Ενότητα 17: Αριθμητική Ολοκλήρωση, Υπολογισμός Μήκους Καμπύλης Λουκάς Βλάχος Τμήμα Φυσικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Άσκηση - Σταθμισμένος Χρονοπρογραμματισμός Διαστημάτων

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Ιστορία της μετάφρασης

Μικροβιολογία & Υγιεινή Τροφίμων

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Διαφωτισμός και διαμόρφωση των πολιτικών ιδεολογιών στην Ελλάδα

Διδακτική της Πληροφορικής

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Οργάνωση Υπολογιστών

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Εκκλησιαστικό Δίκαιο

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Θερμοδυναμική - Εργαστήριο

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Γραµµική Αλγεβρα. Ενότητα 1 : Εισαγωγή στη Γραµµική Αλγεβρα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

Εκκλησιαστικό Δίκαιο

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 3: Αποκατάσταση Εικόνας.

Γραµµική Αλγεβρα. Ενότητα 3 : ιανυσµατικοί Χώροι και Υπόχωροι. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Γενικά Μαθηματικά Ι. Ενότητα 13: Ακτίνα Σύγκλισης, Αριθμητική Ολοκλήρωση, Ολοκλήρωση Κατά Παράγοντες. Λουκάς Βλάχος Τμήμα Φυσικής

Γραµµική Αλγεβρα. Ενότητα 7 : Γραµµικοί Μετασχηµατισµοί. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

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

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Τίτλος Μαθήματος: Εργαστήριο Φυσικής Ι

Μοντελοποίηση Λογικών Κυκλωμάτων

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5

Οικονομετρία. Εξειδίκευση του υποδείγματος. Μορφή της συνάρτησης: Πολυωνυμική, αντίστροφη και αλληλεπίδραση μεταβλητών

3 η ΕΝΟΤΗΤΑ Συναρτήσεις στο MATLAB

Λογισμός 3. Ενότητα 19: Θεώρημα Πεπλεγμένων (γενική μορφή) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 3

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 2: Έλεγχος συνθηκών

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Εισαγωγή στην Επιστήμη των Υπολογιστών

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Υπόγεια Υδραυλική και Υδρολογία

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Προηγμένος έλεγχος ηλεκτρικών μηχανών

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Νεκτάριος Κοζύρης ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

Μάρκετινγκ Αγροτικών Προϊόντων

Διαφωτισμός και διαμόρφωση των πολιτικών ιδεολογιών στην Ελλάδα

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Λογιστικές Εφαρμογές Εργαστήριο

Τηλεματική και Νέες Υπηρεσίες

Ιστορία της μετάφρασης

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Υπολογιστικά & Διακριτά Μαθηματικά

Μαθηματικά και Φυσική με Υπολογιστές

ΦΥΣΙΚΗ. Ενότητα 2: ΔΙΑΝΥΣΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΣΥΝΤΕΤΑΓΜΕΝΩΝ. Αν. Καθηγητής Πουλάκης Νικόλαος ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε.

Νέες Τεχνολογίες και Καλλιτεχνική Δημιουργία

Εισαγωγή στους Αλγορίθμους Ενότητα 10η

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Πληροφοριακά Συστήματα & Περιβάλλον Ασκήσεις

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

Γραµµική Αλγεβρα. Ενότητα 1 : Εισαγωγή στη Γραµµική Αλγεβρα. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

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

Συγκριτικό Εκκλησιαστικό Δίκαιο

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

Transcript:

Επιστηµονικός Υπολογισµός Ι Ενότητα 4 : Μοντέλο Αριθµητικής και Σφάλµατα Υπολογισµού Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

Αδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ϱητώς. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 1 / 14

Χρηµατοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδηµαϊκά Μαθήµατα στο Πανεπιστήµιο Πατρών» έχει χρηµατοδοτήσει µόνο τη αναδιαµόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράµµατος «Εκπαίδευση και ια Βίου Μάθηση» και συγχρηµατοδοτείται από την Ευρωπαϊκή Ενωση (Ευρωπαϊκό Κοινωνικό Ταµείο) και από εθνικούς πόρους. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 2 / 14

Σκοπός Ενότητας Απώλεια πληροφορίας στον επιστηµονικό υπολογισµό. Αριθµητικό µοντέλο και πρότυπο αριθµητικής κινητής υποδιαστολής ΙΕΕΕ. Σφάλµατα στρογγύλευσης και διάδοσή τους. Σφάλµατα στρογγύλευσης και διάδοσή τους. είκτες κατάστασης προβλήµατος και αλγορίθµου. Θεωρία και εργαλεία εκτίµησης σφάλµατος και ποιότητας υπολογισµών. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 3 / 14

Περιεχόµενα 1 Υπενθύµιση 2 Υλοποιήσεις 3 Εντολή FMA Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 4 / 14

Επανορθωµένη άθροιση I Σχήµα: Ιδιοφυής ιδέα [Gill 51, Kahan 65] από [Higham 02] Για κάθε α.κ.υ. a b µπορούµε να υπολογίσουµε ŝ = fl(a + b), ê = fl((a ŝ) + b) χρησιµοποιώντας στρογγύλευση προς το πλησιέστερο. Το υπολογισµένο ê είναι το ακριβές σφάλµα τής άθροισης! Ειδικότερα, a + b = ŝ + ê Παρόλα αυτά, fl(ŝ + ê) = ŝ γιατί το αποτέλεσµα ŝ = fl(a + b) είναι το καλύτερο δυνατό (λόγω αρχής ακριβούς στρογγύλευσης). Αρα το ê από µόνο του δεν παρέχει µεγαλύτερη ακρίβεια. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 5 / 14

Επανορθωµένη άθροιση II Ιδέα επανόρθωσης για 3 τιµές: Αν αθροίζονται 3 τιµές, αποθηκέυουµε το ακριβές σφάλµα ê 1 ως την επόµενη πρόσθεση. Τότε αυτό και το ακριβές σφάλµα της επόµενης πρόσθεσης, έστω ê 2, αν προστεθούν σε e = ê 1 + ê 2 µπορεί η τιµή να είναι τόσο (σχετικά) µεγάλη που να επανορθώνει την τελική τιµή ώστε το υπολογισµένο (a + b) + c + e να είναι ακριβέστερο του υπολογισµένου (a + b) + c. Η ιδέα αυτή µπορεί να επεκταθεί µε διάφορους τρόπους σε αθροίσµατα περισσοτέρων τιµών. Πλεονεκτήµατα επανορθωµένης άθροισης Γενικά πιο ακριβής από την συνηθισµένη άθροιση. Εµπρός σφάλµα [Knuth, Kahan] ϕράσσεται ως Πίσω σφάλµα ( n n ) ξ j fl ξ j (2u + O(nu 2 )) j=1 Ο παράγοντας 1ης τάξης στο ϕράγµα δεν εξαρτάται από το n: j=1 n ξ j. j=1 fl(s) = n (1 + µ j)ξ j, όπου µ j 2u + O(nu 2 ) j=1 Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 6 / 14

Επανορθωµένη αριθµητική; (εφικτό όπως σκιαγραφήσαµε) Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 7 / 14

Μερικές υλοποιήσεις Κώδικας 1: Επανόρθωση στην άθροιση 2 αριθµών 1 function [s,e] = kahan_cs(a,b); 2 if (abs(a)< abs(b)) 3 temp =a; a=b; b=temp; 4 end 5 s = a+b; 6 e = (a-s)+b; Κώδικας 2: Επανόρθωση χωρίς ελέγχους στην άθροιση 2 αριθµών 1 function [s,e] = nocomp2sum(x,y); 2 % following Muller et al. 3 s = a+b; 4 a_dot = s-b; b_dot = s-a_dot; 5 da = a-a_dot; db = b-b_dot; 6 e = da + db; Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 8 / 14

Αθροιση n 3 στοιχείων (ιδέα Pichat) Κώδικας 3: Επανόρθωση στην άθροιση 1 function [s] = casc_sum(x); 2 s = x(1); 3 e = 0; 4 for i=2:length(x); 5 [s,c(i)] = kahan_cs(s,x(i)); 6 e = e + c(i); 7 end 8 s = s+e; Παρατήρηση: Εναλλακτικά µπορούµε να εφαρµόσουµε αναδροµικά τον ίδιο αλγόριθµο για την άθροιση των στοιχείων του c. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 9 / 14

Αθροιση n 3 στοιχείων (ιδέα Pichat) Κώδικας 4: Επανόρθωση στην άθροιση 1 function [s] = casc_sum(x); 2 s = x(1); 3 e = 0; 4 for i=2:length(x); 5 [s,c(i)] = kahan_cs(s,x(i)); 6 e = e + c(i); 7 end 8 s = s+e; Παρατήρηση: Εναλλακτικά µπορούµε να εφαρµόσουµε αναδροµικά τον ίδιο αλγόριθµο για την άθροιση των στοιχείων του c. ΠΑΡΑ ΕΙΓΜΑ: x = 1/n*ones(n,1) n sum(x) casc_sum(x) abs(1-sum(x)) 10 9.999999999999999e-01 1 1.1102e-016 100 1.000000000000001e+00 1 6.6613e-016 10 4 9.999999999980838e-01 1 1.9162e-012 Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 9 / 14

Εντολή Fused Multiply-Add (FMA) I Ορισµένοι επεξεργαστές περιέχουν εντολή FMA (Fused Multiply and Add). Πλεονέκτηµα στο χρόνο εκτέλεσης: Εκτελεί την πράξη z + x y στον ίδιο περίπου χρόνο που απαιτεί η x y ή η x + y. Πλεονέκτηµα στην ακρίβεια: συνεπάγεται µόνον ένα αριθµητικό σφάλµα στρογγύλευσης. fl(z + x y) = (z + x y)(1 + δ), δ u. αντί fl(z + fl(xy)) = (z + xy(1 + δ 1 ))(1 + δ 2 ) Περιέχεται στο πρότυπο IEEE-754-2008. FMA3: [a,b,c] <- a + b*c FMA4: [a,b,c,d] <- a + b*c είτε [M + 10], Wikipedia Αρχικά (1990) στο IBM RS-6000. Σήµερα στα Intel Haswell, AMD Piledriver, Bulldozer Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 10 / 14

Βιβλιογραφία I J.-M. Muller et al. Handbook of Floating-Point Arithmetic. Birkhäuser Boston, 2010. Ε. Γαλλόπουλος. Επιστηµονικός Υπολογισµός Ι. Πανεπιστήµιο Πατρών, 2008. Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 11 / 14

Χρήση Εργου Τρίτων I 1 http://link.springer.com/article/10.1007%2fbf01397083 (ϐλ. σελ 7) Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 12 / 14

Σηµείωµα Αναφοράς Copyright Πανεπιστήµιο Πατρών - Ευστράτιος Γαλλόπουλος 2015 Επιστηµονικός Υπολογισµός Ι, Εκδοση: 1.0, Πάτρα 2013-2014. ιαθέσιµο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/ceid1096/ Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 13 / 14

Τέλος Ενότητας Ευστράτιος Γαλλόπουλος c (ΤΜΗΥΠ, Π. Πατρών) Επιστηµονικός Υπολογισµός Ι 22 Νοεµβρίου 2013 14 / 14