Tại sao bộ lập lịch BFQ và BFS không có trong kernel Ubuntu chính thức?


24

Hôm qua tôi đã đọc một bài viết về tăng tốc Ubuntu. Một đề xuất trong bài viết là thay thế bộ lập lịch I / O mặc định bằng BFQ , theo bài viết được tối ưu hóa cho hiệu suất tương tác.

Một bài viết tương tự chỉ ra những lợi thế trong hiệu suất máy tính để bàn khi sử dụng bộ lập lịch quy trình BFS .

Cả hai bộ lập lịch đều được bao gồm trong nhiều bản vá và hạt nhân thay thế được biết là làm tăng tính tương tác và hiệu suất của máy tính để bàn (ví dụ: linux-pf , alcoholix-kernellinux-ck ).

Vì vậy, câu hỏi của tôi là : Cho biết Ubuntu đang phấn đấu như thế nào để có trải nghiệm máy tính để bàn tuyệt vời, tại sao các bản dựng không phải máy chủ của HĐH không đi kèm với các trình lập lịch này khi chúng được chứng minh là tốt hơn về hiệu suất tương tác?


Thông tin thêm về hai lịch trình có thể được tìm thấy ở đây:


1
Từ viết tắt là BFS, không phải BFQ, phải không? Hay là nó ở đây?
việc

@Jobin Rất tiếc, bạn nói đúng. BFS là một bộ lập lịch quy trình và nó được bao gồm trong bản vá linux-ck, giống như BFQ. Tôi sẽ chỉnh sửa câu hỏi để phản ánh điều này.
Glutimate

Có bất kỳ điểm chuẩn nào với hiệu suất đáng chú ý đạt được BFS so với Hạn chót của trình lập lịch mặc định của Ubuntu không? Các điểm chuẩn được liên kết chỉ so sánh với CFQ
NGRhodes

1
@NGRhodes Có, trong so sánh này, bạn có thể thấy rằng các tác giả đã đạt được thông lượng ngang nhau giữa BFQ và thời hạn trong khi quản lý để giảm thời gian khởi động của các ứng dụng theo tải đĩa tuần tự theo một bậc độ lớn (với BFQ là). Bạn sẽ tìm thấy sự so sánh tương tự trong bài viết đầu tiên được liên kết ở trên.
Glutimate

3
Tại sao bạn không thử đề xuất nó trên ubfox-thảo luận ?
Andrea Corbellini

Câu trả lời:


14

Câu trả lời nhanh :

  1. Cả hai bộ lập lịch đều không hoạt động hoặc hoạt động tốt cho tất cả các nền tảng được hỗ trợ của Linux (tần suất, kiến ​​trúc, mức tiêu thụ tài nguyên, ...)
  2. Có vẻ như Torvalds đơn giản là không muốn hỗ trợ nhiều hơn một người lập lịch

Giải thích:

Vì các trình lập lịch biểu là các sáng kiến ​​đơn độc (còn không được hỗ trợ bởi kernel), nên thực tế bao gồm nó sẽ có nghĩa là tập trung mọi người vào các trình lập lịch đó (bản vá bảo mật, bản vá bảo trì, tăng tốc độ thích ứng với các bản phát hành kernel mới, ...). Điều đó có nghĩa là đầu tư tài chính cho một dự án vẫn chưa chắc chắn về sự tồn tại của nó trong tương lai.

Họ vẫn còn khá trẻ. Ví dụ tốt nhất là những gì được giải thích trên FAQ của BFS tại "Nó có khả năng mở rộng như thế nào?".

Đằng sau các dòng của phần này cho chúng ta biết rằng BFS có vấn đề về hiệu năng khi bạn có nhiều CPU logic. Điểm duy nhất này đưa ra cho các máy chủ và PC cao cấp (số lượng 16 được đưa ra để có nghĩa là một máy chủ 1000 USD đơn giản sẽ gặp rắc rối về hiệu suất với điều này). Vì vậy, bạn loại trừ Ubuntu Server của bản vá này, bạn cũng loại trừ các cấu hình CPU vật lý hiện dễ dàng đạt được con số này.

Ubuntu không thể đạt được số lượng lớn nếu họ sử dụng một bộ lập lịch khác. Khả năng mở rộng chiến thắng hiệu suất.

Như mọi khi, với nhiều chữ "nếu" ...:

  • Nếu mọi người dùng Ubuntu là người dùng máy tính để bàn
  • Nếu mọi máy của mỗi người dùng Ubuntu là máy tính chính xác cho bộ lập lịch

Trong thực tế, cách tiếp cận tốt nhất là cách tiếp cận hiện tại: Hãy để người dùng áp dụng các trình lập lịch họ muốn nếu họ có phần cứng và quan tâm đến nó.

Áp dụng nó có thể hoạt động tốt hơn trong một số thời gian (bởi vì, như tôi đã nói, khả năng mở rộng là một vấn đề lớn và tương lai sẽ tăng số lượng bộ xử lý). Nhưng sẽ gây rắc rối nghiêm trọng cho người khác.

Nguồn bổ sung:

Liên kết có thể không tồn tại mãi mãi, đây là một bài viết tôi tìm thấy về BFS trên h-online . Đây là bản chính thức nhất mà tôi tìm thấy. Tuy nhiên nếu bạn google chăm chỉ, bạn có thể tìm thấy tuyên bố thực sự. Tôi nghĩ rằng nó có thể là trên kerneltrap.

Xem đoạn thứ ba của tiêu đề phượng hoàng của bài viết. Tôi sẽ trích dẫn nó ở đây trong trường hợp liên kết chết:

Hiện tại, việc tích hợp BFS vào nhánh phát triển chính của Linux dường như rất khó xảy ra, vì Linus Torvalds đã nói rõ rằng anh ta không muốn duy trì nhiều lịch trình. Ngoài ra, các nhà phân phối Linux có xu hướng thích một hình ảnh hạt nhân duy nhất đạt được hiệu suất tối ưu trên nhiều hệ thống khác nhau mà không yêu cầu cấu hình đặc biệt. Có thể là các nhà phát triển CFS sẽ cải thiện lịch trình của họ trong các lĩnh vực được bao phủ bởi BFS - một phần thưởng cho cộng đồng người dùng.

Linus Torvalds Chủ đề về nó.

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.