ΕΑΡΙΝΟ ΕΞAΜΗΝΟ 2011 / SPRING TERM 2011

E06 - Παράλληλη Επεξεργασία / Parallel Processing

Ανακοινωσεις

  • Οι τελικές εξετάσεις του μαθήματος είναι την Παρασκευή 24/6/2010, ώρα 15:00. Θα πρέπει να έχετε μαζί σας και την τελική αναφορά του project.
  • Την Τετάρτη, 9/3/2011, ώρα 09:00, θα γίνει επιπρόσθετο μάθημα, μαζί με εισαγωγικά θέματα που αφορούν το project.
  • Την Τετάρτη, 2/3/2011, ώρα 09:00, θα γίνει αναπλήρωση του χαμένου μαθήματος της προηγούμενης εβδομάδας.
  • Κατόπιν αιτημάτων, από 21/2/2011 το μάθημα θα γίνεται κάθε Δευτέρα, 09:00 - 12:00.

SIMPLY Project -- simply fun!

  • Φάση 4: (Παράδοση 24/6/2011)
    Στη φάση αυτή θα πρέπει να υλοποιήσετε την επικοινωνία μεταξύ διεργασιών στον ίδιο κόμβο με κοινόχρηστη μνήμη (shmem). Θα πρέπει να τροποποιήσετε τις υπάρχουσες δομές / συναρτήσεις ώστε να επιτευχθεί αυτό. Τέλος, θα πρέπει να κάνετε μία συνολική αξιολόγηση / σύγκριση της υλοποίησής σας και να παραδώσετε πλήρη αναφορά υλοποίησης και πειραματισμών.
  • Φάση 3: (Παράδοση 16/5/2011)
    Στη φάση αυτή καλείστε να υλοποιήσετε συλλογικες επικοινωνιες και πιο συγκεκριμενα τις συναρτήσεις (τα ορισματα ειναι αναλογα αυτων του MPI) simply_barrier(int *nprocs), simply_bcast(void *sbuf, int count, SIMPLY_datatype dtype, int rootrank), simply_scatter(...), simply_gather(...), simply_allgather(...), simply_reduce(...). Τουλαχιστον η εκπομπη (bcast) θα πρεπει να ακολουθησει τον δενδρικο αλγοριθμο.
  • Φάση 2: (Παράδοση 11/4/2011)
    Στη φάση αυτή καλείστε να υλοποιήσετε τις συναρτήσεις simply_comm_size(int *nprocs), simply_comm_rank(int *myrank), simply_send(void *buf, int nelems, SIMPLY_datatype dtype, int dest, int tag), simply_receive(void *buf, int nelems, SIMPLY_datatype dtype, int dest, int tag, SIMPLY_status *status), με υποστηριζόμενους τύπους SIMPLY_CHAR / _INT / _DOUBLE και υποστήριξη των SIMPLY_ANY_SOURCE και SIMPLY_ANY_TAG. Οι διεργασίες θα πρέπει πλέον να εκκινούνται σε πολλαπλούς διαφορετικούς υπολογιστές. Το παραδοτέο θα περιλαμβάνει ένα δοκιμαστικό πρόγραμμα κυκλικής μεταφοράς δεδομένων με τις συναρτήσεις που υλοποιήσατε.
  • Φάση 1: (Παράδοση 28/3/2011)
    Υλοποίηση simplyrun [-n X] userprogram [ args ], και συναρτήσεων simply_init(), simply_finalize() μαζί με ένα δοκιμαστικό πρόγραμμα κυκλικής μεταφοράς bytes. Χρήση fork(), exec() και sockets.

Δευτερο σετ προγραμματων

» H εκφώνηση, σε μορφή .pdf
» Προθεσμία: Δευτέρα, 13 Ιουνίου 2011
» Ηλεκτρονική παράδοση των προγραμμάτων, με το turnin:
     turnin set2@cse06 <αρχεία>

Πρωτο σετ προγραμματων

» H εκφώνηση, σε μορφή .pdf
» Προθεσμία: Δευτέρα, 18 Απριλίου 2011
» Ηλεκτρονική παράδοση των προγραμμάτων, με το turnin:
     turnin set1@cse06 <αρχεία>

Σημειωσεις, διαφανειες, βοηθηματα