Đã có câu trả lời cho trường hợp máy 2.
Tôi giả định rằng 128GB dữ liệu cần sắp xếp được lưu trữ dưới dạng một tệp duy nhất trên một ổ đĩa cứng (hoặc bất kỳ thiết bị ngoại vi nào). Không có vấn đề bao nhiêu máy hoặc ổ đĩa cứng được sử dụng, thời gian cần để đọc các tập tin 128GB ban đầu và ghi các tập tin 128GB được sắp xếp vẫn giữ nguyên. Các khoản tiết kiệm duy nhất xảy ra trong các loại ram dựa trên nội bộ để tạo ra các khối dữ liệu được sắp xếp. Thời gian cần để hợp nhất với ổ cứng n + 1 để thực hiện hợp nhất n-way thành một tệp 128GB được sắp xếp duy nhất trên ổ đĩa cứng còn lại vẫn giữ nguyên, bị giới hạn bởi thời gian cần để ghi tệp 128GB được sắp xếp vào phần còn lại ổ cứng.
Đối với máy n, dữ liệu sẽ được chia thành các khối 128GB/n. Mỗi máy có thể thay thế đọc các phần con, có thể là 64MB tại một thời điểm, để giảm chi phí truy cập ngẫu nhiên, do đó máy "cuối cùng" không chờ tất cả các máy trước đó đọc tất cả các khối của chúng trước khi nó bắt đầu .
Đối với các máy n (64GB ram mỗi) và n + 1 ổ đĩa cứng với n> = 4, loại bố cục với độ phức tạp thời gian O (n) có thể được sử dụng bởi mỗi máy để tạo 32GB hoặc khối nhỏ hơn trên n làm việc ổ đĩa cứng cùng một lúc, theo sau là một cách hợp nhất n-bit vào ổ cứng đích.
Có một điểm thu nhỏ làm giảm giới hạn lợi ích của n lớn hơn. Một nơi nào đó ngoài n> 16, thông lượng hợp nhất nội bộ có thể lớn hơn băng thông I/O đĩa.Nếu quá trình hợp nhất là cpu bị ràng buộc hơn là I/O bị ràng buộc, có một thương mại tắt trong cpu overhead cho thời gian cần để tạo ra các khối song song so với phí hợp nhất lớn hơn thời gian I/O.
Chia nhỏ, chỉnh sửa. Có thể tránh một cỗ máy duy nhất cho việc hợp nhất cuối cùng không? Có: radix sắp xếp. – wildplasser
@ wildplasser - không quan trọng. Việc hợp nhất nhanh hơn I/O bên ngoài, do đó quá trình hợp nhất được giới hạn trong thời gian cần để ghi 128GB dữ liệu vào ổ đĩa đích. Với các thiết bị n + 1, một hợp nhất n-way có thể được sử dụng để ghi vào ổ đĩa còn lại. Điều này sẽ cho phép các máy n tạo ra các khối dữ liệu n trên các ổ đĩa làm việc song song, nhưng việc hợp nhất cuối cùng bị giới hạn bởi tốc độ I/O của ổ đĩa đích. – rcgldr
Bạn * có thể * xem xét hệ thống tệp được chia sẻ thành một (một) máy. Mà vẫn sẽ là một khóa phễu. – wildplasser