6. Phương pháp nghiên cứu
2.1.1. Sự cần thiết của tính toán song song và phân tán
Ngày nay, khi các máy tính trở nên nhanh hơn bao giờ hết, chúng có thể khiến người ta tin rằng máy tính đã đủ nhanh và năng lực tính toán đã được thỏa mãn. Tuy nhiên, lịch sử cho thấy rằng khi một kỹ thuật đặc biệt nào đó thỏa mãn được các ứng dụng thì một ứng dụng mới sẽ phát sinh và đòi hỏi sự phát triển các kỹ thuật mới.
Sự phát triển đến tận cùng của tính toán được thúc đẩy bởi sự mô phỏng số hóa các hệ thống phức tạp như thời tiết, khí hậu, thiết bị cơ khí, mạch điện tử, quá trình sản xuất, phản ứng hóa học và một số vấn đề rất quan trọng là các ứng dụng về kinh tế. Chúng đòi hỏi máy tính phải có khả năng xử lý một lượng lớn dự liệu một cách tinh vi. Ví dụ như kỹ thuật đa truyền thông đưa đến sự phát triển của video server – những máy tính được thiết kế đáp ứng hàng trăm, hàng ngàn các yêu cầu liên tục cho hệ thống video thời gian thực. Mỗi dòng video có thể liên quan đến tốc độ truyền của nhiều megabyte trên giây cùng với một số lượng lớn các quá trình mã hóa và giải mã. Trong đồ họa, các tập dữ liệu 3 chiều có thế đạt đến 109 phần từ. Ở tốc độ 200 phép tính toán trên giây, một màn hình phân giải cập nhật 30 giây/lần, do đó đòi hỏi máy tính phải có khả năng thực hiện 6.4*1012 phép toán/giây.
Hầu hết các thuật toán để giải quyết các bài toán được mô tả bằng một lưu đồ tuần tự dựa trên cấu trúc máy tính cùa Von Neumann. Nhưng tròn nhiều bài toán, ta có thể phân tích thành nhiều mô đun chạy đọc lập và nếu máy tính của ta có nhiều bộ xử lý thì các mô đun này có thể thực thi song song. Kết quả thời gian chạy chương trình sẽ ít hơn.
Một máy tính song song bao gồm nhiều bộ xử lý có khả năng làm việc cùng với nhau để giải quyết một vấn đề tính toán. Định nghĩa này bao gồm những siêu máy tính có hàng trăm ngàn bộ xử lý hay các trạm làm việc trên mạng, các tram đa bộ xử lý, các hệ thống nhúng. Máy tính song song rất thụ vị bởi khả năng tập trung các nguồn tài nguyên tính toán (bộ xử lý, bộ nhớ hay bandwidth của dải tần
nhập.xuất) trến các vấn đề tính toán quan trong hay xử lý được các dữ liệu phân tán trên một mạng liên kết. [5]