Lập trình song song trong .NET (Parallelism) – part 1

Story

Ngày nay, các dòng máy tính không phân cao thấp dựa trên số chấm của xung nhịp vi xử lý (như những năm 2000 trở về trước) mà tính toán nhiều hơn đến thiết kế tổng thể, độ tiêu thụ năng lượng… Ngoài các dòng máy tính chuyên dụng (chú trọng vào hiệu năng tính toán), đa số các dòng máy tính tập trung hắm đến đối tượng người dùng chiếm số đông là sinh viên, học sinh, nhân viên văn phòng, người dùng gia đình bình thường, doanh nhân…, mà những tác vụ thường xuyên nhất lai khá nhẹ nhàng và không đòi hỏi hiệu năng tính toán tập trung. Do đó, các nhà sản xuất máy tính không tâp trung transitor vào để tăng tốc độ của vi xử lý để thực hiện những tác vụ đòi hỏi sức mạnh mà chia thành nhiều đơn vị nhỏ hơn, tập trung vào việc tăng số đơn vị xử lý độc lập (core) để phân tán luồng xử lý.

Vậy, để tận dụng thế mạnh của những hệ thống mới, khái niệm lập trình song song (parallelism) ra đời, đòi hỏi các developer phải hiểu và sử dụng được. Tuy nhiên, khái niệm này lại không thực sự được ứng dụng rộng rãi. Khi được hỏi: “Bạn có biết đến khái niệm lập trình song song hay đa luồng xử lý không?”, ai cũng trả lời “Có”, nhưng khi hỏi: “Thế bạn có hiểu và nắm được cách triển khai lập trình song song không?” thì rất ít người tự tin.

Trong loạt bài này, mình sẽ tập trung xử lý vấn đề lập trình song song và mượn .NET (với bộ thư viện TPL từ .NET 4.0) để minh họa.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s