[FUN] Máy tính 24 nhân, 64Gb Ram mà dùng Chrome thôi vẫn giật, lag
Một lập trình viên Google chia sẻ chuyện có máy tính 24 nhân, 64GB RAM mà dùng Chrome thôi vẫn giật, lag, hóa ra lý do là tại Windows 10.
Câu chuyện tưởng chừng là một câu nói đùa nhưng đó lại là sự thật, công nghệ mới không phải lúc nào cũng tốt hơn, nhất là trong những công việc có tính đặc thù. Mới đây, anh Bruce Dawson, lập trình viên đang làm việc tại Google, đã chia sẻ trải nghiệm máy tính treo tới mức không thể di chuột. Điều đáng nói, đó là chiếc máy làm việc của anh sử dụng CPU 24 nhân, chạy hệ điều hành Windows 10.
Để bắt đầu câu chuyện, anh Dawson bắt đầu thấy “có dấu hiệu bất thường” trên chiếc máy tính thân yêu với cấu hình tối tân. Cụ thể, chiếc máy của anh sử dụng CPU 24 nhân, 48 luồng (anh tránh việc đề cập tên CPU), có SSD, dung lượng RAM 64 GB. Trong khi vấn đề xảy ra, theo anh, CPU vẫn 50% ở trạng thái nghỉ, lượng RAM trống cũng ở trên con số này, còn SSD thì hầu như không liên quan trong tình trạng anh đề cập.
Những cú treo máy là điều khó có thể chấp nhận với những người sử dụng máy tính cấu hình cao phục vụ công việc đặc thù như Dawson. Khi phát hiện ra có vấn đề, bằng những kỹ năng rất cơ bản ở một lập trình viên, anh đã sử dụng trình Event Tracker để xác định những cú treo. Cuối cùng, giữa rất nhiều lần treo từ nhẹ tới nặng khác nhau, anh lựa chọn một lần treo của Task Manager trong khoảng thời gian 1,125 giây.
Điều bất thường hơn lại xuất hiện, khi anh nhận ra ở thời điểm xảy ra cú treo, CPU của anh hầu như hoạt động ở dưới mức 50%, trong khi những cú treo máy “đúng điệu” thì CPU phải luôn ở mức 80-100%.
Sau quá trình đào sâu nghiên cứu bản ghi các sự kiện (event log) trên máy tính với các công cụ đặc biệt (mà chúng tôi không tiện đề cập trong khuôn khổ bài viết), Dawson nhận ra cú treo đó bắt nguồn ở thời điểm Windows 10 tắt các process (tiến trình) đang chạy. Anh đã cẩn thận kiểm tra trên cả 1 CPU yếu hơn với 4 nhân, 8 luồng cũng sử dụng Windows 10 và gặp tình trạng tương tự. Phần mềm kiểm tra do anh tự viết, với chức năng tạo ra 1.000 process một cách nhanh nhất có thể rồi tắt chúng, đã tạo ra cú treo máy giống như trên máy làm việc của anh.
Hóa ra trong quá trình tắt các process, có một giai đoạn nhỏ được Windows thực hiện 1 cách tuần tự trong 1 luồng, chứ không thực hiện song song trong nhiều luồng tương ứng. Khi có quá nhiều process phải “xếp hàng”, dẫn đến tình trạng treo máy.
Vấn đề này cũng vẫn xảy ra ngay cả khi anh đã cẩn thận thử thêm sau khi đã khởi động lại máy. Dawson còn chạy bài test trên một chiếc máy đời cũ yếu hơn rất nhiều, sử dụng CPU Intel Core 2 Q8200 từ năm 2008 nhưng chạy Windows 7. Kết quả lại làm anh bất ngờ: dù khởi động các process chậm hơn nhiều, nhưng quá trình tắt các process lại nhanh như CPU 24 nhân của Dawson, và quan trọng hơn là chúng được thực hiện song song. Có vẻ như “quy trình tuần tự” này được “phát minh” ra cùng với Windows 10.
Điều này đẩy Dawson vào hoàn cảnh trớ trêu: CPU 48 luồng, 47 trong số đó “nghỉ ngơi” trong khi máy thì lại treo. Không chỉ vậy, điều này ảnh hưởng rất lớn tới công việc thực tế của Dawson: build các ứng dụng trên máy. Như chính anh chia sẻ: “Tôi dùng CPU 24 nhân, mà vẫn không thể di chuyển chuột của mình”. Vậy thì hãy tưởng tượng những rắc rối anh gặp phải khi làm việc sẽ khó chịu tới mức nào, với hàng loạt tác vụ được khởi chạy rồi tắt trong quá trình build.
Hiện tại, vấn đề này đã được Dawson báo cáo tới Microsoft. Phía Microsoft cho biết đang điều tra, nghiên cứu để khắc phục. Với Dawson, anh chỉ nói: “Windows 7 bây giờ bỗng trở nên hấp dẫn hơn”. Mong là Microsoft sớm khắc phục vấn đề này trên Windows 10, nếu không, có lẽ những lập trình viên sử dụng CPU high-end nhiều nhân như Dawson có thể sẽ lại chuyển về sử dụng Windows 7.
Theo: TTT