Đối với kernel 32 bit, ưu / nhược điểm của PAE so với không PAE là gì?


8

Tôi đang sử dụng Ubuntu 12.04 32-bit. Hạt nhân của tôi là hạt nhân PAE. Tôi biết đây là những hạt nhân chúng ta có thể sử dụng cho HĐH 32 bit có RAM 4 GB, để sử dụng tất cả 4GB RAM.

Hệ thống của tôi là hệ thống 32 bit. Vì vậy, tôi nghĩ rằng tôi không cần chúng. Những lợi thế và bất lợi tôi sẽ có nếu tôi tiếp tục chạy hạt nhân PAE là gì?

raja@badfox:~$ uname -a
Linux badfox 3.2.0-24-generic-pae #39-Ubuntu SMP Mon May 21 18:54:21 UTC 2012 i686 i686 i386 GNU/Linux

3
PAE cho phép hệ thống 32 bit sử dụng hơn 3,2 GB RAM. Nếu bạn có ít RAM hơn hoặc nếu bạn có hệ thống 64 bit, bạn không cần nó. Tôi biết không có vấn đề với nó.
Marty Fried

@EliahKagan Hệ thống của tôi 32-bit và HĐH 32-bit của tôi nhưng Kernels PAE của tôi. Vì vậy, những lợi thế và bất lợi với hạt nhân PAE là gì nếu tôi tiếp tục chạy với chúng.
rdʒɑ

1
Vấn đề chính là đây: Hệ thống của bạn có bao nhiêu RAM? Ưu điểm của PAE là cho phép bạn, với hệ điều hành 32 bit của mình, có thể truy cập hơn 3,2 GB RAM. Đó là lý do tồn tại. Một hệ điều hành 64 bit có thể đã truy cập nhiều bộ nhớ hơn, do đó, nó không cần bất kỳ trợ giúp nào.
Marty Fried

@EliahKagan: Cảm ơn, nhưng tôi nghĩ có lẽ câu trả lời của izx sẽ làm lu mờ bất cứ điều gì tôi có thể viết. :) Tôi đã không làm cho nó một câu trả lời bởi vì tôi không biết chắc chắn những bất lợi là gì, nếu có, chỉ là chúng không lớn và không bao giờ làm phiền tôi. Nhưng bạn có thể đúng rằng một câu trả lời đơn giản trong trường hợp này có thể là tốt nhất.
Marty Fried

Câu trả lời:


21

Câu trả lời ngắn: Đi 64-bit nếu bạn có thể, nhanh hơn cả PAE / không PAE 32-bit; nếu bạn không thể, non-PAE có thể nhanh hơn 1-2% so với PAE.


Về lý thuyết, PAE có một chút chi phí so với không phải PAE ...

  • Ưu điểm lớn của PAE là cho phép bộ xử lý / hệ thống 32 bit sử dụng hơn 4GB RAM
  • Nhưng điều này đòi hỏi nhiều chi phí hơn một chút so với không phải PAE, điều này có thể dẫn đến hiệu suất giảm nhẹ.
    • Đây là một lời giải thích rất đơn giản: ở chế độ không PAE, CPU 32 bit phải tra cứu (truy cập) hai bảng để truy cập địa chỉ bộ nhớ vật lý; trong chế độ PAE, nó phải tra cứu ba bảng để làm như vậy. Người tra cứu bổ sung cần có một số (rất nhỏ) thêm thời gian, do đó áp đặt thêm overhead.
    • Cuối câu trả lời là hai hình ảnh từ bài viết Wikipedia PAE , minh họa điểm trên.
    • NX / XD cắn : Các kernel PAE cũng hỗ trợ No-Execute / Execute Disable-bit trên bộ vi xử lý 64-bit; điều này có thể giúp ngăn chặn một số loại vi rút / tấn công độc hại (tràn bộ đệm), nhưng IMO điều này không quan trọng lắm khi chọn hạt nhân 32 bit cho Ubuntu.

... nhưng trên thực tế, chi phí này không đáng kể (hầu như không có gì) ...

  • Phoronix đã làm một số xét nghiệm trong những năm qua mà thấy trên các hệ thống với 4GB hoặc ít hơn , kernel PAE có thể tối đa là khoảng 5% chậm hơn so với hạt nhân phi PAE. Điều này chỉ dành cho một ứng dụng thử nghiệm cụ thể; sự khác biệt thông thường là ít hơn 1%.

