Thành thực mà nói, chiếc PC chơi game mà chúng ta gắn bó hàng ngày và một siêu máy tính đồ sộ của Dell hay IBM, về cơ bản chẳng khác gì nhau. Chúng chỉ khác nhau ở quy mô (tất nhiên rồi) và công việc thực hiện: Một bên để giải trí, một để làm việc. Từng ngày từng giờ, có không biết bao nhiêu dự án tiềm năng không thể thực hiện hoặc thực hiện không hiệu quả bởi lý do rất lãng nhách: Thiếu kinh phí đầu tư cho siêu máy tính trị giá tới nửa triệu USD!
Hình ảnh chỉ mang tính minh họa.
Nắm bắt được vấn đề đó, một nghiên cứu của phòng thí nghiệm Laboratoire de Chimie de la Matière Condensée de Paris (viết tắt là LCMCP) do kĩ sư Yann Le Du và nghiên cứu sinh Mariem El Afrit khởi xướng – đã đưa ra ý tưởng sử dụng một cụm máy tính hiệu năng cao xây dựng trên nền tảng… phần cứng chuyên dành cho game. Theo đó, trong phần đầu của loạt nghiên cứu, LCMCP khảo sát khả năng xử lý mà một hệ thống nền tảng GPU chuyên game mang lại.
Nếu khả thi, dự án này sẽ cung cấp cho các nhà khoa học tương lai đang ngồi trước màn hình thêm lý do để… mua phần cứng chơi game. Nếu bạn là người nhạy cảm hoặc thèm muốn các cỗ máy chơi game siêu hạng, hãy chuẩn bị trước tinh thần cho phần sau bài viết.
Nền tảng tính toán GPU - Lợi ích kinh tế
Cụm máy được đặt tên là HPU4Science, xây dựng trên quỹ ngân sách 40.000 USD với mục tiêu cố gắng đạt được hiệu năng tính toán có thể so với hệ thống chuyên dụng 400.000 USD do Nvidia, Dell hay IBM cung cấp. Điểm mấu chốt ở đây là lựa chọn ra được các linh kiện hợp lý, có khả năng tính toán cao nhất có thể trong khoảng kinh phí “hạn hẹp” đó.
Ngoài ra, hệ thống cần có khả năng nâng cấp tốt phòng khi yêu cầu hiệu năng tăng lên. Hơn nữa, các phần mềm chuyên dụng vốn không được thiết kế tối ưu cho hệ thống LCMCP sắp xây dựng, nên nó phải có khả năng tương thích với các phần mềm mã nguồn mở được đội lập trình chỉnh sửa lại phù hợp hơn.
Với xung nhân cao nhất vào khoảng 3 GHz, để có thể đạt được năng lực tính toán cần thiết để xử lý các thuật toán phức tạp – đồng nghĩa với hệ thống phải được trang bị rất rất nhiều bộ xử lý. Các bộ xử lý dân dụng (như x86, x86_64, POWER…) có vẻ không phải phương án hợp lý, bởi chúng có giá tới 50 - 250 USD mỗi nhân (tùy cấu trúc).
Câu trả lời cho bài toán khó này lại được tìm thấy ở một thứ cực kì thân quen với game thủ: đó là card đồ họa. Các GPU như GTX 580 chứa đến 512 nhân xử lý. Với mức giá khoảng 500 USD, chúng ta chỉ phải chi ra 1 USD cho mỗi nhân xử lý. Đối với các ứng dụng thông thường, nhân xử lý của GPU đương nhiên không thể đem ra so sánh với CPU, nhưng rất may các tác vụ khoa học lại đơn giản và tuyến tính hơn rất nhiều, hoàn toàn đáp ứng được số lượng lớn các phép tính song song. Vấn đề cốt lõi – như chúng tôi đã nói ở trên, là lập trình phần mềm khai thác được ưu điểm này của chúng.
Chi phí cho một máy chủ thế này cực kì lớn.
Cụm máy nền tảng GPU: Master và Worker
Hệ thống cụm máy làm việc ở 2 chế độ: Master - Worker thông thường và Neutral network algorithm (tạm dịch là mạng nơ-ron – ứng dụng trong trí tuệ nhân tạo).
Tại chế độ Master - Worker, máy Master đặt bài toán và các thuật toán cho các máy Worker. Worker chỉ việc tính toán theo các thuật toán đó và gửi kết quả con cho Master – nơi các kết quả con được biên dịch và tổng hợp lại thành kết quả cuối cùng.
Đối với mạng nơ-ron, máy Master sẽ mô tả vấn đề và gửi thông tin đến các máy Worker. Lúc này từng máy Worker hoạt động riêng biệt và tự tìm hướng giải, sau đó gửi kết quả cho Master. Máy Master hoàn tất công việc bằng cách so sánh các kết quả mà Worker gửi lên, kiểm tra xem liệu có giải pháp kết hợp nào không – sau đó chọn ra kết quả tốt nhất và trả ra cho người dùng.
Toàn bộ chi phí cho hệ thống cụm máy này chỉ vào khoảng 30.000 USD (bao gồm tất cả các thiết bị như GPU, CPU, ổ cứng lưu trữ, nguồn, dây mạng…) – chưa bằng 1/10 con số 400.000 USD.
Máy chủ Master
Bản chất thực sự của máy Master là quản lý đầu vào và đầu ra cho toàn hệ thống. Tại chế độ Master - Worker, máy Master thực hiện rất ít tính toán. Nhưng ở mạng nơ-ron, máy chủ này phải chọn lọc và tổng hợp lại tất cả các kết quả Worker đưa lên. Để chắc chắn hoàn thành tốt công việc, máy chủ được xây dựng theo tiêu chuẩn server mạnh mẽ ổn định có tổng chi phí 7.000 USD.
Đã bao giờ bạn nghĩ đến một chiếc máy chủ có hình dáng tương tự thế này?
Bo mạch chủ – bộ xử lý – bộ nhớ trong
Việc phải gửi – nhận và xử lý đồng thời dữ liệu từ các máy Worker gửi lên yêu cầu bộ xử lý phải dành tối thiểu 1 luồng xử lý cho mỗi Worker. Dự kiến toàn bộ hệ thống sẽ có tối đa 12 máy Worker, nên LCMCP quyết định chọn bộ xử lý XEON 5000 16 luồng, kiến trúc i7 mạnh mẽ. Ngoài ra, dung lượng bộ nhớ trong cũng phải thật lớn để có thể gánh đồng thời luồng dữ liệu khổng lồ này trong quá trình xử lý. Bo mạch chủ Tyan S7025 và RAM 24GB DDR3 Kingston có lẽ đủ để đáp ứng yêu cầu này.
Thiết bị lưu trữ
4 ổ SSD 120GB OCZ Vertex Turbo thiết lập RAID 0 làm nhiệm vụ xử lý dữ liệu tức thời, được trang bị để tránh gây nghẽn tốc độ toàn bộ hệ thống. Thực chất, do các máy tính được kết nối qua mạng LAN tốc độ 125 MB/s, lựa chọn SSD chạy RAID0 có vẻ quá thừa thãi. LCMCP lý giải rằng nếu dự án khả thi và đem lại nhiều lợi nhuận, khả năng nâng cấp lên mạng nội bộ Infiniband (tốc độ tới hơn 300MB/s) phải được tính tới. Lúc này 4 ổ SSD sẽ phát huy hết tác dụng.
Ngoài ra còn có thêm 5 ổ cứng Hitachi 2GB Deskstar 7k2000 phục vụ riêng cho nhu cầu lưu trữ dữ liệu.
Card đồ họa: Gainward 1,8GB Nvidia GeForce GTX 295 (Dual GPU)
Máy chủ được trang bị card đồ họa 2 nhân GTX 295 cho việc chọn lọc và tối ưu các giải pháp Worker đưa lên khi mạng hoạt động tại chế độ mạng nơ-ron. Vào thời điểm hệ thống HPU4Science này được xây dựng hồi tháng 4/2010, đây là card đồ họa có hiệu năng cao nhất. Không chỉ thế, chiếc card Nvidia còn tương thích tốt với Linux. Ngoài ra, các nhân CUDA của Nvidia cũng dễ dàng giao tiếp với ngôn ngữ lập trình Python.
Mơ ước của mọi game thủ.
Worker 1: Mạnh mẽ và tiên tiến nhất trong cụm HPU4Science
Được thêm vào trong hệ thống hồi tháng 1/2011, Worker 1 trang bị tất cả các phần cứng hiện đại nhất lúc bấy giờ: Bo mạch chủ Gigabyte X58A-UD9, bộ xử lý Intel Core i7, RAM 12 GB Corsair XMS3, ổ cứng SSD 60 GB OCZ Vertex HDD 500 GB Samsung, bộ nguồn Enermax 1250W và 4 card đồ họa Gainward 1,5 GB GeForce GTX 580. Tổng “thiệt hại” là 5000 USD.
Worker 2, 3, 4 và 5
Có mặt trong hệ thống từ những ngày đầu tiên, Worker 1 và 2 có cấu hình gần giống Worker 1, chỉ khác ở card đồ họa. Worker 1 sử dụng 3 card đồ họa GTX 480 1,5GB, trong khi Worker 2 trang bị 3 chiếc GTX 285 1,5GB. Worker 4 cũng mới được xây dựng giống y Worker 1. Cuối cùng, Worker 5 là thành viên mới nhất vừa góp mặt mới đây, chạy 2 card đồ họa đa nhân mạnh mẽ nhất hiện nay của Nvidia: GTX 590.
Ngoài ra còn có một hệ thống sử dụng card đồ họa C1060 Tesla chuyên dụng cho các workstation để so sánh.
Benchmark – Đánh giá
Tất nhiên mục đích chính của bài viết không phải để “khoe” dàn máy cấu hình khủng mà mọi game thủ mơ ước. Trong loạt benchmark dưới đây, chúng ta sẽ đánh giá khác biệt hiệu năng giữa GPU và CPU trong tính toán, đồng thời so sánh hiệu năng giữa đơn và đa GPU.
Trong phép thử đầu tiên, LCMCP tiến hành thử nghiệm phá mật khẩu. Phần mềm thử nghiệm chỉ tận dụng được 1 GPU. Kết quả: chiếc card Fermi Tesla vượt qua GTX 285, nhưng vẫn “ngửi khói” GTX 480 và GTX 580. GTX 580 chỉ mất 26 phút để phá 14 mật khẩu độ dài 1 đến 6 kí tự mã hóa bằng SHA1.
Biểu đồ phía trên thể hiện sự chênh lệch hiệu năng khủng khiếp giữa GTX 580 và bộ xử lý Core i7. Theo đó, phép thử tiến hành phá mật khẩu độ dài 5 kí tự được mã hóa bằng thuật toán MD5. Kết quả: card đồ họa GTX 580 chỉ mất 5s, trong khi 1 nhân xử lý của Core i7 mất đến 1024 giây! Bộ mã sử dụng để phá thậm chí còn chưa được thiết kế tối ưu cho card đồ họa.
Thời gian phá giảm 4,2 lần khi sử dụng cả 4 GPU.
Có 2 vấn đề không thể không đề cập tới khi nhắc về các siêu máy tính: đó là nhiệt độ và điện năng tiêu thụ, bởi chúng luôn phải làm việc hết công suất trong thời gian dài. HPU4Science được đặt trong phòng thí nghiệm có nhiệt độ được giữ ổn định 15 độ C. Các con số lớn nhất mà nhóm thí nghiệm từng ghi nhận được:
Hóa đơn tiền điện phải trả mỗi ngày là… 15 USD – con số không lớn lắm.
Tương lai của nghiên cứu khoa học giá rẻ
Tất nhiên, sẽ là một sự so sánh cực kì kệch cỡm nếu đem hệ thống nói trên đặt cạnh các siêu máy chủ hàng đầu thế giới, nhưng HPU4Science đã đặt tiền đề cho một hướng đi mới cho siêu máy tính nghiên cứu khoa học, đặc biệt có giá trị đối với các phòng thí nghiệm nhỏ hoặc các dự án do các các nhân thực hiện
Giờ thì chúng ta đã biết rằng: card đồ họa chơi game còn làm được rất nhiều ngoài việc chơi game. Biết đâu trong tương lai sẽ có công trình nghiên cứu hạt nhân hay công nghệ sinh học tại Việt Nam đi lên từ một chiếc GTX 590? Rất đáng để chúng ta cùng trông chờ.