Tôi đang gặp một chút rắc rối khi quyết định sử dụng bất kỳ bộ xử lý python hoặc cần tây hoặc trang cho ứng dụng của tôi.Là cần thiết như hiệu quả trên một hệ thống địa phương như python multiprocessing là?
Ứng dụng của tôi rất nặng CPU nhưng hiện chỉ sử dụng một CPU nên tôi cần trải rộng trên tất cả các CPU có sẵn (điều này khiến tôi nhìn vào thư viện đa xử lý của python) nhưng tôi đọc thư viện này không mở rộng máy nếu cần. Ngay bây giờ tôi không chắc liệu tôi có cần nhiều hơn một máy chủ để chạy mã của mình hay không, nhưng tôi đang nghĩ đến việc chạy cần tây tại địa phương và sau đó mở rộng quy mô sẽ chỉ yêu cầu thêm máy chủ mới thay vì tái cấu trúc mã (vì nếu tôi sử dụng đa xử lý).
Câu hỏi của tôi: logic này có đúng không? và có bất kỳ tiêu cực (hiệu suất) với việc sử dụng cần tây tại địa phương (nếu nó quay ra một máy chủ duy nhất với nhiều lõi có thể hoàn thành nhiệm vụ của tôi)? hoặc là nó khuyên nhiều hơn để sử dụng đa xử lý và phát triển ra khỏi nó vào cái gì khác sau này?
Cảm ơn!
p.s. điều này là dành cho một dự án học tập cá nhân nhưng tôi có lẽ một ngày nào đó muốn làm việc như một nhà phát triển trong một công ty và muốn tìm hiểu cách các chuyên gia làm điều đó.
Điều gì khiến bạn nghĩ rằng nhiều CPU sẽ giúp ứng dụng nặng IO? Nếu ứng dụng của bạn là IO-bound thì bạn cần nhiều kênh IO, không phải CPU. –
Đối diện với từ sai xin lỗi ... nó là rất nhiều CPU. Về cơ bản nó chỉ là toán học trong một đệ quy lớn với rất nhiều dữ liệu đầu vào. Dường như là một quy trình tốt để phân phối – Lostsoul
Ah - trong trường hợp đó, tiếp tục :) Bạn có cần dung sai lỗi không - ví dụ, cố gắng sử dụng máy tính tình nguyện rải rác khắp nơi - hoặc bạn chỉ đang tìm cách sử dụng máy tính trong phòng thí nghiệm hoặc cluster? –