và 64-bit hầu như luôn luôn đánh bại hạt nhân 32-bit - đi cho nó!

  • Một điều mà các điểm chuẩn Phoronix ở trên nói với bạn là 64 bit là vua - ngay cả khi bạn có ít hơn 4GB RAM (mặc dù tôi khuyên bạn nên tối thiểu 1GB)
  • Nếu bạn có bộ xử lý 64 bit - thường là bất cứ thứ gì sau năm 2006 ngoại trừ Nguyên tử Intel - có lẽ bạn đang mất hiệu suất bằng cách sử dụng hạt nhân 32 bit!

So sánh truy cập bảng trang không PAE và PAE:

  1. Không PAE

    nhập mô tả hình ảnh ở đây

  2. PAE

    nhập mô tả hình ảnh ở đây


2
Vì vậy, nếu bạn có ít hơn 4GB RAM, bạn có nói rằng 64 bit nhanh hơn 32 bit không? Tại sao vậy? Ngoài ra, bạn không đề cập đến các vấn đề tương thích với phần mềm 32 bit chưa được chuyển đổi hoặc có lỗi trong quá trình chuyển đổi - bạn có nghĩ đây là vấn đề không? Có vẻ như nó đã được, nhưng có lẽ đây là một điều của quá khứ.
Marty Fried

Tất nhiên nhận xét trên có một điểm để suy nghĩ.
rdʒɑ

@MartyFried Đôi khi 64 bit nhanh hơn 32 bit vì trình biên dịch làm mọi thứ tốt hơn cho 64 bit. Tôi không nhớ chi tiết, vì vậy có lẽ ai đó có thể mở rộng về điều đó, nhưng tôi nghĩ rằng nó liên quan đến phần lớn nhất của bộ nhớ tiếp giáp (thậm chí ít hơn 2GiB / 4Gib) mà một chương trình có thể phân bổ.
Eliah Kagan

2
Những điều khác cần ghi nhớ là (1) 64 bit có thể nhanh hơn do sử dụng các hướng dẫn được thêm vào trong tập lệnh AMD64 / EM64T (trong khi với hầu hết các chương trình 32 bit được biên dịch theo mẫu số chung thấp nhất, tốt nhất là , i686) và (2) 64 bit có thể nhanh hơn trên các máy có ít hơn 4 GiB RAM vì bộ nhớ trong RAM và bộ nhớ được hoán đổi vào đĩa đều là một phần của không gian bộ nhớ ảo của mỗi chương trình và không gian bộ nhớ ảo được xử lý với các con trỏ 32 bit trên hệ thống 32 bit và các con trỏ 64 bit trên hệ thống 64 bit. Pehraps izx có thể nói với một số vấn đề này.
Eliah Kagan

2
@EliahKagan: bạn có nghĩ Q này có thể là ứng cử viên sáng giá cho Q chính tắc không: "Tôi có bộ xử lý 64 bit nhưng ít hơn 4 GB ram. Tôi nên chọn hạt nhân nào trong ba loại?"
ish

2

Đối với một số dữ liệu trong thế giới thực, đây là một số điểm chuẩn tôi đã thu thập được cho các cài đặt i386, i386-pae và amd64 trên netbook dựa trên Atom và máy tính xách tay dựa trên Sandybridge:

http://kernel.ubfox.com/~cking/power-benchmarking/blueprint-foundations-p-64bit-by-default/hpmini-and-x220-tests/results-3/results.txt

.. tôi có thể cung cấp một số cái nhìn sâu sắc về ưu và nhược điểm.


0

Tôi gặp rắc rối nghiêm trọng khi sử dụng 32.04 12 bit với một số phần mềm nhất định (hệ thống tập tin zfs), tiết lộ các giới hạn vmalloc của các hệ thống 32 bit (Tôi đã thử cả điều chỉnh pae và không pae và vmalloc và depmod params, đến chết ... nhưng không sự thành công). Đó có thể là một trường hợp đặc biệt, nhưng có thể được đưa ra làm ví dụ. Giới hạn ở đâu đó sâu bên trong hạt nhân 32 bit là 1 GB, ngay cả khi có thể sử dụng tối đa 3,2 GB.

Đi cho 64-bit nếu bạn có thể. Tôi khá chắc chắn rằng Tou vcan ... Tôi đoán rằng cho đến nay, nó (lõi lõi 64 bit) nên được hỗ trợ bởi hầu hết mọi hệ thống đang chạy. Việc "nâng cấp" sau này có phần khó chịu (thực tế có nghĩa là cài đặt lại, ngay cả khi dpkg và sao chép / etc / và / home / có thể giúp mang cài đặt mới chạy ..) nhưng vẫn có thể chấp nhận được. Tôi nghĩ rằng không có vấn đề gì phải sợ với 64-bit, ngay cả khi Bạn buộc phải sử dụng ứng dụng 32bit nguồn cũ / đóng hoặc một số thư viện vì một số lý do.

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.