Thu t toán song song là m t t p các ti n trình (process) ho c các tác vậ ộ ậ ế ặ ụ
(task) có th th c hi n đ ng th i và có th trao đ i d li u v i nhau đ k tể ự ệ ồ ờ ể ổ ữ ệ ớ ể ế
h p cùng gi i m t bài toán đ t ra.ợ ả ộ ặ
Thi t k gi i thu t song song là chia bài toán thành các bài toán nh h nế ế ả ậ ỏ ơ
và gán bài toán nh cho các b vi x lý khác nhau đ th c hi n song song.Quáỏ ộ ử ể ự ệ
trình thi t k gi i thu t song song là quá trình song song hóa bài toán tu n t .ế ế ả ậ ầ ự
Nguyên lý c b n trong thi t k gi i thu t song song bao g m:ơ ả ế ế ả ậ ồ
2.2.1. Nguyên lý l p l ch:ậ ị
Gi m t i thi u các b x lý s d ng trong thu t toán sao cho th i gianả ố ể ộ ử ử ụ ậ ờ
tính toán là không tăng (xét theo khía c nh đ ph c t p). Nghĩa là, n u đạ ộ ứ ạ ế ộ
ph c t p tính toán c a thu t toán là O(f(n)) thì th i gian th c hi n c aứ ạ ủ ậ ờ ự ệ ủ
ch ng trình có th tăng khi s b x lý gi m, và th i gian tính toán t ng thươ ể ố ộ ử ả ờ ổ ể
tăng lên m t h ng s nào đó - nh ng v n là O(f(n)).ộ ằ ố ư ẫ
2.2.2. Nguyên lý hình ng:ố
Nguyên lý này đ c áp d ng khi bài toán xu t hi n m t dãy các thao tácượ ụ ấ ệ ộ
{T1, T2, . . ., Tn },trong đó Ti+1 th c hi n sau khi Ti k t thúc.ự ệ ế
2.2.3. Nguyên lý chia đ tr :ể ị
T c là chia bài toán thành nh ng ph n nh h n t ng đ i đ c l p v iứ ữ ầ ỏ ơ ươ ố ộ ậ ớ
nhau và gi i quy t chúng m t cách song song. T o ra m t mô hình cây phânả ế ộ ạ ộ
c p đ phân c p quá trình truy n thông và tính toán.ấ ể ấ ề
- Tăng tính song song so v i mô hình tr cớ ướ
- Th i gian ch y gi m t O(n) xu ng O(logn)ờ ạ ả ừ ố
2.2.4. Nguyên lý đ th ph thu c d li u: ồ ị ụ ộ ữ ệ
Phân tích m i quan h d li u trong tính toán đ xây d ng đ th phố ệ ữ ệ ể ự ồ ị ụ
thu c d li u và d a vào đó đ xây d ng thu t toán song song.ộ ữ ệ ự ể ự ậ
2.2.5. Nguyên lý đi u ki n t ng tranh:ề ệ ươ
N u hai ti n trình cùng mu n truy c p vào cùng m t m c d li u chiaế ế ố ậ ộ ụ ữ ệ
s thì chúng ph i t ng tranh v i nhau, nghĩa là chúng có th c n tr l nẻ ả ươ ớ ể ả ở ẫ
nhau.
II. MÔ HÌNH L P TRÌNH TRUY N THÔNG ĐI P- CHU N MPIẬ Ề Ệ Ẩ
1. Gi i thi uớ ệ