2.1 Phƣơng pháp đánh giá các chƣơng trình song song

Một phần của tài liệu Nghiên cứu các luật kết hợp song song trong khai phá dữ liệu (Trang 63)

3. 2. 1. 1. Đánh giá thời gian thực hiện song song

Để đánh giá đƣợc độ phức tạp tính toán của các thuật toán song song, ngoài việc xác định số bƣớc tính toán chúng ta còn cần đánh giá thời gian truyền thông của các tiến trình. Trong một hệ thống truyền thông điệp, thời gian truyền thông điệp cũng đƣợc xem xét trong thời gian thực hiện của thuật toán. Thời gian thực hiện song song, ký hiệu là tp gồm hai phần: tcomp là thời gian tính toán và tcomm là thời gian truyền thông dữ liệu. Nhƣ vậy chúng ta có:

tp = tcomp + tcomm

Thời gian tính toán tcomp đƣợc xác định giống nhƣ thuật toán tuần tự, bằng cách đếm số lƣợng các bƣớc tính toán. Khi có nhiều hơn một tiến trình đƣợc thực hiện đồng thời thì chỉ cần tính thời gian thực hiện của tiến trình phức tạp nhất (thực hiện lâu nhất). Thông thƣờng, tất cả các tiến trình thực hiện cùng một thao tác tính toán, nên chúng ta chỉ cần đếm một cách đơn giản số lƣợng các bƣớc tính toán của một tiến trình. Trong trƣờng hợp khác, chúng ta sẽ tìm số lƣợng các bƣớc tính toán lớn nhất của những tiến trình thực hiện trong cùng một thời gian.

Để thuận tiện chúng ta bỏ qua thời gian tính toán trong thành phần phân chia thời gian truyền thông điệp. Khi đó thời gian cho tính toán là:

tcomp = tcomp1 + tcomp2 + tcomp3 + ....

3. 2. 1. 2. Thời gian truyền thông

Thời gian truyền thông phụ thuộc vào: số lƣợng các thông điệp, kích thƣớc của mỗi thông điệp, cấu hình kết nối mạng đƣờng truyền và cách thức truyền tải thông điệp,... Công thức ƣớc lƣợng thời gian truyền thông đƣợc xác định là:

tcomm = tstartup + n * tdata

Trong đó:

+ tstartup là thời gian khởi động (thời gian tối thiểu) cần để truyền một thông

báo không có dữ liệu. Bao gồm cả thời gian đóng gói thông điệp ở nơi gửi và thời gian mở gói thông điệp ở nơ nhận. Để đơn giản chúng ta giả thiết thời gian này là hằng số.

+ tdata là thời gian cần để gửi một từ (word) dữ liệu (hay một mục dữ liệu) từ

nơi gửi tới nơi nhận, đƣợc giả thiết là một hằng số và có n (word) là số từ dữ liệu đƣợc trao đổi trong hệ thống. Tố độ truyền đƣợc đo bằng bit/ giây.

Thời gian truyền thông cuối cùng tcomm sẽ là tổng của thời gian truyền thông của tất cả các thông điệp tuần tự từ một tiến trình.

3. 2. 1. 3. Tỉ lệ tính toán/ truyền thông

Thông thƣờng, truyền thông rất hao tốn (mất nhiều thời gian), nếu cả tính toán và truyền thông cùng độ phức tạp thì tăng n sẽ không chắc cải thiện đƣợc sự thực thi.

Độ phức tạp của tính toán lớn hơn so với truyền thông thì khi tăng n lên sẽ cải thiện đƣợc sự thực thi:

Tỉ lệ tính toán/ truyền thông = tcomp/ tcomm.

3. 2. 1. 4. Chi phí và chi phí tối ƣu của giải thuật

Chi phí tính toán song song có thể định nghĩa:

Chi phí = (thời gian thực thi) * (tổng số các bộ xử lý được sử dụng)

Chi phí tính toán tuần tự đơn giản là thời gian xử lý của nó, ts. Chi phí tính toán song song là tp * p. Thuật toán song song tối ƣu về chi phí là một trong những thuật toán mà có chi phí giải quyết bài toán tƣơng đƣơng với thời gian thực hiện trên một hệ thống bộ xử lý đơn.

Chi phí = tp * p = k * ts

Ở đây k là hằng số, p là số lƣợng bộ xử lý đƣợc sử dụng. Phân tích độ phức tạp thời gian, chúng ta có thể nói rằng thuật toán song song là tối ƣu về chi phí nếu:

Độ phức tạp thời gian song song * số bộ xử lý = độ phức tạp thời gian tuần tự

Một phần của tài liệu Nghiên cứu các luật kết hợp song song trong khai phá dữ liệu (Trang 63)