MPI Programming ตอนที่ 1
- by NAzT
วันนี้เราลองมาหัดเขียนโปรแกรมแบบ MPI กันดีกว่าครับ ศึกษาจาก Code กันไปเลย ง่ายๆ
แต่ MPI คืออะไรล่ะ?
มันเป็นแบบนี้ครับ เมื่อเราเขียนโปรแกรมแบบ Parallel Computers ซึ่งก็คือการเขียนโปรแกรมที่ให้ Computer หลายตัวช่วยกันประมวลผล (Cluster Computing) พอมีหลายหน่วยประมวลผลแล้วเราก็ต้องมีการส่งข้อมูลไปมาไงครับ
เช่นมีงาน 100 งาน แล้วมี 4 Processors แบ่งกันทำคนละ 25 งาน พอทำเสร็จแล้วก็ต้องเอางานมารวมกัน ก็ต้องอาศัย MPI เนี่ยแหละครับในการส่งข้อมูลระหว่าง Processor อันนี้คือความหมายของ MPI แบบคร่าวๆครับผม
MPI = Message Passing Interface แต่วันนี้ยังไม่มีการส่ง Message ครับผม Code ง่ายๆวันนี้
คำอธิบาย Code กด อ่านต่อได้เลยคร้าบบผมม
ต่อๆ
จาก Code เราจะได้ output แบบในรูปครับผม mpirun -np 4 แสดงว่าเราทำงานแบบ 4 Processor ครับผม
ขั้นตอนนี้เมื่อเรารันหลายๆครั้ง ผลลัพธ์จะออกมาไม่เหมือนกันครับ เพราะในแต่ละ Process จะแย่งกันเขียนข้อมูลออกทาง stdout ครับย้อนกลับไปดู Code กันนิดนึงครับ
จะเห็นว่าเราประกาศตัวแปรไว้สองตัวคือ myrank และ p
myrank จะบอกว่า Process นั้นๆจะมีหมายเลขอะไร
p จะบอกว่าเราเรียกโปรแกรมนี้ให้ช่วยกันกี่ Processor ข้างบนคือ 4 ครับ
ส่วน MPI_ ทั้งหลายข้างบนนั่นเราต้องเรียกใช้ทุกครั้งครับ เป็นรูปแบบครับ
Code จาก : http://www.cs.indiana.edu/classes/b673/notes/hello.html
Related Blogs
เรื่องที่เกี่ยวข้อง

