Hướng dẫn

Vì sao thư mục ẩn của Nvidia có thể âm thầm nuốt trọn 40GB ổ C và cách dọn sạch

Thư mục DXCache của Nvidia lưu trữ shader đồ họa có thể âm thầm phình to lên tới hàng chục gigabyte trên ổ C mà Windows Disk Cleanup hoàn toàn bỏ qua. Dưới đây là cơ chế phát sinh và quy trình dọn dẹp an toàn.

Nhiều người dùng máy tính chạy card đồ họa Nvidia GeForce thường gặp tình trạng ổ đĩa hệ thống C bất ngờ báo đỏ dù không cài thêm phần mềm hay tải tệp nặng. Một trong những thủ phạm âm thầm nhất nằm ở thư mục DXCache của driver Nvidia, nơi có thể phình to từ vài gigabyte lên tới hơn 40GB mà các công cụ dọn dẹp tích hợp sẵn của Windows không thể xử lý.

Tóm tắt nhanh

  • Thư mục DXCache lưu trữ shader DirectX đã biên dịch để giảm giật khung hình khi chơi game, nhưng các tệp cũ không tự biến mất khi cập nhật driver hay gỡ game.
  • Công cụ Disk Cleanup và Storage Sense của Windows chỉ dọn dẹp cache D3DSCache của hệ thống, hoàn toàn bỏ qua thư mục cache riêng của Nvidia trong AppData.
  • Nhiều hướng dẫn trên mạng khuyên đặt Shader Cache Size sang mức Unlimited khiến thư mục này phình to không giới hạn, đe dọa các ổ SSD cài Windows dung lượng 256GB đến 512GB.
  • Người dùng có thể giải phóng toàn bộ dung lượng này an toàn bằng cách tạm tắt Shader Cache trong Nvidia App hoặc Nvidia Control Panel rồi xóa các tệp tồn đọng.

DXCache là gì và vì sao tự phình to qua từng bản cập nhật driver?

Card đồ họa Nvidia GeForce và hệ sinh thái phần mềm Nvidia
Màn hình ứng dụng Nvidia App bên cạnh dàn PC gaming card đồ họa GeForce
Dung lượng thư mục DXCache của Nvidia trên ổ cứng C
Phân vùng DXCache của Nvidia trong AppData Local phình to chiếm dung lượng hàng chục gigabyte

Trong quá trình xử lý đồ họa, card màn hình cần biên dịch mã shader của từng tựa game thành tập lệnh nhị phân phù hợp với phần cứng trước khi hiển thị khung hình lên màn hình. Để người chơi không phải chờ đợi biên dịch lại mỗi lần mở game và tránh hiện tượng giật cục (stutter) trong những phút đầu, driver Nvidia sẽ lưu sẵn các shader đã xử lý vào bộ nhớ đệm mang tên DXCache.

Thay vì đặt trong thư mục Program Files cùng tệp cài đặt driver, Nvidia lại lưu DXCache sâu bên trong đường dẫn hồ sơ người dùng tại AppData\Local\NVIDIA\DXCache. Điều đáng nói là cơ chế quản lý vòng đời tệp của driver hoạt động chưa thực sự triệt để. Khi bạn cập nhật driver đồ họa mới hoặc gỡ bỏ một tựa game đã chơi xong, các shader được biên dịch trước đó cho phiên bản driver cũ không hề bị xóa đi. Chúng tiếp tục nằm im dưới dạng tệp rác, trong khi các shader mới liên tục được ghi đè thêm vào sau mỗi bản cập nhật hoặc mỗi tựa game mới được khởi chạy.

Theo thử nghiệm thực tế từ trang công nghệ XDA Developers, trên các hệ thống thường xuyên nâng cấp driver hoặc cài đặt nhiều tựa game để trải nghiệm, thư mục DXCache có thể chạm ngưỡng 40,2GB mà người dùng không hề nhận được bất kỳ thông báo hay cảnh báo dung lượng nào từ phần mềm.

Disk Cleanup và Storage Sense vì sao không thể dọn dẹp thư mục này?

Đường dẫn thư mục DXCache của Nvidia trên Windows Explorer
Vị trí lưu trữ hai folder DXCache và GLCache trong AppData Local của người dùng

Khi dung lượng ổ C xuống mức báo động, đa số người dùng Windows sẽ mở ngay công cụ Disk Cleanup hoặc bật tính năng Storage Sense để quét các tệp tạm thời. Trong giao diện Disk Cleanup có sẵn tùy chọn mang tên “DirectX Shader Cache”, khiến không ít người tin rằng toàn bộ bộ nhớ đệm đồ họa trên máy đã được làm sạch.

