2012-04-19 30 views
20

Tôi biết một số thuật toán học máy như rừng ngẫu nhiên, do tự nhiên nên được thực hiện song song. Tôi làm một công việc nhà và tìm thấy có ba khuôn khổ lập trình song song, vì vậy tôi quan tâm đến việc biết sự khác biệt chính giữa ba loại song song là gì?MPI vs GPU vs Hadoop, sự khác biệt chính giữa ba song song này là gì?

Đặc biệt, nếu một số người có thể chỉ cho tôi một số nghiên cứu so sánh sự khác biệt giữa chúng, điều đó sẽ hoàn hảo!

Xin liệt kê những ưu và khuyết điểm của từng xử lý song song, nhờ

+1

Hadoop chỉ là một Datastorage cung cấp cho bạn các mô hình mangeling (MapReduce). Để sử dụng MPI, bạn cần PHD và nó là để tính toán. GPU chỉ là phần cứng. Kháng cáo của bạn là gì? –

+1

Xem chủ đề này http://stackoverflow.com/questions/10074047/mpi-gpu-how-to-mix-the-two-techniques – Infinity

Trả lời

34
  1. Bộ KH & ĐT là một thông điệp thông qua mô hình song song. Ở đây, bạn có một máy chủ mà sinh ra các chương trình trên tất cả các máy trong thế giới MPI của nó. Tất cả các luồng trong hệ thống là độc lập và do đó cách duy nhất để giao tiếp giữa chúng là thông qua các thông điệp qua mạng. Băng thông mạng và thông lượng là một trong những yếu tố quan trọng nhất trong việc thực hiện của MPI. Ý tưởng: Nếu chỉ có một luồng cho mỗi máy và bạn có nhiều lõi trên máy, bạn có thể sử dụng mô hình bộ nhớ chia sẻ OpenMP để giải quyết các tập con của vấn đề của bạn trên một máy.

  2. CUDA là mô hình SMT về tính song song. Nó sử dụng kiến ​​trúc GPU hiện đại để cung cấp song song. Một GPU chứa (khối (bộ lõi)) làm việc trên cùng một lệnh trong một thời trang khóa (Điều này tương tự như mô hình SIMD). Do đó, nếu tất cả các luồng trong hệ thống của bạn thực hiện rất nhiều công việc giống nhau, bạn có thể sử dụng CUDA. Nhưng số lượng bộ nhớ chia sẻ và bộ nhớ toàn cầu trong một GPU bị giới hạn và do đó bạn không nên sử dụng chỉ một GPU để giải quyết một vấn đề lớn.

  3. Hadoop được sử dụng để giải quyết các vấn đề lớn về phần cứng hàng hóa bằng cách sử dụng Map Reduce paradigm. Do đó, bạn không phải lo lắng về việc phân phối dữ liệu hoặc quản lý các trường hợp góc. Hadoop cũng cung cấp một hệ thống tệp HDFS để lưu trữ dữ liệu trên các nút tính toán.




Hadoop, Bộ KH & ĐT và CUDA là hoàn toàn trực giao với nhau. Do đó, nó có thể không công bằng để so sánh chúng.

Mặc dù, bạn luôn có thể sử dụng (CUDA + MPI) để giải quyết sự cố bằng cách sử dụng cụm GPU. Bạn vẫn cần một lõi đơn giản để thực hiện phần giao tiếp của vấn đề.

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