Tăng tốc các bản dựng lớn của bạn cục bộ với Distcc

Tăng tốc các bản dựng lớn của bạn cục bộ với Distcc

Nút nguồn: 2504108

Phương châm của Sun Microsystems ngày trước là “Mạng là máy tính”, có thể phù hợp khi CPU hoạt động chậm hơn và lõi đơn, nhưng gần đây để biên dịch nhanh hơn, bạn chỉ cần sử dụng nhiều lõi và bộ nhớ hơn tại vấn đề. Vấn đề là, hầu hết chúng ta không thường xuyên thực hiện các công việc biên dịch khổng lồ, chúng ta không thể nhớ lần cuối cùng chúng ta thử xây dựng nhân Linux là khi nào. Tuy nhiên, nếu bạn thấy mình đột nhiên có nhu cầu làm như vậy và có quyền truy cập vào hàng đống máy được nối mạng, thì tại sao bạn không kiểm tra. distcc: Trình biên dịch C/C++ được phân phối nhanh? Chúng tôi đã thấy một vài đề cập trong các nhận xét và một bài viết liên kết HaD đề cập đến nó, nhưng chưa bao giờ đề cập rõ ràng đến công cụ này. Vậy chúng ta đi đây.

Gọi distcc là một trình biên dịch thì hơi sai lệch, nó là một giao diện người dùng của trình biên dịch. Mỗi khách hàng bạn có quyền truy cập để chạy quy trình daemon distcc và ngồi đó chờ hướng dẫn. Để bắt đầu biên dịch song song, bạn gọi lệnh xây dựng thông thường bằng tập lệnh 'pump', bật chế độ xây dựng song song, đặt trình biên dịch thành 'distcc' và để công cụ thực hiện phần còn lại. Một tính năng thực sự thú vị là các máy chủ trình biên dịch không cần chia sẻ hệ thống tập tin hoặc có đồng hồ được đồng bộ hóa. Chúng thậm chí có thể là các hệ điều hành và kiến ​​trúc CPU khác nhau, với các trình biên dịch chéo thích hợp được cài đặt sẵn, do đó, việc tận dụng phần cứng hiện có mà không cần dành riêng cho nhiệm vụ sẽ dễ dàng hơn nhiều.

Hỗ trợ trình biên dịch Distcc tập trung vào GCC, nhưng cũng bao gồm hỗ trợ LLVM. Hỗ trợ hệ điều hành chủ yếu nhắm vào Linux nhưng dường như chỉ chạy tốt trên các dẫn xuất BSD khác nhau và thậm chí cả Cygwin trên Windows. Bạn có thể tưởng tượng một kịch bản gọn gàng khi đang làm việc trên máy tính xách tay của mình, bạn trở về nhà và khởi động một bản dựng mới, để máy của bạn tiếp nhận các máy khác trong vùng lân cận của bạn và tự động khai thác nguồn CPU của chúng. Và bạn chỉ cần thiết lập nó một lần!

Mặc dù đây là điện toán phân tán dành cho nhu cầu của bạn, nhưng trên mạng của bạn, gần đây chúng tôi đã thấy nhiều ứng dụng tốt của điện toán phân tán trên toàn bộ internet. Giống như một về một loại coronavirus phiền phức nào đó.

Dấu thời gian:

Thêm từ Hack một ngày