Phân loại hệ thống máy tính

Một phần của tài liệu Giải pháp thiết kế và đánh giá hiệu năng siêu máy tính sử dụng CPU GPU (Trang 61 - 65)

Hệ thống máy tính số có thể đƣợc phân loại thành 4 loại theo khả năng đa dòng lệnh và đa luồng dữ liệu. Michael J. Flynn giới thiệu mô hình phân loại hệ thống máy tính này vào năm 1966. Về cơ bản thì việc tính toán là quá trình thực thi một chuỗi chỉ thị trên một tập dữ liệu. Theo phân loại của Flynn thì có 4 kiểu hệ thống máy tính nhƣ sau [13]:

 Đơn lệnh đơn dữ liệu (SISD – Single Instruction Single Data)

 Đơn lệnh đa dữ liệu (SIMD – Single Instruction Multiple Data)

63

 Đa lệnh đa dữ liệu (MIMD – Multiple Instruction Multiple Data)

Các hệ thống máy tính phân tán có thể xếp vào loại MIMD nhƣng mỗi một nút lại có thể thuộc loại SISD. Phần lớn các máy tính là máy tính tuần tự tức là các chỉ thị lệnh đƣợc thực thi lần lƣợt nhƣng khoảng thời gian thực thi có thể chồng lấn lên nhau nhờ sử dụng cơ chế đƣờng ống dẫn. Hầu hết các bộ xử lý đơn nhân đều sử dụng cơ chế đƣờng ống dẫn. Phần lớn các bộ xử lý ngày nay đều có nhiều nhân do đó các hệ thống máy tính gồm nhiều máy tính đƣợc xếp vào loại MIMD. Các bộ xử lý trong hệ thống MIMD tƣơng tác với nhau qua khoảng không bộ nhớ đƣợc chia sẻ giữa toàn bộ các bộ xử lý hoặc bằng cách trao đổi bản tin.

Hệ thống MIMD có các tính chất sau:

 Mỗi bộ xử lý sẽ chạy chuỗi lệnh của riêng nó.

 Mỗi bộ xử lý làm việc trên một phần của bài toán đầu vào.

 Mỗi bộ xử lý tin trao đổi thông tin với các bộ xử lý khác.

 Các bộ xử lý có thể phải chờ để truy cập dữ liệu đang đƣợc xử lý bởi bộ xử lý khác.

Nếu n luồng dữ liệu đầu vào từ các vị trí rời rạc không phụ thuộc vào nhau của bộ nhớ chia sẻ thì ta sẽ có một hoạt động đa SISD tức là chỉ là một hệ thống nhiều bộ xử lý đơn lẻ tuần tự (MSISD). Một hệ thống MIMD có tần suất tƣơng tác giữa các bộ xử lý cao thì thuộc loại hệ thống MIMD liên kết mức cao còn nếu không hệ thống đó thuộc loại liên kết mức thấp.

Hệ thống nhiều bộ xử lý liên kết mức thấp thƣờng không gặp phải vấn đề xung đột bộ nhớ nhƣ các hệ thống liên kết mức cao. Trong hệ thống này, mỗi một bộ xử lý thƣờng có một tập các thiết bị đầu ra đầu vào và một lƣợng bộ nhớ lớn nơi nó sẽ truy cập để tải phần lớn chỉ thị lệnh và dữ liệu. Tập hợp một bộ xử lý, bộ nhớ cục bộ của nó và các giao diện ngoại vi đƣợc coi là một mô đun/nút máy tính. Bài toán sẽ đƣợc phân phối khắp các nút và các nút trao đổi dữ liệu với nhau bằng cách trao

64

đổi bản tin thông qua một hệ thống chuyển bản tin (MTS – Message Transfer

System).

Yếu tố quyết định loại liên kết của hệ thống liên kết mức thấp là sơ đồ liên kết giữa các nút (topology) của hệ thống chuyển bản tin. Hiệu năng của các hệ thống này đạt kết quả tốt khi sự tƣơng tác giữa các nút đƣợc tối thiểu hóa.

