Tải bản đầy đủ (.pptx) (19 trang)

Thuyết trình ỨNG DỤNG CÁC PHÝÕNG PHÁP SÁNG TẠO TRONG THIẾT KẾ THUẬT TOÁN SONG SONG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (239.09 KB, 19 trang )

Ti u lu n môn h cể ậ ọ
PHƯƠNG PHÁP NGHIÊN C U Ứ
KHOA H C TRONG TIN H CỌ Ọ
ỨNG DỤNG CÁC PHƯƠNG PHÁP SÁNG TẠO TRONG
THIẾT KẾ THUẬT TOÁN SONG SONG
Các bài toán trong th c t ngày càng khó khănự ế

Kh i lư ng d li u c n tính toán tăng lênố ợ ữ ệ ầ

Gi i thu t tính toán ngày càng ph c t pả ậ ứ ạ

Th i gian th c thi đòi h i ngày càng ítờ ự ỏ

software
is getting
slower
more
rapidly
than
hardware

becomes
faster”
(Wirth's law)
1. Gi i thi uớ ệ
1. Gi i thi uớ ệ
Đồ họaThời tiết
Quân sựChứng khoán

T đó phát sinh tính toán song songừ


cách x lí thông tin b ng vi c s d ng nhi u hơn m t ử ằ ệ ử ụ ề ộ
b x lí đ th c hi n nhi u hơn m t thao tác trên d ộ ử ể ự ệ ề ộ ữ
li u t i m t th i đi m”ệ ạ ộ ờ ể

Tính toán song song c c bụ ộ

Tính toán phân tán
1. Gi i thi uớ ệ

Ki n trúc SISD (single ế Instruction stream,
single Data stream)
2. Hardware
Đơn vị điều
khiển
Bộ xử lí
số học
Bộ nhớ
Luồng
kết quả
Dòng
lệnh
Luồng
dữ liệu

Ki n trúc SIMD (single ế Instruction stream,
multiple Data stream)
2. Hardware
Đơn vị điều khiển
Phần tử
xử lí 1

Phần tử
xử lí 2
Phần tử
xử lí n


Ki n trúc MISD (multiple ế Instruction stream,
single Data stream)
2. Hardware
Đơn vị điều khiển1
Đơn vị điều khiển 2
Đơn vị điều khiển n
Phần tử xử lí 1
Phần tử xử lí 2
Phần tử xử lí n
Dòng lệnh 1
Dòng lệnh 2
Dòng lệnh n
.
.
.
.
.
.

Ki n trúc MIMD (multiple ế Instruction
stream, multiple Data stream)
2. Hardware
Đơn vị điều khiển1
Đơn vị điều khiển 2

Đơn vị điều khiển n
Phần tử xử lí 1
Phần tử xử lí 2
Phần tử xử lí n
Dòng lệnh 1
Dòng lệnh 2
Dòng lệnh n
.
.
.
.
.
.
Luồng dữ liệu 1
Luồng dữ liệu 2

Ph n c ng song song ch đư c t n d ng hi u ầ ứ ỉ ợ ậ ụ ệ
qu v i các thu t toán tính toán song song.ả ớ ậ

Thu t toán song song là m t t p các ti n ậ ộ ậ ế
trình ho c các tác v 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ế ợ ả ộ

Song song hóa các thu t toán tu n t c đi nậ ầ ự ổ ể

Thi t k thu t toán hoàn toàn m iế ế ậ ớ
3. Software

Các giai đo n thi t k thu t toán song songạ ế ế ậ


Partitioning: Chia nh d li u và các thao tác tính ỏ ữ ệ
toán

Communication: Thi t l p s ph i h p gi a các tác ế ậ ự ố ợ ữ
v qua cơ ch truy n thông thích h pụ ế ề ợ

Agglomeration: K t h p các tác v đ cân b ng ế ợ ụ ể ằ
hi u năng và chi phíệ

Mapping: Phân chia tác v cho các b x lí sao cho ụ ộ ử
t n d ng h t t i đa s c m nh c a chúngậ ụ ế ố ứ ạ ủ
3. Software

Các k thu t sáng t o thư ng áp d ng trong ỹ ậ ạ ờ ụ
thi t k thu t toán song songế ế ậ

Nguyên lí chia đ trể ị

Nguyên lí l p l chậ ị

Nguyên lí đư ng ngờ ố

Nguyên lí phát tri n nhân đôiể

4. Áp d ng TRIZụ

Bi n pháp thông d ng nh t đ gi i quy t v n ệ ụ ấ ể ả ế ấ
đề


Chia nh công vi c thành các ph n con đ c ỏ ệ ầ ộ
l p tương đ i, gi i quy t đ ng th i t ng v n ậ ố ả ế ồ ờ ừ ấ
đ nh , nh đó tăng hi u năng h th ngể ỏ ờ ệ ệ ố
Nguyên lí chia đ trể ị

Ví d : tính t ng trong m ng có n ph n tụ ổ ả ầ ử
Phân rã các ph n t thành n/log(n) nhóm, m i ầ ử ỗ
nhóm có log(n) ph n tầ ử
Chia m i nhóm cho m t b x lí, th i gian th c ỗ ộ ộ ử ờ ự
hi n là O(log(n))ệ
C ng k t qu thu đư c t m i b x lí, th i ộ ế ả ợ ừ ỗ ộ ử ờ
gian th c hi n là O(log(n/log(n))) ≡ O(log(n))ự ệ
Nguyên lí chia đ trể ị

Tìm cách gi m t i thi u các b x lí trong ả ố ể ộ ử
thu t toán mà không làm tăng th i gian tính ậ ờ
toán

Th i gian th c hi n c a chương trình có th ờ ự ệ ủ ể
tăng, nhưng đ ph c t p thì v n gi nguyênộ ứ ạ ẫ ữ
Nguyên lí l p l chậ ị

Ví d : tính t ng N s theo ki u cây nh phânụ ổ ố ể ị
Sau khi các b x lí tính toán xong tác v ộ ử ụ ở
node lá, l p l ch l i đ ti p t c tính toán các ậ ị ạ ể ế ụ ở
node t ng ti p theoầ ế
Nguyên lí l p l chậ ị

Áp d ng trong trư ng h p mu n th c hi n ụ ờ ợ ố ự ệ
m t dãy các thao tác theo trình t {P1, P2,…, ộ ự

Pn} trong đó m t s bư c c a Pi+1 có th ộ ố ớ ủ ể
th c hi n trư c khi Pi k t thúc.ự ệ ớ ế

Ph i h p v i nguyên lí l p l ch đ t n d ng ố ợ ớ ậ ị ể ậ ụ
hi u qu tài nguyên tính toánệ ả
Nguyên lí đư ng ngờ ố

T i m i bư c trong quá trình tính toán, m i ạ ỗ ớ ỗ
b x lí l i t nhân đôi s ph n t tính toán ộ ử ạ ự ố ầ ử
c a nóủ

Phát tri n m r ng theo c u trúc nh phânể ở ộ ấ ị
Nguyên lí phát tri n nhân đôiể

Ví d : Bài toán x p h ng (ranking) các ph n ụ ế ạ ầ
t trong danh sách liên k t đôiử ế

Ban đ u, m i node ch bi t node k c n nóầ ỗ ỉ ế ế ậ

Sau m i bư c, s node bi t đư c l i tăng lên ỗ ớ ố ế ợ ạ
g p đôiấ

Sau nhi u nh t là log(n) bư c, duy t h t ề ấ ớ ệ ế
danh sách x p h ngế ạ
Nguyên lí phát tri n nhân đôiể

Bài gi ng “Phương pháp lu n sáng t o khoa ả ậ ạ
h c”. GS.TSKH Hoàng Văn Ki m ọ ế

Phương pháp lu n sáng t o khoa h c – k thu t. ậ ạ ọ ỹ ậ

GS.TS Phan Dũng

Introduction to Parallel Computing, Second
Edition. Annath Grama, Anshul Gupta, George
Karypis, Vipin Kuma

/>/resources.htm

/>

Tài li u tham kh oệ ả

×