2011-01-15 49 views
9

thể trùng lặp:
What's the status of multicore programming in Haskell?Thực trạng xử lý song song tự động trong Haskell

tình trạng đặc biệt trong GHC là gì? Phổ biến chưa, hoặc vẫn đang thử nghiệm?

Trình biên dịch cẩn thận/chi tiết như thế nào trong việc quyết định khi nào và cách song song? Liệu thời gian chạy có chọn kích thước của threadpool một cách thích hợp hoặc chúng ta phải chỉ định thông qua dòng lệnh?

+0

Gee, người vừa mới bỏ phiếu cho tôi? Tôi bị mất 2 đại diện !!! – Phil

Trả lời

4

Chính sách lập lịch trình, hồ bơi luồng và di chuyển hiện tại của GHC được mô tả trong bài báo "Runtime Support for Multicore Haskell". Phong cách "chiến lược" bán -nguyên lý song song tự động được sử dụng khá rộng rãi, tại thời điểm viết.

4

Câu trả lời dài là bài báo được liên kết trong phản hồi của Don. Câu trả lời ngắn:

  1. GHC không tự động song song chương trình của bạn.

  2. Tuy nhiên, nó làm cho nó rất dễ dàng để giới thiệu song song thông qua các tổ hợp par. Giao diện cấp cao hơn là "strategies" Don đã đề cập.

  3. Cho dù chỉ cần thêm par sẽ tăng tốc chương trình của bạn phụ thuộc rất nhiều vào thuật toán của bạn. Điều ngược lại là, không có gotchas - bạn không thể giới thiệu deadlocks hoặc chủng tộc (trừ khi bạn đang gian lận hệ thống kiểu).

Các vấn đề liên quan