Hệ thống liên kết mức thấp đạt hiệu năng cao trên các bài toán có thể chia nhỏ thành nhiều phần độc lập, không có sự phụ thuộc dữ liệu giữa các phần của bài toán sau khi chia nhỏ. Tuy nhiên, trong thực tế có rất nhiều ứng dụng đòi hỏi sự trao đổi thông tin giữa các nút sau các giai đoạn thực thi từng phần của bài toán do đó để đảm bảo hiệu năng của chƣơng trình, hệ thống tính toán cần phải có thời gian trao đổi dữ liệu nhỏ tƣơng đƣơng với tốc độ đáp ứng yêu cầu dữ liệu nhanh. Trong trƣờng hợp đó, các hệ thống có mức độ liên kết cao sẽ đƣợc sử dụng.

Hệ thống có mức độ liên kết cao thƣờng đạt hiệu năng cao hơn hệ thống có mức độ liên kết thấp tuy nhiên chi phí để đạt đƣợc hiệu năng đấy lại cao hơn khi xây dựng hệ thống liên kết mức thấp nhiều. Các bộ xử lý trong hệ thống liên kết mức cao trao đổi thông tin qua bộ nhớ chia sẻ chung do đó tốc độ trao đổi thông tin phụ thuộc vào băng thông của bộ nhớ chia sẻ. Do đó để đảm bảo hiệu năng thì bộ nhớ chia sẻ của hệ thống phải đảm bảo đƣợc khả năng truy cập tần suất cao, băng thông lớn giữa các tiến trình của các bộ xử lý.

Với phân loại của Flynn thì một số lƣợng lớn lớp các hệ thống máy tính thuộc loại MIMD nên vào năm 1988, E. E. Johnson [6] đƣa ra phân loại sâu hơn các hệ thống MIMD dựa trên cấu trúc hệ thống bộ nhớ của chúng (toàn cục hay phân tán) và cơ chế trao đổi thông tin/đồng bộ (biến chia sẻ hay trao đổi bản tin):

 Hệ thống sử dụng bộ nhớ toàn cục và biến chia sẻ (GMSV – Global Memory Shared Variables).

 Hệ thống sử dụng bộ nhớ chia sẻ và trao đổi bản tin (GMMP – Global Memory Message Passing).

65

 Hệ thống sử dụng bộ nhớ phân tán và biến chia sẻ (DMSV – Distributed Memory Shared Variables).

 Hệ thống sử dụng bộ nhớ phân tán và trao đổi bản tin (DMMP – Distributed Memory Memory Passing).

Hệ thống DMSV và DMMP là các hệ thống thuộc loại liên kết mức thấp còn hai hệ thống còn lại thuộc loại liên kết mức cao. Dựa trên hai mô hình phân loại trên ta có mô hình phân loại Flynn-Johnson nhƣ hình 30:

Hình 30: Mô hình phân loại hệ thống máy tính Flynn-Johnson

Một kiểu phân loại sâu hơn của kiểu hệ thống xử lý MIMD đƣợc Johnson đề xuất và đƣợc Tanenbaum làm rõ đƣợc chỉ ra ở hình 31 [5]:

66

Hình 31: Mô hình phân loại hệ thống máy tính MIMD của Tanenbaum

Phân loại của Flyn-Johnson dựa trên mô hình lập trình cho các hệ thống máy tính còn phân loại của Tannebaum dựa trên kiến trúc kiểu mạng kết nối của hệ thống. Cả hai kiểu phân loại đều chứa đựng các thông tin tƣơng tự nhau nhƣng mô hình phân loại của Flynn-Johnson mang tính tổng qua hơn vì nó mô tả kết nối logic giữa các bộ xử lý hơn là kiểu kết nối vật lý nhƣ của Tannebaum do đó ít bị phụ thuộc vào phần cứng hơn nên nó là mô hình phân loại tốt hơn.

Một phần của tài liệu Giải pháp thiết kế và đánh giá hiệu năng siêu máy tính sử dụng CPU GPU (Trang 61 - 65)