Sơ lược về các phần mềm giải phương trình đại số tuyến

Một phần của tài liệu Phương pháp khử Gauss giải hệ phương trình đại số tuyến tính (Trang 27 - 29)

2 Tổng quan về phương pháp khử Gauss giải hệ phương trình

2.1.1 Sơ lược về các phần mềm giải phương trình đại số tuyến

tính trên máy tính song song

Nếu như trước đây, các thuật toán cài đặt trên máy tính là các thuật toán tuần tự, thì bắt đầu từ những năm 1970, các tư tưởng về máy tính vectơ (vector computer) và máy tính song song (parallel computer) đã bắt đầu trở nên hiện thực. Các máy tính khoa học như IBM 360-91 đã được thiết kế với tư tưởng song song hóa, tuy vẫn còn được ẩn giấu trong cấu trúc máy tính, máy tính CRAY 1 (1976) đã đánh dấu sự ra đời của máy tính vectơ.

Các máy tính này được vận hành với những qui tắc tương tác mới. Nói một cách thô thiển, máy tính tuần tự thực hiện các phép toán một cách tuần tự, còn muốn thuật toán chạy nhanh thì các thông số đầu vào cần phải được biểu diễn (nếu có thể) dưới dạng vectơ. Các máy tính vectơ thường gồm một số bộ sử lí vectơ với bộ nhớ chung lớn. Vào những năm 2000, các máy này đã chạy với tốc độ cỡ 109 phép toán trong một giây.

Vào những năm 1990, một loại máy tính khoa học mới đã xuất hiện trên thị trường. Đó là những máy tính song song với bộ nhớ phân tán. Mặc dù tư tưởng song song hóa đã có từ lâu (máy tính song song Illiac IV đã được thiết

kế vào năm 1972), chỉ mới gần đây các máy tính này mới đạt được hiệu năng cao cho phép giải các bài toán kĩ thuật. Vào những năm 2000, máy tính song song đã đạt được tốc độ cỡ 1012 phép toán trong một giây.

Để đạt được hiệu năng cao trong tính toán, cần xây dựng các thuật toán mới cho máy tính vectơ và máy tính song song. Dưới đây trình bày sơ lược hai gói thủ tục (routines) giải hệ phương trình đại số tuyến tính trên máy tính song song.

BLAS

BLAS (Basic Linear Algebra Subprograms) là một gói thủ tục giải các bài toán của đại số tuyến tính trên máy tính song song được Lawson, Hanson, Kincaid và Krogh xây dựng vào năm 1979. Gói thủ tục này chủ yếu liên quan đến các phép toán vectơ như cộng các vectơ, nhân một số với một vectơ, tích vô hướng, tính chuẩn của vectơ và chuẩn của ma trận,...

Gói thủ tục đại số tuyến tính LINPACK (giải hệ phương trình tuyến tính và các bài toán bình phương tối thiểu) đã được viết dựa trên BLAS 1 và được công bố vào năm 1979.

BLAS 2 đã có thêm một số thủ tục như nhân một ma trận với một vectơ, tìm ma trận nghịch đảo,...

Hầu hết các thuật toán của đại số tuyến tính, trong đó có phép khử Gauss, có thể lập trình trên máy tính song song nhờ BLAS 2.

BLAS 3 xuất hiện vào năm 1990 cho phép nhân hai ma trận và các phép toán khác trên máy tính song song.

LAPACK

LAPACK (for Linear Algebra PACKage) xuất hiện vào năm 1992. LAPACK kết hợp LINPACK và gói thủ tục tính các giá trị riêng EISPACK (the package for eigenvalues computations). LAPACK đã xây dựng gói phần mềm giải các bài toán của đại số tuyến tính hiệu quả trên máy vi tính xách tay nhờ kết nối với BLAS và đã được song song hóa.

Một phần của tài liệu Phương pháp khử Gauss giải hệ phương trình đại số tuyến tính (Trang 27 - 29)

Tải bản đầy đủ (PDF)

(52 trang)