Tuy nhiên, về mặt kỹ thuật, công cụ của Microsoft chỉ can thiệp vào thư mục D3DSCache do chính Windows quản lý cấp hệ điều hành. Toàn bộ thư mục DXCache (dành cho DirectX) và GLCache (dành cho OpenGL/Vulkan) thuộc quyền quản trị riêng của Nvidia nằm ở phân vùng người dùng hoàn toàn nằm ngoài phạm vi quét của Disk Cleanup lẫn Storage Sense. Do đó, dù chạy quét dọn dẹp bao nhiêu lần, hàng chục gigabyte tệp rác của Nvidia vẫn nằm nguyên vị trí cũ.

Tình trạng này trở nên đặc biệt nghiêm trọng với người dùng máy tính tại Việt Nam, nơi phần lớn cấu hình laptop học tập, làm việc hoặc PC gaming tầm trung phổ biến vẫn đang phân chia ổ C ở mức 256GB hoặc 512GB. Việc một thư mục vô hình chiếm tới 40GB dung lượng dễ dàng đẩy ổ cứng thể rắn (SSD) vào trạng thái gần đầy, làm suy giảm tốc độ ghi và rút ngắn tuổi thọ của chip nhớ flash.

Rủi ro từ các mẹo chỉnh Shader Cache Size sang Unlimited trên mạng

Trên các diễn đàn và video hướng dẫn tối ưu hiệu năng game, nhiều mẹo vặt thường khuyên người dùng vào bảng điều khiển Nvidia và chuyển mục Shader Cache Size sang mức “Unlimited” (không giới hạn) để ngăn chặn hoàn toàn việc game bị giật khung hình do thiếu bộ nhớ đệm.

Mặc dù thiết lập này giúp driver thoải mái lưu trữ dữ liệu, nó cũng đồng thời gỡ bỏ mọi rào cản kiểm soát dung lượng của thư mục DXCache. Nếu không đặt giới hạn, bất kỳ tựa game nào từng mở lên đều sẽ để lại tệp rác vĩnh viễn. Kích thước mặc định của driver Nvidia hiện nay (Driver Default) thường nằm trong khoảng 10GB đến 16GB. Nếu bạn không chơi cùng lúc hàng chục tựa game thế giới mở thế hệ mới với hàng triệu dòng lệnh shader nặng, việc giữ ở mức không giới hạn chỉ mang lại rủi ro làm tràn ổ C mà không đem lại cải thiện tốc độ rõ rệt.

Quy trình kiểm soát và dọn sạch cache an toàn cho máy tính

Giao diện thiết lập Shader Cache Size trong Nvidia App
Giao diện Global Settings hiển thị các tùy chỉnh đồ họa trong ứng dụng Nvidia App

Nếu bạn muốn xóa sạch những shader cũ đã lỗi thời và trả lại dung lượng trống cho ổ đĩa hệ thống, việc xóa trực tiếp khi driver đang hoạt động thường sẽ bị Windows chặn do tệp đang bị tiến trình hệ thống chiếm dụng. Quy trình dọn dẹp an toàn gồm 4 bước thực hiện như sau:

  1. Tạm tắt bộ nhớ đệm: Mở ứng dụng Nvidia App (hoặc Nvidia Control Panel truyền thống), chuyển sang thẻ Graphics > chọn thẻ Global Settings. Tìm đến mục Shader Cache Size và chuyển giá trị sang Disabled. Nhấn áp dụng thay đổi.
  2. Khởi động lại máy tính: Khởi động lại Windows để hệ điều hành giải phóng hoàn toàn quyền truy cập của các dịch vụ đồ họa vào các tệp cache đang mở.
  3. Xóa tệp rác thủ công: Nhấn tổ hợp phím Windows + R, nhập dòng lệnh %localappdata%\NVIDIA và nhấn Enter. Mở thư mục DXCache và xóa toàn bộ các tệp bên trong. Bạn cũng có thể kiểm tra thêm thư mục GLCache ngay bên cạnh để dọn sạch tệp đệm OpenGL/Vulkan nếu có. Nếu còn một vài tệp không cho xóa, bạn chỉ cần chọn Skip để bỏ qua.
  4. Kích hoạt lại giới hạn an toàn: Mở lại Nvidia App hoặc Nvidia Control Panel, chỉnh Shader Cache Size về lại mức Driver Default hoặc đặt cố định ở mức 10GB. Mức dung lượng này đủ rộng rãi cho hầu hết các game thủ chơi 3-5 tựa game song song mà không lo ổ C bị phình to mất kiểm soát.

Sau khi dọn dẹp, trong lần đầu tiên mở lại một tựa game nặng, bạn có thể nhận thấy thời gian tải màn chơi ban đầu lâu hơn một chút hoặc xuất hiện vài khung hình hơi khựng nhẹ do GPU phải biên dịch lại các shader cần thiết. Sau khi bộ đệm mới được tạo lập ổn định, hiệu năng trong game sẽ trở lại hoàn toàn bình thường trên một ổ C thông thoáng hơn rất nhiều.

Bài viết mới nhất