Đối với đa số máy tính để bàn, laptop hay các thiết bị di động khái niệm RAM ECC (Error Checking and Correction) ít được biết đến và quan tâm. Nhưng trong những chiếc máy chủ (server) thì RAM ECC rất quan trọng, là thành phần căn bản không thể thiếu.
1. RAM ECC là gì?
Một thanh RAM server có khả năng ECC (Error Checking and Correction) là một thanh RAM có khả năng điều khiển được dòng dữ liệu ra và vào. Do đó, đối với một thanh RAM thông thường (Non-ECC) thì trong quá trình truyền tín hiệu ở tốc độ cao thì rất dễ bị đụng độ crash, đặc biệt là khi sử dụng trong server. Và khi crash xảy ra thì RAM (Non-ECC) phải nạp lại toàn bộ dòng data vì nó không có khả năng quản lý được dòng dữ liệu. Đối với RAM ECC thì khi crash xảy ra RAM ECC chỉ cần yêu cầu gửi lại đúng gói tin (packet) bị crash. RAM ECC có 9 chip (RAM Non-ECC có 8 chíp), nó có chế độ tự động sửa lỗi, vì thế RAM ECC có độ ổn định và hiệu suất cao hơn các RAM bình thường khác.
2. Phân loại RAM ECC:
Hiện nay có 2 loại RAM ECC:
- RAM Unbuffered ECC (RAM ECC UDIMM) là loại RAM Unbuffered bổ sung thêm tính năng ECC có chức năng tự kiểm tra và sửa lỗi. RAM Unbuffered (RAM UDIMM) là bộ nhớ không có các bộ đệm hoặc thanh ghi (register) được thiết kế trên module bộ nhớ mà thay vào đó, các thiết bị này được thiết kế trên bo mạch chủ (motherboard). RAM Unbuffered ECC các lệnh truy xuất bộ nhớ được đưa trực tiếp đến module bộ nhớ, nhanh hơn RAM Registered ECC vì không phải gửi gián tiếp qua Registered chip.
- RAM Registered ECC (RAM ECC RDIMM) Trước hết RAM Registered ECC (RAM ECC RDIMM) là loại RAM Registered có bổ sung thêm tính năng ECC dùng để tự kiểm tra và sửa lỗi. RAM Registered (RAM RDIMM) là bộ nhớ có chứa các thanh ghi (register) được gắn trực tiếp trên module nhớ. Các thanh ghi (register) tái định hướng (re-drive) các tín hiệu qua các chip nhớ và cho phép module chứa nhiều chip nhớ hơn. Lệnh truy xuất của RAM Registered ECC được gửi đến Registered chip trước sau đó mới truyền đến module bộ nhớ.
3. Cơ chế hoạt động của RAM Registered ECC có cả ưu và nhược điểm:
- Ưu điểm là khi xài RAM Registered ECC sẽ giúp giảm tải bớt khối lượng điều khiển bộ nhớ của CPU, một phần công việc truy xuất trực tiếp bộ nhớ đã có Register chip thực hiện. Nhờ đó CPU sẽ bớt được khối lượng công việc, giúp máy chạy tốt và hiệu quả hơn.
- Nhược điểm dễ thấy nhất của RAM Registered ECC do nguyên lý hoạt động của nó. Các lệnh truy xuất do phải gửi đến Register chip trước sau đó mới truyền đến module bộ nhớ nên các lệnh chỉ thị sẽ mất xấp xỉ 1 chu kì CPU.
Điều này trở nên đặc biệt quan trọng trong môi trường máy chủ. Ví dụ đối với loại Motherboard Supermicro X8DTH-6F hỗ trợ 2 CPU loại E5600, khoảng cách này còn lớn hơn với 48GB ECC UDIMM hoặc 192GB ECC RDIMM. Đối với môi trường ảo hóa, nơi mà dung lượng bộ nhớ và băng thông bộ nhớ (Memory bandwidth) là các yếu tố then chốt để đạt được mật độ ảo hóa cao, RAM Registered ECC là lựa chọn tốt hơn. Nếu bạn đã mua loại RAM Unbuffered ECC rồi sau đó muốn nâng cấp, rất có thể bạn sẽ phải thay thế toàn bộ RAM cũ bằng loại RAM mới và làm tăng chi phí khá nhiều.