Tìm hiểu về Memory Compress trong Mac OSX

BBạn sẽ luôn thắc mắc là tại sao “Memory Used” trong OS X luôn gần bằng Physical Memory, điều này có phải RAM luôn được dùng ở mức cao nhất? Khi ấy máy sẽ chậm? Vậy thực tế tại sao máy không hề chậm như những gì nó thể hiện qua Memory Used ấy? Lý do một phần là bạn đang hiểu sai, một phần là về Memory Compress.

Bài viết tham khảo từ trang blog  Macintosh.vn.

Ở thời điểm hiện tại, giá thành phần cứng thực sự là rất hợp lý đồi với người dùng, nên việc cân nhắc nâng cấp RAM từ mức 4GB lên 8GB (thậm chí là 16GB) cũng không còn quá điều quá xa xỉ đối với nhiều người. Tuy nhiên đã bao giờ bạn tự đặt câu hỏi là mình có thực sự cần nâng cấp RAM? Rất nhiều người bị vướng vào suy nghĩ “Máy khởi động xong đã gần hết RAM” hoặc “10.10 ngốn RAM quá“. Tôi đã có bài viết về vấn đề này, chi tiết ở đây sẽ giúp các bạn hiểu rằng không phải lúc nào “hết RAM” cũng thực sự là máy hết bộ nhớ. Trong bài viết này, tôi muốn giới thiệu thêm với các bạn về một tính năng khá hay, giúp bạn tiết kiệm được ối xèng. Đó là Compressed Memory. Thực ra Compressed Memory không phải là điều gì đó quá mới mẻ. Nếu các bạn tiếp xúc với máy tính vào những năm 1990 hay đầu những năm 2000, khi mà phần cứng còn đắt như vàng, hoặc bạn thấy hình ảnh phía trên đầu bài viết này rất quen thuộc, thì có lẽ các bạn đã từng nhìn thấy những phần mềm dạng như RAM Doubler hoặc Memory Doubler… chạy trên MAC hay trên Windows. Về nguyên tắc hoạt động thì chúng đều làm thao tác nén dữ liệu trước khi đưa lên RAM và đều đưa ra cảnh báo là “Dung lượng RAM tăng lên đồng nghĩa với việc CPU sẽ xử lý chậm đi“. Bởi vì CPU sẽ phải nén dữ liệu trước khi đưa lên RAM và việc này sẽ chiếm một phần không nhỏ CPU load. Tuy nhiên, với sự phát triển mạnh mẽ của CPU như hiện nay, CPU đã có nhiều lõi hơn thì việc sử dụng CPU để nén dữ liệu trước khi đưa lên RAM không còn là vấn đề quá lớn. Vì thế Apple đã đưa tính năng Compressed Memory vào OS X như một phần của hệ thống chứ không còn là phần mềm của hãng thứ ba nữa.

  • Ở hình chụp này, máy của tôi có 8GB RAM (Physical Memory).
  • Trong quá trình chạy, tổng dung lượng bộ nhớ mà OS X và các phần mềm yêu cầu là 15.91GB (Virtual Memory). Con số này không phải là dung lượng bộ nhớ thực tế mà hệ thống có thể đáp ứng, cũng không phải là dung lượng bộ nhớ thực tế mà các phần mềm chiếm dụng, nó chỉ là con số do phần mềm tính toán đưa ra mà thôi.
  • Thực tế hệ thống đã dùng hết 8GB RAM (Memory Used), tức là trên 2 thanh RAM của tôi không trống một tí nào.
  • Để đáp ứng yêu cầu của các phần mềm, OS X sẽ giải phóng hết bộ nhớ của các ứng dụng đang không hoạt động đồng thời cố gắng nén bộ nhớ lại trước khi đưa lên RAM. Lượng bộ nhớ được nén lại là 3.78GB (Compressed)
  • Nếu quá trình nén bộ nhớ vẫn không giúp cho hệ thống có đủ lượng bộ nhớ cần thiết để hoạt động, nó sẽ sử dụng ổ cứng (HDD/SSD) để làm bộ nhớ tạm thời. Lượng bộ nhớ tạm thời được tạo trên SSD của tôi ở thời điểm đó là 1.65GB (Swap Used). Ổ cứng cho dù là SSD hay SSD chạy RAID 0 thì tốc độ cũng còn thua rất xa tốc độ truy xuất dữ liệu của RAM nên Swap Used càng nhiều thì hiệu năng hoạt động của hệ thống sẽ càng giảm đi.
  • Biểu đồ màu mè ở giữa hình ảnh cho ta biết mức độ nén bộ nhớ của hệ thống.
    • Màu xanh cho ta biết máy tự quản lý bộ nhớ tốt, chúng ta không cần quan tâm.
    • Màu vàng cho ta biết máy đang phải nén bộ nhớ ở mức cao.
    • Màu đỏ cho ta biết máy đã nén bộ nhớ hết mức nhưng vẫn không đủ, phải sử dụng Swap file.

Dựa vào biểu đồ đó, chúng ta sẽ biết rằng

  • Nếu biểu đồ toàn màu xanh, bạn hoàn toàn không cần nâng RAM.
  • Nếu biểu đồ xuất hiện nhiều màu vàng, đó là lúc bạn cần cân nhắc nâng RAM.
  • Nếu biểu đồ xuất hiện nhiều màu đỏ, đó là lúc bạn cần nâng RAM càng sớm càng tốt.

Hoặc như trong hình này, tôi đang sử dụng 2 máy ảo trên Parallel Desktop, mỗi máy ảo này được chia sẻ 2560MB (2.5GB) cho bộ nhớ. Về lý thuyết thì máy của tôi phải sử dụng ít nhất là 5GB+ RAM được chia sẻ cho máy ảo, chưa kể nhìn trong màn hình Activity Monitor các bạn cũng thấy các phần mềm khác chiếm một lượng RAM không hề thấp, rồi bản thân OS X khi khởi động lên cũng chiếm một lượng RAM rồi. Vậy tại sao iStatMenu vẫn chỉ báo là máy dùng 4.31GB RAM thôi? Bởi vì trong trường hợp này, Memory Pressure (áp lực nén bộ nhớ) đã đạt tới 54%. Hi vọng sau khi đọc đến đây, các bạn có thể hoàn toàn bỏ cái suy nghĩ “máy của em hết bộ nhớ” hay “OS X ngốn RAM quá” để mà yên tâm sử dụng.

micdac24581

Math2IT

Math2IT

Đây là tác giả chung cho các bài viết không do trực tiếp tác giả cụ thể nào của Math2IT viết. Có thể đó là các bài dịch từ các bài viết nước ngoài hoặc các bài viết thiên về kỹ thuật và thông báo.