So sánh hệ điều hành nhân 32bit, 64bit và 32bit PAE qua Benchmarks

Filled under:

So sánh hệ điều hành nhân 32bit, 64bit và 32bit PAE qua Benchmarks

Đây là một ví dụ không toàn bộ vì nó thực hiện trên Linux chứ không phải Windows nhưng cũng đủ để cho chúng ta một cái nhìn rõ hơn về Hệ điều hành 32bit, 32bit PAE và 64bit, qua đó giải đáp cho câu hỏi nên chọn hệ điều hành bao nhiêu bit trên máy?

(32bit PAE là cách cho hệ điều hành 32bit nhận đủ 4GB RAM)

Sau đây là so sánh tốc độ giữa 32-bit, 32-bit PAE, và 64-bit kernel sau khi Linus Torvalds cho biết có sự chênh lệch 25% tốc độ giữa các kernel dùng và ko dùng CONFIG_HIGHMEM4G (cho phép phiên bản HĐH 32-bit đánh địa chỉ dc tới 4GB RAM).

Trong so sánh này chúng tôi sử dụng 1 laptop Lenovo ThinkPad T61 Core 2 Duo T9300, 4GB RAM, ổ cứng 100GB Hitachi HTS7220 SATA HDD, và card NVIDIA Quadro NVS 140M với HĐH Ubuntu 9.10 và kernel Linux 2.6.31 Ubuntu Karmic. Các gói phần mềm khác bao gồm GNOME 2.28.1, X Server 1.6.4, NVIDIA 195.22 driver, GCC 4.4.1, sử dụng hệ thống file EXT4, những thứ còn lại mặc định. Để Ubuntu đánh dc 4GB địa chỉ hoặc hơn chúng ta cần dùng 1 kernel PAE bởi vì Physical Address Extension ko đc bật mặc định trong kernel 32-bit. CONFIG_HIGHMEM4G đc bật mặc định trong kernel non-PAE, nhưng kernel Ubuntu PAE lại bật CONFIG_HIGHMEM64G và 1 số option khác để dùng tới 64GB RAM. Dĩ nhiên khi dùng địa chỉ 64-bit thì giới hạn ko là 4GB RAM. Nếu dùng kernel 32-bit non-PAE thì hệ thống chỉ nhận 3GB do 1GB dc dành cho kernel virtual address, chỉ 3GB còn lại dành cho user-space address.

Khác biệt duy nhất trong cấu hình kernel giữa Ubuntu PAE và non-PAE 32-bit là CONFIG_X86_CMPXCHG64, CONFIG_HIGHMEM64G đc bật thay vì CONFIG_HIGHMEM4G, CONFIG_X86_PAE, CONFIG_ARCH_PHYS_ADDR_T_64BIT, CONFIG_PHYS_ADDR_T_64BIT, CONFIG_I2O_EXT_ADAPTEC_DMA64 và tắt CONFIG_ASYNC_TX_DMA. Linux kernel yêu cầu CPU phải hỗ trợ PAE nhưng hầu hết các CPU Intel and AMD đều hỗ trợ tính năng này.

Các test chúng tôi dùng trong Phoronix Test Suite gồm OpenArena, Apache, PostgreSQL, Bullet, C-Ray, Gcrypt, GnuPG, GraphicsMagick, timed MAFFT alignment, John The Ripper, OpenSSL, x264 và PostMark.



Với game ioquake3-powered OpenArena hầu như ko có sự chênh lệch hiệu năng giữa 3 kernel. Chúng tôi chạy 1 test OpenGL-powered khác và ko thấy sự chênh lệch đáng kể nên chỉ đưa ra 1 kết quả trên đây



Gaming performance ko chịu ảnh hưởng nhiều bởi các kernel khác nhau với laptop Core 2 Duo 4GB RAM này, nhưng hiệu năng Apache thì có sự chênh lệch lớn. Ubuntu 32-bit kernel đáp ứng đc 473 request/s trong khi PAE kernel chỉ giảm 1 chút với trung bình 467 request, nhưng kernel 64-bit cho tốc độ gấp hàng chục lần với 7,989 request/s.



Với PostgreSQL benchmark, 32-bit PAE kernel chạy nhanh hơn kernel non-PAE 1 chút, nhưng 64-bit Ubuntu kernel dẫn đầu với điểm số cao hơn 10%.



Đây là 1 trong những test mới trong bộ Phoronix Test Suite là Bullet Physics Engine. 2 kernel 32-bit có tốc độ gần tương đương nhau trong test "3000 Fall" trong khi kernel 64-bit chạy nhanh hơn gần 20% trong phần xử lý hiệu ứng vật lý hạng nặng này.



Kernel 64-bit vẫn dẫn đầu khi chạy 136 Ragdolls test.



Phần này so sánh tốc độ ray-tracing dùng multi-threaded C-Ray. Kernel PAE vẫn ko cho thấy sự cải thiện hiệu năng rõ ràng, nhưng sự chuyển từ 32-bit sang 64-bit thì tốc độ tăng 1 cách đáng kể. C-Ray chạy nhanh hơn gần gấp đôi với 64-bit kernel.



x86_64 Linux cũng cho 1 tốc độ tuyệt vời trong phép thử CAMELLIA256-ECB cipher với thư viện Gcrypt.



With GnuPG, there was also an improvement with the 64-bit kernel but not much of a difference between the non-PAE and PAE Ubuntu kernels.



OpenMP-powered GraphicsMagick tăng tốc gần 40% với 64-bit kernel, trong khi kernel PAE vẫn chưa cho thấy sự chênh lệch đáng kể



For looking at the computational biology performance, we looked at MAFFT and found it to also perform best under the 64-bit kernel while the 32-bit PAE kernel did not end up having any impact in this CPU-focused test.



Kernel 64-bit cho tốc độ cao hơn 54% trong phép thử Blowfish - John The Ripper.



Ko có sự thay đổi tốc độ OpenSSL giữa 2 kernel 32-bit, nhưng kernel 64-bit trên Intel Core 2 Duo "Penryn" chạy nhanh gấp gần 2,5 tốc độ của kernel 32-bit.



Trong phép thử encode video bằng x264, tốc độ kernel PAE giảm 1 ít và kernel 64-bit lại tiếp tục là 1 sự lựa chọn xứng đáng.




Có 1 sự giảm hiệu năng nhỏ ở kernel PAE trong PostMark disk test, nhưng kernel 64-bit nhanh hơn khủng khiếp.

Qua 14 test trên chúng tôi ko nhận thấy sự thay đổi hiệu năng đáng kể của kernel Ubuntu 32-bit PAE. Bên cạnh đó chúng tôi chỉ dùng 4GB RAM, mức thông dụng của các desktop ngày nay, nhưng nếu dùng 8GB, 16GB hoặc nhìu hơn sự chênh lệch hiệu năng có thể cao hơn. Hiệu năng cao nhất vẫn thuộc về kernel 64-bit. Trừ khi bạn có lý do kỹ thuật hay công việc j đó, ko có lý do nào để xài kernel 32-bit để rồi phải lo tới vấn đề physical address extension.

0 nhận xét:

Đăng nhận xét