Việc biên dịch kernel linux có làm cho HĐH nhanh hơn không?


11

Việc biên dịch kernel linux đã tải xuống (ví dụ 3.2) có làm cho HĐH (ví dụ như Ubuntu) nhanh hơn trên máy cụ thể đó không?


Tôi nghi ngờ rằng bạn sẽ nhận thấy một sự khác biệt ngay cả khi nó làm.
Zoke

Cái gì nhanh hơn là chủ quan, nhanh hơn cái gì? Tôi đang sử dụng hạt nhân chung Ubuntu và PC của tôi rất nhanh, Để cải thiện hiệu suất, hãy cải thiện phần cứng tốt hơn.
Uri Herrera

Câu trả lời:


10

Nói chung, không.

Tuy nhiên, có một số trường hợp ngoại lệ cho "không". Ví dụ: kernel alcoholix hoặc Ubuntu kernel Flavours . Đây thường là điều chỉnh hiệu suất và có thể tạo sự khác biệt (nhân máy chủ nhanh hơn cho máy chủ và sẽ không cải thiện hiệu suất máy tính để bàn).

Với Ubuntu, nếu bạn đang chạy hương vị hạt nhân thích hợp, bạn nên sử dụng tốt.

Lưu ý: Nhân Fluorix cũng có một số bản vá (ngoài việc điều chỉnh hiệu năng).

Ngoại lệ khác sẽ là nếu bạn có một số phần cứng bất thường.

Nhưng trong phần lớn các trường hợp, hiệu năng không phải là lý do "chuẩn" để biên dịch kernel.

Xem:

Hạt nhân biên dịch wiki wiki


7

Câu trả lời chính xác nhất là, như bodhi.zazen đã nói, không thường xuyên nhưng với một vài ngoại lệ. Hầu hết các ngoại lệ đó có liên quan đến phần cứng, nhưng một số chỉ là vấn đề cấu hình. Biện minh cho câu trả lời của tôi sau đây.

Tôi đã biên dịch hai mươi sáu hạt nhân giữa hai máy trong tháng trước khi cố gắng điều chỉnh hiệu năng. Những gì tôi tìm thấy:

  1. Thay đổi loại cpu trong .config thành kiến ​​trúc gốc và loại bỏ các tùy chọn hỗ trợ các kiến ​​trúc khác đã cải thiện thông lượng I / O của tệp hơn 10% (đủ để tôi có thể "cảm nhận sự cải thiện") và giảm độ trễ sau khi người dùng nhập vào XFCE trên Xubfox 12,04 -32bit trên máy tính xách tay RAM Sempron 512MB di động 1,8 GHz (K8) của tôi. Những thay đổi tương tự không có tác động có thể định lượng hoặc có thể nhận biết được đối với máy tính xách tay RAM Core 2 Duo RAM 1.73GHz của tôi trong Ubuntu 12.04 64 bit, nhưng đã khiến một ứng dụng ổn định trước đây dễ bị sập.
  2. Thay đổi HZ trong .config thành 1000 cải thiện đáng kể khả năng đáp ứng với đầu vào của người dùng khi tải CPU cao trong cả hai hệ thống. Nó cũng thực hiện thay đổi tiêu điểm cửa sổ trong X tức thời trong mọi điều kiện.
  3. Bản vá BFS tăng tuổi thọ pin trong cả hai hệ thống thêm vài phút. Chỉ đủ để có thể đo lường được và nhất quán, nhưng không đủ để quan trọng nhiều. Điểm chuẩn cho thấy không có thay đổi hiệu suất đáng kể về mặt thống kê, nhưng cả hai hệ thống "cảm thấy" nhanh hơn. Tôi nghi ngờ điều này có liên quan đến việc lên lịch ưu tiên có lợi hơn cho khối lượng công việc điển hình trên các máy cụ thể đó.
  4. Tất cả các kết hợp .config khác đã thử dẫn đến hiệu suất giảm trên cả hai hệ thống.

Tôi đã dành những khoản tiền vô lý để biên dịch và thử nghiệm các cấu hình khác nhau. Đối với tất cả điều đó, chỉ có năm hạt nhân tạo ra một kết quả mong muốn, trong số hai mươi sáu nỗ lực. Bảy hạt nhân thậm chí không thể hoạt động (không thể khởi động hoặc không khởi động X). Gần đây tôi đã cài đặt kernel Liquorix từ kho lưu trữ và ghi được tất cả các cải tiến ở trên cộng với tốc độ khung hình tăng khoảng 50% trong cả hai trò chơi Windows tôi chơi qua WINE trên hệ thống Core2. Điều đó chỉ mất vài phút, và không có gì phá vỡ.

Hệ điều hành của tôi tốt hơn bởi vì tôi đã biên dịch kernel của riêng mình? Vâng, vâng một chút. Cho đến khi tôi tìm thấy một cái gì đó chạy chậm hơn / phá vỡ, bởi vì tôi đã không tìm thấy nó trong quá trình thử nghiệm. Hệ điều hành của tôi có nhanh hơn không? Không.


3

Theo kinh nghiệm của tôi thì có. Nhưng lợi ích chủ yếu đến từ việc loại bỏ các tính năng không cần thiết và chọn một vài tính năng khác, chẳng hạn như loại bộ xử lý của bạn. Ngoài ra, làm cho nó có độ trễ cực thấp để sử dụng máy tính để bàn. Tôi đã biên dịch kernel trong nhiều năm và đối với tôi, sự khác biệt luôn luôn đáng chú ý. Nhưng có những lợi ích khác. Thời gian khởi động cũng được cải thiện.

Tuy nhiên, sẽ rất tốn thời gian để chỉ chọn các tùy chọn bạn cần.


0

Tôi không biết về kernel, nhưng nói chung, việc biên dịch các ứng dụng từ nguồn thường làm cho chúng hoạt động nhanh hơn (tôi thường làm điều đó với các lib dev như CGAL hoặc các ứng dụng như ParaView). Tất nhiên khi quá trình biên dịch được tối ưu hóa cho kiến ​​trúc và như vậy.

Tuy nhiên tôi không nghĩ rằng việc biên dịch kernel sẽ giúp nó nhanh hơn đến mức nó có ảnh hưởng rõ rệt đến hiệu suất. Theo tôi nó sẽ chỉ được nhìn thấy trong các quầy hiệu suất.


0

Tôi đã biên dịch kernel cho EeePC 900A chỉ để loại bỏ các trình điều khiển và tính năng không cần thiết, để khởi động mà không cần thêm initrd, để đặt bộ lập lịch I / O mặc định, để tối ưu hóa cho Atom, và vô hiệu hóa gỡ lỗi và một số khả năng giảm khả năng phản hồi và hiệu suất- tiết kiệm tính năng. (nó đang được sử dụng làm máy chủ cho nhiều thứ nhỏ nhặt khác nhau). Cần ít thời gian khởi động hơn ^^ Khoảng một năm trước tôi đã thử nó trước đây, nhưng Chromium chỉ hiển thị các trang Web trống - với các liên kết có thể nhấp ...

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.