320 likes | 465 Views
Introduction to Parallel Processing. Home assignment #2 Dr. Guy Tel-Zur tel-zur@ee.bgu.ac.il November 2005. תרגיל בית מספר 2 להגשה באמצעות הדוא"ל בלבד, pp@ee.bgu.ac.il עד לתאריך 11/12/2005. לתרגיל הבית שני חלקים. חלק ראשון: MPI/MPE.
E N D
Introduction to Parallel Processing Home assignment #2 Dr. Guy Tel-Zur tel-zur@ee.bgu.ac.il November 2005
תרגיל בית מספר 2 • להגשה באמצעות הדוא"ל בלבד, pp@ee.bgu.ac.il עד לתאריך 11/12/2005. • לתרגיל הבית שני חלקים
חלק ראשון: MPI/MPE הוסף פקודות MPE לתכנית המחשב של תרגיל בית מס' 1 סעיף 1 – מימוש Reduce בעזרת פקודות Point-to-point בלבד. קבל קובץ "יומן" בעל סיומת clog. המר אותו לקובץ .alog or .slog והצגת את תרשים התכנית בעזרת Upshot/Jumpshot. שלח קובץ word הכולל צילום מסך של תיאור ריצת המחשב וצרף משפטי הסבר לתרשים. מומלץ לבצע מספר חזרות. התכנית jumpshot נמצאת תחת: /usr/local/mpich/share/jumpshot-3/bin התכנית upshot נמצאת תחת: /usr/local/mpich/share/upshot/bin לשם עבודה עם תכנות אלה יש לפתוח חלון גראפי באמצעות תוכנות X client כגון Reflection , X-win32 או מחלון x של תחנת לינוקס אחרת, כפי שהודגם בכיתה.
חלק שניDynamic Process Creation Using PVM Simulation of a Hyperon Particle Decay
Particle Accelerators CERN The SPS Accelerator
(u,d,s) M=1,116MeV, ct=7.9cm, t=2.6E-10sec Main decay modes Branching Ratios
מטרת התרגיל • כתיבת תכנית סימולציה של יצירת חלקיק ההיפרון • לצורך קבלת יחסי הסתעפויות נכונים יש צורך בסטטיסטיקה גבוהה • לכן, יש צורך ביצירת חלקיקי היפרון רבים
תרגיל בית מס' 3 • יש לכתוב תכנית מקבילית ב- PVM אשר מדמה את דעיכת ההיפרון. • התכנית תתבסס על מנגנון יצירת תהליכים דינאמיים. • כל תהליך דעיכה המוזכר בשקף הקודם יורץ כתכנית PVM נפרדת. • כל תהליך יתרחש על-פי יחס ההסתעפות (branching ratio) הפיסיקלי המוזכר במצגת זו.
תרגיל בית מס' 3 • יש להריץ לפחות כמה מאות דעיכות של היפרון לקבלת סטטיסטיקה סבירה. • על התכנית להדפיס את מספר ההיפרונים ואת החלקיקים היציבים הנוצרים הבאים: • גאמה (פוטון) • אלקטרון • פוזיטרון • פרוטון • נייטרון
תרגיל בית מס' 3 • יש לממש את מודל MIMD. • להוסיף תיעוד בגוף התכנית והסבר של כ"א מהמשתנים. • להוסיף את הפלט שהתקבל, כלומר את מספרי החלקיקים היציבים. • לשים לב לשימוש במספרים אקראיים (בעיית אי התלות בין הסדרות המייצרות את המספרים!): ייצור המספרים האקראיים יעשה בתכנית נפרדת אשר תשמש כ- Server ותשלח מספרים אקראיים לשאר התכניות
תרגיל בית מס' 3 • אחת מהתכניות תקבל את מספר החלקיקים היציבים מכל יתר התכניות המדמות דעיכת חלקיקים ותשמש כמונה חלקיקים לקבלת הסטטיסטיקה הנדרשת.
הצעה לפתרון טיפ: This slide was prepared using Dia A free clone of Visio http://www.gnome.org/projects/dia/
ההרצה עבור לסרטון אנימציה
קימפול תכנית PVM gcc –o fn fn.c –I $PVM_ROOT/include –L $PVM_ROOT/lib/LINUX –lgpvm3 –lpvm3 Where PVM_ROOT is already defined to be: “/usr/local/pvm3”
קימפול בעזרת script #!/bin/sh export PVM_ROOT=/usr/share/pvm3 gcc -o $1 $1.c -I $PVM_ROOT/include -L $PVM_ROOT/lib/LINUX -lgpvm3 -lpvm3
תרגיל בית מס' 3 • את התכניות יש למקם תחת: ~/pvm3/bin/LINUX ~ is the symbol for your home directory.
בדיקת התרגיל • ביצוע נכון של התרגיל (סטטיסטיקה נכונה): 90. • הוספה פלט של חלון XPVM בתוספת הסברים על התהליכים והתקשורות הנראות בחלון: 5+ • הוספה של ניתוח סטטיסטי של התוצאות שהתקבלו מול התוצאות התיאורטיות: 5+(ראה 2 השקפים הבאים).
ניתוח התוצאות – מספר חזרות(arbitrary numbers) בצע 10 חזרות. בדוגמה כאן נראות 3 חזרות
המשך ניתוח התוצאות exact
הערות נוספות לגבי עבודה ב- PVM אם יש סיום לא תקין של ריצה, יש לנקות את כל הקבצים שמתחילים ב- pvm במחיצה /tmp ,דוגמא ל-script ניקוי: שמור הקובץ תחת השם clean_pvm הפוך אותו לקובץ הרצה ע"י: chmod u+x ./clean_pvm #!/bin/bash i=1 while [ $i -le 15 ] do host="dwarf$i"m echo $host /usr/bin/rsh $host rm -f /tmp/pvm* i=$((i+1)) done
הרץ את התכניות מ- ~/pvm3/bin/LINUX • Alt+PrtSc לוכד מסך