Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
|
|
- Ευτροπια Κύμα Δράκος
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:18 HellasGrid -Advanced Δρ. Μηνάς Δασυγένης Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών arch.icte.uowm.gr/mdasyg
2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα του Πανεπιστημίου Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2
3 Περιεχόμενα 1. Σκοπός της άσκησης Παραδοτέα Proxy Advanced info JDL αρχεία Advanced info Διαχείριση αποθήκευσης δεδομένων στο HellasGrid Χρήση Επεξεργαστή icc και της βιβλιοθήκης MKL Μέτρηση επιδόσεων Μέτρηση της επίδρασης της νημάτωσης στην dgemm
4 1. Σκοπός της άσκησης Προχωρημένα θέματα HellasGrid. Περισσότερα για proxy και αρχεία JDL. Διαχείριση αποθήκευσης δεδομένων. Χρήση προγράμματος icc και της βιβλιοθήκης MKL. Μέτρηση επιδόσεων. 2. Παραδοτέα (A) 14 ερωτήσεις (C) 6 ασκήσεις 3. Proxy Advanced info (Α1) Τι ισχύ έχει ένα πιστοποιητικό proxy στο HellasGrid; Πολλές φορές μπορεί να χρειαστεί να δημιουργήσετε ένα proxy με μεγαλύτερη διάρκεια για τη δική σας διευκόλυνση. Γι αυτό υπάρχει η εντολή myproxy-init -n -d -R 'wms*.egee-see.org wms*.hellasgrid.gr' Εκτελέστε την και απαντήστε στα εξής: (Α2) Ποια είναι η ισχύς του proxy σας τώρα; (Α3) Με ποια εντολή μπορείτε να το επιβεβαιώσετε; (Α4) Υπάρχει κάποια παράμετρος που να μπορεί να καθορίσει πόσο χρόνο ισχύς θα έχει το πιστοποιητικό; (Α5) Θέστε το πιστοποιητικό σε ισχύ για 10 μέρες. Επιβεβαιώστε με screenshot. (Α6) Ποιά είναι η μέγιστη ισχύς που μπορεί να έχει το πιστοποιητικό; (Α7) Ποια είναι η εντολή διαγραφής του proxy; Αξίζει να σημειωθεί ότι παρόλο που μπορούμε να θέσουμε την ισχύ του πιστοποιητικού για πολύ καιρό, οι εργασίες που υποβάλλονται πρέπει να έχουν ολοκληρωθεί πριν από το WallClockTime όριο, το οποίο είναι συνήθως από 3 έως 10 μέρες. Εξαρτάται από το CE. Εάν υπερβεί αυτή η χρονική περίοδος η εργασία θα ακυρωθεί. 4
5 4. JDL αρχεία Advanced info Όπως έχουμε ήδη δει κάθε εργασία που υποβάλλεται στο Grid περιγράφεται από ένα JDL αρχείο που σαν ονομασία προέρχεται από τα αρχικά των λέξεων Job Description Language. Ένα JDL αρχείο είναι ένα απλό αρχείο κειμένου (ASCII text) με κατάληξη.jdl και περιλαμβάνει μία σειρά παραμέτρων, που περιγράφουν την εργασία, και τις τιμές αυτών. Για την γρήγορη σύνταξη αρχείων JDL η ομάδα ανάπτυξης υπηρεσιών έχει αναπτύξει το εργαλείο jdl-creator. (Α8) Εντοπίστε και αντιγράψτε το εργαλείο jdl-creator στον κατάλογο εργασίας. Από τις διαθέσιμες επιλογές ο χρήστης μπορεί να επιλέξει πολλαπλές είτε διαχωρίζοντας με κόμμα (,) τις επιλογές του είτε ορίζοντας ένα εύρος τιμών με παύλα (-). Επιπλέον δίνεται η δυνατότητα να χρησιμοποιηθεί η τιμή 0 που αυτομάτως θα συμπεριλάβει στο πρότυπο JDL τα απαραίτητα πεδία που πρέπει να έχει το τελικό αρχείο που θα χρησιμοποιηθεί. Ανάλογα με τις ανάγκες που θέλουμε να πληρεί η εργασία μας μπορούμε να επιλέξουμε ανάμεσα στις διαθέσιμες επιλογές ή να κάνουμε συνδυασμό αυτών ώστε στο τέλος να έχουμε ένα πρότυπο JDL ή έστω ένα τμήμα αυτού για να χρησιμοποιήσουμε ως βάση. Την έξοδο λοιπόν από το εργαλείο ο χρήστης μπορεί να την αντιγράψει με copy paste και να δημιουργήσει έτσι εύκολα και γρήγορα το πλήρες JDL αρχείο παραμετροποιημένο για τη δική του εργασία. Επιπλέον των παραπάνω το εργαλείο δίνει τη δυνατότητα άμεσης εγγραφής των πρότυπων γραμμών σε νέο αρχείο εφόσον κληθεί με την παρακάτω σύνταξη: $jdl-creator -o job.jdl Τέλος εάν βρισκόμαστε εντός του καταλόγου όπου υπάρχουν το εκτελέσιμο και τα input δεδομένα μπορούμε να καλέσουμε το εργαλείο με την ακόλουθη σύνταξη: $jdl-creator -s -m -o job.jdl και αυτό θα προσπαθήσει να ταυτοποιήσει ποιο είναι το εκτελέσιμο και ποια τα αρχεία εισόδου ώστε να τα συμπεριλάβει απευθείας στις αντίστοιχες γραμμές (Executable,InputSandbox). Η εντολή χρήσης αυτού του εργαλείου είναι: jdl-creator [options] [arguments] και οι επιλογές είναι οι εξής: --version -h, --help Εμφάνιση της έκδοσης και τερματισμός Εμφάνιση βοήθειας και τερματισμός -o FILE, --output=file Αποθήκευση της εξόδου στο FILE 5
6 -m, --make-jdl Κάνει την έξοδο ολοκληρωμένο JDL -a field/s, --arguments=field/s Διαθέσιμες επιλογές -f, --force -q, --quiet -s, --smart -l, --list -e, --examples Αναγκάζει την έξοδο, ακόμη και αν υπάρχουν συγκρούσεις Απόκρυψη εξόδου Προσπάθεια αναγνώρισης του Executable και InputSandbox Εμφάνιση όλων των διαθέσιμων πεδίων Εμφάνιση κάποιων παραδειγμάτων χρήσης (Α9) Επιτύχετε το παρακάτω αποτέλεσμα μέσω του εργαλείου jdl-creator. # # JDL Template Created by jdl-creator. # More # Executable = "run.sh"; CpuNumber = 8; StdOutput = "std.out"; StdError = "std.err"; InputSandbox = {"run.sh", "data.dat"; OutputSandbox = {"std.err","std.out"; Environment = {"NODES_REQ=1:cuda"; Requirements = Member("OPENMPI", other.gluehostapplicationsoftwareruntimeenvironment) && Member("CUDA", other.gluehostapplicationsoftwareruntimeenvironment); Ποιά εντολή δώσατε και ποιες επιλογές επιλέξατε μέσα στο εργαλείο, ώστε να δημιουργηθεί το αρχείο example.jdl με τα παραπάνω περιεχόμενα; 5. Διαχείριση αποθήκευσης δεδομένων στο HellasGrid Το HellasGrid δίνει τη δυνατότητα στους χρήστες του να διαχειρίζονται μεγάλου όγκου αρχεία, εισόδου και εξόδου, και τη μεταφορά τους σε όλα τα αποθηκευτικά μηχανήματα της υποδομής. Όταν κανείς θέλει να αποθηκεύσει τα αρχεία του ή να τα συγκεντρώσει σε ένα σύστημα πρέπει να ακολουθήσει μία συγκεκριμένη διαδικασία, η οποία θα αναλυθεί σε λίγο. Αρχικά, ας αναφέρουμε μερικά πράγματα σχετικά με τον τρόπο αποθήκευσης των αρχείων στο grid. Τα αρχεία που αποθηκεύονται στους αποθηκευτικούς χώρους του HellasGrid, μπορούμε να τα παρακολουθούμε με το Logical File Catalog (LFC). Κάθε αρχείο που αποθηκεύετε για πρώτη φορά στους αποθηκευτικούς χώρους, καταχωρείτε με κάποιο όνομα στο LFC. Μπορούμε να αναφερθούμε στα αρχεία με πολλά ονόματα, τα πιο συνηθισμένα όμως είναι το GUID (Grid Unique Identifier), το 6
7 LFN (Logical File Name) και το SURL (Storage Uniform Resource Locator ή Storage URL). Μπορεί να έχει πάνω από ένα λογικό όνομα αλλά έχει μόνο ένα GUID. Το GUID αναφέρεται σε ένα συγκεκριμένο αρχείο καθώς και σε όλα τα αντίγραφά του στα storage elements. Επειδή είναι δύσκολη η διαχείριση των αρχείων με το GUID όνομά τους, χρησιμοποιούμε το LFN, το οποίο είναι πιο εύκολο στη χρήση και την κατανόηση. Μπορούμε να αναφερόμαστε στο ίδιο αρχείο με περισσότερα από ένα LFN ονόματα, ασχέτως με το πόσα αντίγραφά του υπάρχουν στην υποδομή. Το SURL δείχνει την ακριβή διεύθυνση του αρχείου στο grid. Γι αυτό για κάθε αντίγραφο του αρχείου, υπάρχει ένα μοναδικό SURL που το χαρακτηρίζει. Δεν είναι πρακτική η χρήση του SURL και γι αυτό αποφεύγεται. Όποιο από τα παραπάνω αναγνωριστικά και αν χρησιμοποιείτε για να αναφερθείτε σε ένα αρχείο, αυτό επιτυγχάνεται με την υπηρεσία του Logical File Catalog. Υπάρχουν διαθέσιμες εντολές για το ανέβασμα και κατέβασμα των αρχείων στα και από τα storage elements, οι λεγόμενες lcg-εντολές. Πριν εκτελέσετε αυτές τις εντολές πρέπει να ρυθμιστούν κάποιες μεταβλητές περιβάλλοντος. Εκτελέστε με τη σειρά τις παρακάτω εντολές: export LCG_CATALOG_TYPE=lfc export LFC_HOST=lfc.isabella.grnet.gr export LCG_GFAL_INFOSYS=bdii.isabella.grnet.gr:2170 export LCG_GFAL_VO=see Μετά την εκτέλεση των παραπάνω εντολών, για να χρησιμοποιήσετε τις εντολές lcg, θα πρέπει να δημιουργήσετε πιστοποιητικό proxy(εάν δεν έχετε ήδη δημιουργήσει πιο πριν). Εκτελέστε την εντολή: lcg-cr -l /grid/see/name/dir/file file:$pwd/file και μεταφέρεται ένα αρχείο της επιλογής σας στο Grid. (Α10) Επιβεβαιώστε με screenshot ότι όλα εκτελέστηκαν σωστά. 7
8 Οι εντολές που διατίθονται για τη διαχείριση των storeage elements είναι οι lfc-. Command Description Example Explanation lfc-mkdir Δημιουργεί ένα lfc-mkdir Δημιουργία καταλόγου κατάλογο εργασίας /grid/see/jsmith/my_project my_project στο /grid/see/jsmith lfc-ls lfc-rm lfc-chmod lfc-rename Εμφάνιση περιεχομένων ενός καταλόγου Διαγραφή ενός αρχείου/καταλόγου Αλλαγή δικαιωμάτων Μετονομασία ενός αρχείου/καταλόγου lfc-ls -l /grid/see/jsmith lfc-rm -r /grid/see/jsmith/my_project lfc-chmod 700 /grid/see/jsmith/my_project lfc-rename /grid/see/jsmith/my_data /grid/see/jsmith/data Επιστρέφει τα περιεχόμενα του καταλόγου. Διαγράφει το my_project (πρέπει να είναι άδειο) Θέτει δικαιώματα στον κατάλογο my_project. Αλλάζει το όνομα από my_data σε data. Οι παραπάνω εντολές χρησιμοποιούν το LFN. Για τη διαχείριση των αρχείων στο Grid, χρησιμοποιούνται οι εντολές lcg-. Οι οποίες βρίσκονται στον επόμενο πίνακα. Command Description Example Explanation lcg-cr Αντιγραφή ενός lcg-cr -l Ανεβάζει το αρχείο input.tar.gz. τοπικού αρχείου /grid/see/jsmith/my_project/input Επίσης καταχωρεί αυτό το αρχείο στο στον SE.tar.gz file:$pwd/input.tar.gz LFC με το όνομα (ανέβασμα). /grid/see/jsmith/my_project/ lcg-rep lcg-cp lcg-del lcg-lg lcg-lr Αντιγραφή αρχείου Αντιγραφή ενός αρχείου του grid στον τοπικό κατάλογο (κατέβασμα). Διαγραφή των αντιγράφων. Εμφάνιση του GUID ενός αρχείου. Εμφάνιση των SURL(s) ενός αρχείου. lcg-rep lfn:/grid/see/jsmith/my_project/i nput.tar.gz lcg-cp lfn:/grid/see/jsmith/my_project/i nput.tar.gz file:$pwd/input.tar.gz lcg-del -a lfn:/grid/see/jsmith/my_project/i nput.tar.gz lcg-lg lfn:/grid/see/jsmith/my_project/i nput.tar.gz lcg-lr lfn:/grid/see/jsmith/my_project/i nput.tar.gz input.tar.gz Αντιγράφει το αρχείο με το συγκεκριμένο LFN, σε ένα άλλο storage element. Κατέβασμα του αρχείου input.tar.gz στο UI και αποθήκευσή του με το όνομα input.tar.gz Διαγράφει όλες τις εμφανίσεις του αρχείου στο grid. Επιστρέφει το GUID όνομα του αρχείου. Επιστρέφει τα GUID(s) ονόματα του αρχείου. (C1) Δημιουργήστε ένα νέο φάκελο στο LFC και κάντε τον ιδιωτικό, ώστε να έχετε μόνο εσείς πρόσβαση. Αν υποθέσουμε ότι θέλουμε να ανεβάσουμε το αρχείο με όνομα local_data.txt στο grid στον κατάλογο που δημιουργήσαμε πριν, πώς θα βρούμε το GUID του; 8
9 (C2) Αντιγράψτε τώρα το παραπάνω αρχείο στο se01.athena.hellasgrid.gr. Δείτε όλα τα διαθέσιμα αντίγραφα που υπάρχουν στην υποδομή και στη συνέχεια διαγράψτε τα. 6. Χρήση Επεξεργαστή icc και της βιβλιοθήκης MKL Στο HellasGrid υπάρχει η δυνατότητα της χρήσης του compiler της Intel icc. Για τη χρήση του πρέπει να ρυθμιστούν οι κατάλληλες μεταβλητές περιβάλλοντος. Φορτώστε την 11 η έκδοση της intel με την εντολή module load intel/11.1. Επιβεβαιώστε ότι φορτώθηκε με module list. Το αποτέλεσμα πρέπει να είναι: Currently Loaded Modulefiles: 1) intel/11.1 Δοκιμάστε να εκτελέσετε την εντολή icc -V. Εάν σας εμφανίζει το παρακάτω σφάλμα πρέπει να αποκτήσετε ένα license. icc -V Error: A license for CCompL is not available (-76,61026,2). License file(s) used were (in this order): 1. Trusted Storage 2. /home/lmount/.intel/licenses 3. /opt/intel/compiler/11.1/059/licenses 4. /home/lmount/intel/licenses 5. /opt/intel/licenses/*.lic 6. /Users/Shared/Library/Application Support/Intel/Licenses 7. /opt/intel/compiler/11.1/059/bin/intel64/*.lic Please visit if you require technical assistance. icc: error #10052: could not checkout FLEXlm license Για να το αποκτήσετε επισκεφθείτε τη σελίδα /software.intel.com/en-us/noncommercial-software-development επιλέξτε το intel Math Kernel Library for Linux και συμπληρώστε στη συνέχεια τη φόρμα που θα σας παρουσιαστεί βάζοντας: Version OS Linux Processor Archtecture Intel(R) 64 Dynamic or Static Integer length Sequential or Multi-threaded Static 32-bit (lp64) Sequential 9
10 Έπειτα στο χώρο του UI (Users Interface), αντιγράψτε το license (.lic) σε έναν από τους δύο φακέλους: 1. ~/intel/licenses/ 2. ~/.intel/licenses/ Εάν δεν υπάρχουν, δημιουργείστε τους με mkdir. (Α11) Ξαναδώστε icc V και επιβεβαιώστε ότι έχετε ολοκληρώσει τη διαδικασία με επιτυχία. Η Intel έχει αναπτύξει κάποιες βιβλιοθήκες τις λεγόμενες mkl, οι οποίες αποτελούν εναλλακτικές υλοποιήσεις των δημοφιλών βιβλιοθηκών γραμμικής άλγεβρας (blas, lapack, blacs, scalapack) βελτιστοποιημένες για την αρχιτεκτονική των επεξεργαστών της Intel. Θα ακολουθήσουμε τώρα το εργαστηριακό φυλλάδιο της Intel για το mkl. Μπορείτε να το βρείτε εδώ. Αυτό το tutorial δείχνει πώς να χρησιμοποιούμε τους επεξεργαστές της Intel MKL στις εφαρμογές μας: Πολλαπλασιάζοντας πίνακες με τη χρήση των Intel MKL ρουτινών. Τη μέτρηση της απόδοσης του πολλαπλασιασμού πινάκων. Έλεγχος threading. Η Intel MKL παρέχει αρκετές ρουτίνες για τον πολλαπλασιασμό πινάκων. Η πιο διαδεδομένη είναι η dgemm ρουτίνα, η οποία υπολογίζει το προϊόν των διπλής ακρίβειας πινάκων: C = αα*β+β*c Η dgemm ρουτίνα μπορεί να εκτελέσει πολλούς υπολογισμούς. Για παράδειγμα, μπορείτε να εκτελέσετε αυτή τη λειτουργία με αντιστροφή πινάκων (transpose) είτε με συζυγή αντστροφή (conjugate transpose). Οι πλήρεις λεπτομέρειες των δυνατοτήτων της dgemm ρουτίνας και του σύνολο των παραμέτρων της, μπορούν να βρεθούν στο?gemm θέμα της Intel Math Kernel Manual Reference Library. 10
11 Οι Α,Β πίνακες περιέχουν τα εξής στοιχεία και οι μεταβλητές α, β είναι διπλής ακρίβειας: Η άσκηση αυτή δείχνει πώς μπορείτε να καλέσετε τον dgemm ρουτίνα. Η συγκεκριμένη εφαρμογή θα κάνει χρήση του αποτελέσματος του πολλαπλασιασμού των δύο πινάκων. Αντιγράψτε τον παρακάτω κώδικα στο αρχείο dgemm_example.c και κάντε τον compile με icc -mkl dgemm_example.c. #define min(x,y) (((x) < (y))? (x) : (y)) #include <stdio.h> #include <stdlib.h> #include "mkl.h" int main() { double *A, *B, *C; int m, n, k, i, j; double alpha, beta; printf ("\n This example computes real matrix C=alpha*A*B+beta*C using \n" " Intel(R) MKL function dgemm, where A, B, and C are matrices and \n" " alpha and beta are double precision scalars\n\n"); m = 2000, k = 200, n = 1000; printf (" Initializing data for matrix multiplication C=A*B for matrix \n" " A(%ix%i) and matrix B(%ix%i)\n\n", m, k, k, n); alpha = 1.0; beta = 0.0; printf (" Allocating memory for matrices aligned on 64-byte boundary for better \n" " performance \n\n"); A = (double *)mkl_malloc( m*k*sizeof( double ), 64 ); B = (double *)mkl_malloc( k*n*sizeof( double ), 64 ); C = (double *)mkl_malloc( m*n*sizeof( double ), 64 ); if (A == NULL B == NULL C == NULL) { printf( "\n ERROR: Can't allocate memory for matrices. Aborting... \n\n"); mkl_free(a); mkl_free(b); mkl_free(c); return 1; printf (" Intializing matrix data \n\n"); for (i = 0; i < (m*k); i++) { A[i] = (double)(i+1); for (i = 0; i < (k*n); i++) { B[i] = (double)(-i-1); for (i = 0; i < (m*n); i++) { C[i] = 0.0; printf (" Computing matrix product using Intel(R) MKL dgemm function via CBLAS interface \n\n"); cblas_dgemm(cblasrowmajor, CblasNoTrans, CblasNoTrans, m, n, k, alpha, A, k, B, n, beta, C, n); printf ("\n Computations completed.\n\n"); 11
12 printf (" Top left corner of matrix A: \n"); for (i=0; i<min(m,6); i++) { for (j=0; j<min(k,6); j++) { printf ("%12.0f", A[j+i*k]); printf ("\n"); printf ("\n Top left corner of matrix B: \n"); for (i=0; i<min(k,6); i++) { for (j=0; j<min(n,6); j++) { printf ("%12.0f", B[j+i*n]); printf ("\n"); printf ("\n Top left corner of matrix C: \n"); for (i=0; i<min(m,6); i++) { for (j=0; j<min(n,6); j++) { printf ("%12.5G", C[j+i*n]); printf ("\n"); printf ("\n Deallocating memory \n\n"); mkl_free(a); mkl_free(b); mkl_free(c); printf (" Example completed. \n\n"); return 0; (C3) Εάν έγινε σωστά θα πρέπει να δημιουργήθηκε το a.out εκτελέσιμο. Εκτελέστε το και δείτε το αποτέλεσμα της πράξης. 7. Μέτρηση επιδόσεων Η Intel MKL παρέχει λειτουργίες για τη μέτρηση των επιδόσεων. Αυτό παρέχει έναν τρόπο για την ποσοτικοποίηση της απόδοσης βελτίωσης που θα προέκυπτε από τη χρήση Intel MKL ρουτίνες σε αυτό το εγχειρίδιο. Χρησιμοποιήστε τη dsecnd ρουτίνα, για να επιστρέψει το χρόνο που πέρασε στη CPU σε δευτερόλεπτα. (C4) Αντιγράψτε το dgemm_example.c στο dgemm_example_time.c. Προσθέστε στο κατάλληλο σημείο το παρακάτω κομμάτι κώδικα και μετρήστε τον χρόνο εκτέλεσης του προγράμματος. Επειδή εκτελείτε πολύ γρήγορα η dgemm, και είναι δύσκολη η μέτρησή της, την εκτελούμε πολλές φορές και μετράμε τον μέσο χρόνο εκτέλεσης. Γι αυτό το λόγο θέστε μία σταθερή μεταβλητή LOOP_COUNT που θα καθορίζει πόσες φορές θα εκτελεστεί η εντολή. Για να βρούμε τη βελτιστοποίηση που επιτυγχάνεται με τη χρήση της dgemm, πρέπει να εκτελέσουμε την ίδια μέτρηση, αλλά αντί αυτής της συνάρτησης να υλοποιήσουμε μία τριπλή επανάληψη υπολογισμού των πινάκων. 12
13 (C5) Αντιγράψτε το dgemm_example_time.c στο dgemm_example_time2.c. Για τη χρονομέτρηση της εκτέλεσης, χρησιμοποιείστε τον παρακάτω κώδικα. printf (" Making the first run of matrix product using triple nested loop\n" " to get stable run time measurements \n\n"); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { sum = 0.0; for (l = 0; l < k; l++) sum += A[k*i+l] * B[n*l+j]; C[n*i+j] = sum; printf (" Measuring performance of matrix product using triple nested loop \n\n"); s_initial = dsecnd(); for (r = 0; r < LOOP_COUNT; r++) { for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { sum = 0.0; for (l = 0; l < k; l++) sum += A[k*i+l] * B[n*l+j]; C[n*i+j] = sum; s_elapsed = (dsecnd() - s_initial) / LOOP_COUNT; printf (" == Matrix multiplication using triple nested loop completed == \n" " == at %.5f milliseconds == \n\n", (s_elapsed * 1000)); (Α12) Βρείτε το συνολικό speedup. 8. Μέτρηση της επίδρασης της νημάτωσης στην dgemm Από προεπιλογή, η Intel MKL χρησιμοποιεί n νήματα, όπου n είναι ο αριθμός των φυσικών πυρήνων στο σύστημα. Περιορίζοντας τον αριθμό των νημάτων και μετρώντας την αλλαγή στην απόδοση της dgemm, η άσκηση αυτή δείχνει πώς το threading επιδρά στην απόδοση του προγράμματος. Η άσκηση αυτή κάνει χρήση της mkl_set_num_threads ρουτίνας για να γράψει πάνω στον προκαθορισμένο αριθμό νημάτων και της ρουτίνας mkl_get_max_threads, για να καθορίσει τον μέγιστο αριθμό νημάτων. (C6) Αντιγράψτε το dgemm_example.c στο dgemm_example_threads.c. Αφού προσθέσετε τον παρακάτω κώδικα με όποιες αλλαγές χρειάζεται, συγκρίνεται το χρόνο εκτέλεσης με τον αρχικό. printf (" Finding max number of threads Intel(R) MKL can use for parallel runs \n\n"); max_threads = mkl_get_max_threads(); printf (" Running Intel(R) MKL from 1 to %i threads \n\n", max_threads); for (i = 1; i <= max_threads; i++) { for (j = 0; j < (m*n); j++) C[j] = 0.0; 13
14 printf (" Requesting Intel(R) MKL to use %i thread(s) \n\n", i); mkl_set_num_threads(i); printf (" Making the first run of matrix product using Intel(R) MKL dgemm function \n" " via CBLAS interface to get stable run time measurements \n\n"); cblas_dgemm(cblasrowmajor, CblasNoTrans, CblasNoTrans, m, n, k, alpha, A, k, B, n, beta, C, n); printf (" Measuring performance of matrix product using Intel(R) MKL dgemm function \n" " via CBLAS interface on %i thread(s) \n\n", i); s_initial = dsecnd(); for (r = 0; r < LOOP_COUNT; r++) { cblas_dgemm(cblasrowmajor, CblasNoTrans, CblasNoTrans, m, n, k, alpha, A, k, B, n, beta, C, n); s_elapsed = (dsecnd() - s_initial) / LOOP_COUNT; printf (" == Matrix multiplication using Intel(R) MKL dgemm completed ==\n" " == at %.5f milliseconds using %d thread(s) ==\n\n", (s_elapsed * 1000), i); Παρατηρήστε τα αποτελέσματα που λάβατε και απαντήστε στα εξής: (Α13) Ο χρόνος εκτέλεσης αυξάνεται ή μειώνεται όσο ανεβαίνει ο αριθμός των νημάτων; (Α14) Τι γίνεται στην περίπτωση που θέσουμε παραπάνω από το μέγιστο αριθμό νημάτων προς εκτέλεση; 14
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: Μέτρηση χρόνου τοίχου κατά POSIX Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:16 INSPECTOR Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών
Λειτουργικά Συστήματα
Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Δομημένος Προγραμματισμός Ενότητα 5(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 9 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 13 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:14 - ADVISOR Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών
Δομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό
Προγραμματισμός Η/Υ 1 (Εργαστήριο)
Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 10: Συναρτήσεις Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Λειτουργικά Συστήματα
Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ARDUINO Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:08 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ANDROID-DEVKIT No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 8: Αρχεία και Δομές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν
Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Δομημένος Προγραμματισμός Ενότητα 4(β): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε
Προγραμματισμός Η/Υ 1 (Εργαστήριο)
Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 5 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Δομή του προγράμματος Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ No11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Δομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Εισαγωγή στον δομημένο προγραμματισμό
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 12 η : Δυναμική Ανάθεση Θέσης Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:00 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 5: MPI_Reduce Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Δομημένος Προγραμματισμός Ενότητα 5(α): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Εισαγωγή στην Πληροφορική
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου
Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 12: Συνοπτική Παρουσίαση Ανάπτυξης Κώδικα με το Matlab Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 6 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:10 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Αρχιτεκτονική Υπολογιστών Εργαστήριο
Αρχιτεκτονική Υπολογιστών Εργαστήριο Ενότητα: ΠΑΡΑΔΕΙΓΜΑ ΑΠΟΣΦΑΛΜΑΤΩΣΗΣ Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Δομημένος Προγραμματισμός
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 1: Εισαγωγή Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
HY555 Παράλληλα Συστήματα και Grids Χειμερινό εξάμηνο 2007 Άσκηση 3 Εξοικείωση με το EGEE GRID Environment
HY555 Παράλληλα Συστήματα και Grids Χειμερινό εξάμηνο 2007 Άσκηση 3 Εξοικείωση με το EGEE GRID Environment Σκοπός της άσκησης αυτής είναι η εξοικείωση με ένα πραγματικό περιβάλλον Grids. Θα χρησιμοποιήσετε
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή
Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Δημιουργία Νέου αρχείου Από το μενού προγραμμάτων ανοίγετε το DEV C++ Επιλέγετε File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N)
Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 5: MPI_Reduce Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Δομημένος Προγραμματισμός Ενότητα 6(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 8: Ολισθήσεις Περιστροφές Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 4 η : Η Γλώσσα Προγραμματισμού VB.NET (3 ο Μέρος) Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 10: Ιεραρχία Μνήμης. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg
Αρχιτεκτονική Υπολογιστών
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα: Intel Parallel Studio XE 2013 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων
1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB)
ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ 1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB) Ν.Δ. Λαγαρός Μ. Φραγκιαδάκης Α. Στάμος Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Ενσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 10 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1
1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr 1 η ΑΣΚΗΣΗ ΣΤΗΝ
Λειτουργικό σύστημα Unix
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr)
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 10: Πέρασμα Παραμέτρων σε Διαδικασίες. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 2 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 1: Ο προσομοιωτής DOSBOX Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 3: MPI_Get_count, non blocking send/recv, εμφάνιση και αποφυγή αδιεξόδων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org
Εισαγωγή στον δομημένο προγραμματισμό
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 7 η : Δείκτες Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Δομημένος Προγραμματισμός Ενότητα 3(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ηλεκτρονική Υγεία Εργαστήριο 4 ο : MATLAB Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται
Εισαγωγή στον επιστημονικό προγραμματισμό 1 o Μάθημα
Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ Εισαγωγή στον επιστημονικό προγραμματισμό 1 o Μάθημα email: leo@mail.ntua.gr url: http://users.ntua.gr/leo Άδεια Χρήσης Το παρόν
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διαδικασίες, Σωρός, Διαφανείς συναρτήσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
4 η ΕΝΟΤΗΤΑ Μητρώα και συνθήκες στο MATLAB
ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ 4 η ΕΝΟΤΗΤΑ Μητρώα και συνθήκες στο MATLAB Ν.Δ. Λαγαρός Μ. Φραγκιαδάκης Α. Στάμος Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες Χρήσης
Διαδικαστικός Προγραμματισμός
Διαδικαστικός Προγραμματισμός Ενότητα 8: Παραδείγματα με μονοδιάστατους πίνακες, συναρτήσεις, δείκτες, πέρασμα παραμέτρων με αναφορά Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό
Ειδικά Θέματα Προγραμματισμού
Ειδικά Θέματα Προγραμματισμού Ενότητα 3: Τύποι Δεδομένων - Τελεστές Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Εισαγωγή στον Προγραμματισμό με C++
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 6: Συναρτήσεις Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν
Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 2: OpenMPI Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα
Μεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος II Θέματα ιάλεξης Μη- ομημένος
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας
Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:12 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων
Προγραμματισμός Η/Υ. Ενότητα 3: Top Down Σχεδιασμός
Προγραμματισμός Η/Υ Ενότητα 3: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση της έννοιας της διεργασίας
Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)
Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Αρχιτεκτονική Υπολογιστών
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Εντολές αλλαγής ροής. Διακλάδωση χωρίς συνθήκη. Διακλάδωση με συνθήκη. Δρ. Μηνάς Δασυγένης
Προγραμματισμός Η/Υ 1 (Εργαστήριο)
Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 4: Τύποι Δεδομένων και τελεστές Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual
MILE Simulator Version 1.0 User's Manual Νοέμβριος, 2011 Περιεχόμενα 1. Εισαγωγή στον προσομοιωτή...2 1.1 Εγκατάσταση...2 1.2 Βοήθεια Διευκρινήσεις...2 2. Ξεκινώντας με τον προσομοιωτή...3 2.1 Το memory
Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 2: Μεταβλητές και Σταθερές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης
Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε
Αρχιτεκτονική Υπολογιστών
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: inc, dec, loop, jcxz, dup, displacement Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο
Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής
Ενότητα 5: Δείκτες και Δυναμική Δέσμευση- Αποδέσμευση Μνήμης στη C/ Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με δείκτες /Ένα πακέτο για τον ΑΤΔ Συνδεδεμένη Λίστα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν
Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο
Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο Ενότητα 3: Αρχεία script- Αρχεία συναρτήσεων Διδάσκουσα: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό
Προγραμματισμός Η/Υ 1 (Εργαστήριο)
Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 3: Συναρτήσεις printf() και scanf() Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Εισαγωγή Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
ΠΑΓΚΑΛΟΣ ΙΩΑΝΝΗΣ ΣΙΣΜΑΝΗΣ ΝΙΚΟΣ. File Transfer Protocol
ΠΑΓΚΑΛΟΣ ΙΩΑΝΝΗΣ ΣΙΣΜΑΝΗΣ ΝΙΚΟΣ File Transfer Protocol Πρωτόκολλο Μεταφοράς Αρχείων Χρησιμοποιείται σε δίκτυα τα οποία υποστηρίζουν το πρωτόκολλο TCP/IP (όπως internet ή intranet). Ο FTP client μπορεί
Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)
Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται