Tại sao nên vô hiệu swapfile trong Mac OS X?

Đã trả lời

Mình lượn qua vài diễn đàn thảo luận về vấn đề cài đặt một drive SSD trong MacBook Pro.

Mình thấy có người khuyên rằng nên vô hiệu hóa swap file nhưng không nói rõ lí do tại sao.

 

Mình băn khoăn lí do để vô hiệu hóa swap file trong Mac OS X là gì nhỉ?

Nó làm tăng hiệu suất à? Hay là làm máy máy ổn định hơn?  Hay nó gây ra trở ngại nào à?

Cuối cùng thì, có lí do gì để vô hiệu hóa swap file khi không swr dụng SSD không?

Thường người kém hiểu biết mới vô hiệu hóa swap file vì họ hóng được trên các blog là hiệu suất sẽ tăng vượt ngưỡng. SSD cũng cung cấp một băng thử tuyệt vời bởi vì chúng vốn đã nhanh rồi. Đừng dại mà làm thế. Nó sẽ giảm tính ổn định, và theo thời gian sẽ còn gây ra nhiều hiệu quả nghiêm trọng. 

Tính đến thời điểm này, mình vẫn chưa nhìn thấy bất kì tài liệu thực tế nào ((có giá trị và đáng tin cậy) cho thấy một sự gia tăng hiệu suất. Và nó là một thành phần quan trọng của một hệ điều hành, cho dù bạn có 2 GB RAM hay 120.

vào August 14, 2016.
Bình luận
Chấp nhận

Về mặt lí do, mình nghĩ người ta làm vậy là vì SSD drive bởi vì những drive này không có cùng chu kỳ như ổ đĩa quay đĩa từ tính tiêu chuẩn. Có một số hạn chế hơn của việc ghi chu kỳ, như vậy có lẽ sử dụng chúng với một swap file sẽ đẩy các chu kỳ lên nhanh hơn.

Về việc có nên vô hiệu hóa swap file khi không sử dụng SSD hay không:

Nếu bạn có nhiều RAM, cách này chắc chắn sẽ tăng hiệu suất, nhưng nhìn chung đấy không phải là ý hay đâu. Nếu mức hoạt động vượt quá mức trần bộ nhớ, mọi thứ sẽ rất dễ hỏng.

Ngoài ra, Wired Memory không được tách ra khi nó trở nên không hợp lệ, nó chỉ được tách ra khi việc chuyển trang được kích hoạt, thứ mà sẽ không xảy ra nếu Virtual Memory bị vô hiệu. Vì vậy, sẽ không mất nhiều thời gian cho tất cả các bộ nhớ của bạn hết sạch ngay cả khi nó không còn được sử dụng.

Đã trả lời vào August 14, 2016

Bộ nhớ ảo (Virtual Memory) của Mac rất “lười” ở chỗ nó chỉ tạo các swap file (tập tin trao đổi) thực chất trong khi đấy là thời gian để trao đổi trên bộ nhớ thực. Dù tốc độ có tăng đến đâu bạn cũng có thể thấy bằng cách không phải trì hoãn các công việc để chứa một bản ghi để trao đổi gần như chắc chắn sẽ được bù lại bằng sự tăng tốc độ trước đó của việc trao đổi có sẵn ở bước đầu tiên. Có sự trao đổi khiến máy nhanh hơn. Phần còn lại của câu trả lời bạn đã thực hiện rất tốt rồi!

vào August 14, 2016.
Bình luận

Lí do họ vô hiệu hóa swap file có thể là do tưởng bở về việc ổ SSD sẽ có một lượng bản ghi lớn nhất trên mỗi khối. File swap có thể được ghi vào thường xuyên, nhiều khả năng sẽ gây ra sự phân mảnh đĩa (cũng như sự phân mảnh hệ thống tập tin) và, cuối cùng, có thể khiến cho chiếc đĩa hỏng sớm hơn.

Điều đó nói rằng, đây chắc chắn là một trường hợp tối ưu hóa quá sớm. Vô hiệu hóa swap file luôn là một ý tưởng CỰC KÌ, CỰC KÌ NGU. Swap file ở đó để đề phòng trường hợp các chương trình đang chạy tiêu thụ nhiều bộ nhớ hơn bạn đã thực tế cài đặt. Nếu bạn vô hiệu hóa nó, bạn có thể sẽ không còn khả năng chạy nhiều chương trình cùng lúc được nữa (và giới hạn thì thấp hơn so với bạn mong đợi rất nhiều) hoặc bạn có thể sẽ gặp phải vấn đề (như là “đơ” và phải tự khởi động lại máy)khi bạn hết bộ nhớ.

Sau đó mình đã có chút kinh nghiệm (với swap file được bật) khi hết không gian trống. Mình có một ổ đĩa 120GB với chỉ còn gần 3GB trống. Trong khi chơi Civilization IV (một game lớn, toàn màn hình), hệ thống hết không gian ổ đĩa cứng (chỉ còn gần 50MB trống) và hiện lên cửa sổ với nội dung “xóa các ứng dụng ngay lập tức”. Cái này bị ẩn sau màn màn hình game nên hệ thống đã nghẽn lại. Nếu mình mà không thiết lập kết nối mạng một cách bảo mật qua giao thức SSH từ một Mac khác để xóa vài ứng dụng từ xa, mình đã phải nhấn giữ nút nguồn rồi.

Đã trả lời vào August 14, 2016

Mình chỉ muốn nhấn mạnh một lần nữa là đây là ý tưởng ngu vật. Swap được sử dụng ngay cả khi bạn có 16GB RAM. KHông phải là nhiều, nhưng 1 bit nhỏ xíu đã được ghi vào swap. Luôn luôn là thế, Đấy là một giải pháp tự vệ an toàn. Và trong khi hệ điều hành có thể chạy nếu thiếu nó, bạn không thể chắc chắn ứng dụng của bên thứ ba sẽ hoạt động ra sao. HD được ghi vào. Đấy là sự thật hiển nhiên rồi. Và không, sẽ chẳng có sự tăng hiệu suất thực tế nào cả. Chẳng qua là mẹo đánh lừa tâm lý thôi.

vào August 14, 2016.
Bình luận

2 câu hỏi của bạn rất hay, nó giải thích tại sao trong phần lớn trường hợp mà hệ thống có thể ghi vào một thiết bị lưu trữ thì đây lại là một ý tưởng rất tồi.

Lý do bạn có thể vô hiệu hóa swap là để hệ thống có thể chạy trên phương tiện chỉ đọc như là đĩa CD, DVD, hình mạng khóa sử dụng Netboot hoặc một USB chỉ đọc như bộ cài đặt Lion mới hoặc bộ hồi phục đi kèm với một số Mac thiếu các ổ đĩa quang.

Có bộ nhớ ảo nghĩa là hệ thống có thể chạy nhanh hơn đang kể và sử dụng ít bộ nhớ RAM hơn khi nhiều chương trình sử dụng cùng mã thư viện phổ biến. Mỗi chương trình cho rằng nó có 1 bản sao riêng của tất cả các mã nó cần nhưng khi bộ nhớ ảo tồn tại, hệ thống có một cách rất hay để lập bản đồ cùng bộ nhớ RAM thực tế đến nhiều chương trình khác nhau.

Đã trả lời vào August 14, 2016
Bình luận

Đáp án của bạn

Với việc gửi đáp án, bạn đã đồng ý với Chính sách dữ liệuCác điều khoản của chúng tôi.