N i dung:
Tìm hi u tính toán song song hóa thu t toán
ng d ng song song bài toán s p x p theo gi ế
(bucket sort)
M C L C
I LI U THAM KH O ........................................................................................ 15
2
Ph n I: M Đ U
B n th p k qua ch ng ki n s phát tri n bùng n v s c m nh máy ế
tính, t o ti n đ cho nh ng b c ti n ch a t ng th y v phát minh, năng su t ướ ế ư
lao đ ng phúc l i cho con ng i. Nh ng quá trình đó gi đây đ ng tr c ườ ư ướ
m t tr ng i ít ai nghĩ đ n: s k t thúc c a quá trình m r ng s c m nh ế ế
đi n toán. Ngành tin h c đã đ t đ n gi i h n c a nh ng t ng kh thi v i ế
m t hay hai vi x trung tâm ho t đ ng theo chu i truy n th ng (serial
processing). Ngành nào v n d a vào hình đó đ ti p t c phát tri n năng ế
su t, tăng tr ng kinh t phát tri n h i thì c n ph i b t đ u m t b c ưở ế ướ
nh y m i vào đi n toán x lý song song (parallel processing).
Ngày nay, v i các bài toán yêu c u x trên m t s l ng d li u l n ượ
ph c t p nh s ph ng nh ng h th ng ph c t p "nh ng v n đ ư
thách th c l n" nh : d báo th i ti t khí h u, nh ng ph n ng hoá h c ư ế
h t nhân, h gen sinh h c, ... đ t ra m t nhu c u l n v t c đ tính toán.
Nh ng bài toán này th ng yêu c u m t l ng l n các phép tính l p l i trên ườ ượ
m t kh i l ng l n d li u đ đ a ra m t k t qu đúng đ n, và các phép tính ượ ư ế
này c n hoàn thành trong kho ng th i gian h p lý. d nh bài toán d bào ư
th i ti t không th x b ng các máy tính thông th ng th i gian x ế ườ
kho ng 10 năm, đi u này hoàn toàn không phù h p.
Đ gi i quy t đ c các bài toán trên ta c n ph i tăng t c đ tính toán. ế ượ
M c trong nh ng th p k v a qua chúng ta đã đ c ch ng ki n nh ng ượ ế
thành t u to l n v công ngh vi x lý. T c đ đ ng h c a các b x đã
tăng t kho ng 40MHz (MIPS R3000, circa 1988) t i trên 2,0 GHz (Pentium 4,
circa 2002); cùng m t lúc các b x có kh năng th c hi n đa ch l nh
trong cùng m t chu kỳ ... nh ng do gi i h n v v t nên kh năng tính toán ư
c a các b x lý không th tăng mãi đ c. ượ
Minh h a m t cách đ n gi n, tính toán truy n th ng gi ng nh vi c ơ ư
m t ng i đ c bài văn theo ki u tu n t t đ u đ n cu i, còn tính toán song ườ ế
song thì gi ng nh tách bài văn đó thành các ph n cho nhi u ng i khác ư ườ
nhau cùng đ c m t lúc đ k t qu nhanh h n. Tính toán song song mang ế ơ
l i m t n n t ng m i cho s phát tri n c a công ngh x lý. Đây m t
h ng đi m i, đúng đ n và hi u qu cho công ngh đi n toán trong t ng lai.ướ ươ
Bài vi t sau đây v đ tài “Tìm hi u v tính toán song song , áp d ng gi iế
quy t m t s bài toán” ph n nào th hi n đ c nh ng ki n th c c b n đ uế ượ ế ơ
tiên v tính toán song song, tính đúng đ n và ng d ng c a nó.
Ph n II: N I DUNG
I. Nh ng khái ni m c b n v tính toán song song ơ
1. Nhu c u tính toán hi u năng cao và tính kh d ng c a tính toán song song.
a. Nhu c u tính toán song song
d 1: Oregon State University: ph ng các dòng ch y l u thông c a đ i ư
d ng --> xác đ nh nguyên nhân gây trái đ t đang nóng d n lên.ươ
- Phân chia đ i d ng thành: ươ
• 4096 vùng t đông sang tây.
• 1024 vùng t b c sang nam.
• 12 t ng bi n.
• X p s 50 tri u kh i trong không gian 3 chi u.
- ph ng l u thông th c hi n ~ 30 t phép tính trong 10 phút. Công ư
vi c này th c hi n liên t c trong năm.
Ví d 2: D báo th i ti t (weather forecasting): ế
- Chia b u khí quy n theo không gian 3 chi u, m i kh i kích th c ướ
1mile x 1mile x 1mile.
- c tính kho ng 5x10^8 kh i (cells).Ướ
- Trên m i kh i c n th c hi n ~ 200 phép toán -> c n th c hi n ~
10^11 phép toán.
- N u c n d báo cho 1 tu n, chu kỳ 1 phút -> c n th c hi n 10^4 l n,ế
m i l n 10^11phép toán.
- Siêu máy tính có th th c hi n: 10^9 phép toán trên 1 giây -> c n 10^6
giây ~ 10 ngày đ th c hi n.
Ví d 3: Mô ph ng t ng tác c a các protein v i phân t n c (Levin 1990): ươ ướ
- Th c hi n trên máy Cray X/MP (~800 tri u phép toán / 1 giây): đ
ph ng 10^-12 giây ph n ng protein c n 1 gi th c hi n.
- N u ph ng m t ph n ng th c s trên cùng máy Cray X/MP c nế
31,688 năm.
TÓM L I:
Yêu c u v th c nghi m nghiên c u, ph ng -> gi i quy t nh ng ế
bài toán kh i l ng tính toán l n trong m t kho ng th i gian ch p nh n ượ
đ c.ượ
Ph ng h ng gi i quy t v n đ :ươ ướ ế
- Th c hi n trên các siêu máy tính m nh.
- Th c hi n phân chia công vi c th c hi n song song trên h th ng các máy
tính
Tính kh d ng c a tính toán song song
SIÊU MÁY TÍNH: Kh năng tính toán ph thu c nhi u vào t c đ x
c a CPU -> ph thu c vào c u trúc s l ng transistors ch a trong CPU ượ
–> Có nh ng gi i h n nh t đ nh v kích th c, nhi t đ -> không th tăng s ướ
transistors lên mãi đ cượ
TH C HI N SONG SONG:
Nguyên t c: th c hi n phân chia công vi c chính thành các công vi c con,
th th c hi n song song v i nhau.
Xây d ng h th ng song song t nhi u b x riêng bi t. Th c hi n các
công vi c song song trên các b x lý đó.
V n đ :
- Ph ng pháp phân chia công vi c.ươ
- Môi tr ng h tr th c hi n song song.ườ
Ví d : X p sách trong th vi nế ư
Sách trong th vi n đ c phân lo i theo ch cái đ u tiên s p x pư ượ ế
theo th t .
Sách cùng nhóm đ c x p trên cùng m t giá. Các giá đ t trong các tượ ế
sách.
Th vi n nh p m t s l ng sách l n -> yêu c u th th ph i s p x pư ượ ư ế
sách theo đúng nguyên t c.
Cách gi i quy t hi u qu nh t? ế
+ N u ch có 1 th thế ư
- Cách th nh t: L y t ng cu n sách r i s p x p vào v trí thích h p -> ế
không hi u qu .
- Cách th hai: S p x p các cu n sách theo th t tr c r i mang t ng ế ướ
ch ng sách cùng v trí đi s p x p. ế
Rõ ràng cách th 2 hi u qu h n. ơ
Mu n hi u qu h n n a thì c n có nhi u ng i làm h n. ơ ườ ơ
+ Nhi u th th h n ư ơ
Cách th nh t: M i ng i l y 1 cu n r i đi s p đ t v trí -> không hi u ườ
qu .
Cách th hai: Phân chia m i ng i m t nhóm t , khi đó m i ng i ườ ườ
ch mang sách thu c nhóm mình đi s p x p. ế
Cách th ba: S p x p sách tr c khi mang đi đ t v trí. M i ng i đ m ế ướ ườ
nh n m t s ký t :
N u cu n sách đang c m c a mình thì đ t vào ch ng sách c a mình.ế
N u c a ng i khác thì chuy n cho ng i đ y.ế ườ ườ
Sau đó mang sách đi s p x p. ế
-> cách th ba hi u qu nh t.
Ý nghĩa c a tính toán song song
Th c hi n công vi c trong kho ng th i gian ng n h n -> ti t ki m th i ơ ế
gian.
Th c hi n đ c v i s l ng phép toán l n h n -> gi i quy t đ c bài ượ ượ ơ ế ượ
toán l n.
H tr gi i quy t nhi u công vi c đ ng th i. ế
2. Các ng d ng trong h th ng máy tính
Khi các h th ng máy tính tr nên r ng kh p s tính toán tr i r ng
trên toàn m ng, thì các v n đ x song song cũng đ c ng d ng nhi u ượ
h n. trong vi c b o m t máy tính, vi c phát hi n xâm ph m m t th tháchơ
đáng k . Trong tr ng h p phát hi xâm ph m m ng, d li u đ c thu th p ườ ượ
t các trang phân tán ph i đ c phân tích m t cách nhanh chóng. Vi c ượ
5