Thiết kế được Dell xác thực cho Bộ lưu trữ HPC pixstor ( 11 )

Hiệu suất siêu dữ liệu PowerEdge R650 với MDtest bằng các tệp trống

Phần này khác với hiệu suất siêu dữ liệu trong các phần trước dựa trên mô-đun HDMD sử dụng mảng ME4024 vì một hoặc nhiều cặp máy chủ NVMe dựa trên máy chủ PowerEdge R650 với 10 thiết bị gắn trực tiếp NVMe sẽ thay thế mô-đun HDMD dựa trên hai PowerEdge máy chủ R750 và một hoặc nhiều mảng ME4024. Phần này đề cập đến hiệu suất siêu dữ liệu trên mô-đun HDMD NVMe mới với máy chủ PowerEdge R650 NVMe dành cho dữ liệu. Hiệu suất siêu dữ liệu cho mô-đun HDMD NVMe mới với bộ lưu trữ dữ liệu dựa trên ME sẽ được ghi lại cho bản cập nhật tiếp theo của giải pháp pixstor bằng cách sử dụng mảng PowerVault mới (ME5).

Hiệu suất siêu dữ liệu được đo bằng MDtest phiên bản 3.3.0, cùng với  OpenMPI  4.1.4rc1 để chạy điểm chuẩn trên 16 nút tính toán. Các bài kiểm tra mà chúng tôi đã chạy đa dạng từ một luồng cho đến 512 luồng. Điểm chuẩn chỉ được sử dụng cho các tệp (không có siêu dữ liệu thư mục), lấy số lượng hoạt động tạo, thống kê, đọc và xóa mà giải pháp có thể xử lý.

Một số HDMD trên Mô-đun NVMe (cặp NVMe R650) có thể được sử dụng để tăng số lượng tệp được hỗ trợ (các nút) và tăng hiệu suất siêu dữ liệu với mỗi cặp máy chủ bổ sung. Một ngoại lệ đối với sự gia tăng này có thể là các thao tác thống kê (và thao tác đọc đối với các tệp trống) vì số lượng của chúng cao và CPU trở thành nút cổ chai và hiệu suất không tiếp tục tăng.

Lệnh sau được sử dụng để chạy điểm chuẩn, trong đó  biến Chủ đề  là số lượng luồng được sử dụng (1 đến 512 tăng dần theo lũy thừa của 2) và  my_hosts.$Threads  là tệp tương ứng phân bổ mỗi luồng trên một nút khác nhau, sử dụng phương pháp quay vòng để trải chúng đồng nhất trên 16 nút tính toán. Giống như điểm chuẩn IOR, số lượng luồng tối đa được giới hạn ở 512 vì không có đủ lõi cho hơn 640 luồng và việc chuyển ngữ cảnh có thể ảnh hưởng đến kết quả, báo cáo một con số thấp hơn hiệu suất thực của giải pháp.

mpirun –allow-run-as-root -np $Threads –hostfile my_hosts.$Threads –map-by node –mca btl_openib_allow_ib 1 –oversubscribe –prefix /usr/mpi/gcc/openmpi-4.1.2a1 / usr/local/bin/mdtest -v -d /mmfs1/perf/mdtest -P -i 1 -b $Directories -z 1 -L -I 1024 -u -t -F

Vì kết quả hiệu suất có thể bị ảnh hưởng bởi tổng số IOP, số tệp trên mỗi thư mục và số luồng, nên chúng tôi quyết định giữ cố định tổng số tệp thành 2 tệp Mi (2^21 = 2097152), số các tệp trên mỗi thư mục được cố định ở 1024 và số lượng thư mục thay đổi khi số lượng chuỗi thay đổi như trong bảng sau:

Bảng 9.       Phân phối tệp MDtest trên thư mục

Số của chủ đề

Số lượng thư mục trên mỗi chủ đề

  Tổng số tệp

1

2048

2.097.152

2

1024

2.097.152

4

512

2.097.152

số 8

256

2.097.152

16

128

2.097.152

32

64

2.097.152

64

32

2.097.152

128

16

2.097.152

256

số 8

2.097.152

512

4

2.097.152

1024

2

2.097.152

Hình 30.     Hiệu suất siêu dữ liệu – các tệp trống

Lưu ý rằng thang đo được chọn là logarit với cơ số 10, để cho phép so sánh các hoạt động có sự khác biệt theo một số bậc độ lớn; mặt khác, một số hoạt động xuất hiện giống như một đường phẳng gần bằng 0 trên biểu đồ bình thường. Biểu đồ logarit với cơ số 2 phù hợp hơn vì số luồng tăng theo lũy thừa của 2. Biểu đồ như vậy trông giống nhau, nhưng mọi người có xu hướng nhận thức và ghi nhớ các số dựa trên lũy thừa của 10 tốt hơn.

Hệ thống cung cấp kết quả tốt cho các hoạt động thống kê đạt giá trị cao nhất ở 64 luồng với 10 triệu thao tác/giây. Hoạt động đọc đạt mức cao nhất là 4M thao tác/giây ở 64 luồng (lưu ý rằng chúng tôi đang đọc các tệp trống). Hoạt động xóa đạt mức tối đa là 453,4K Hoạt động/giây và hoạt động tạo đạt mức cao nhất là 301,8K hoạt động/giây, cả hai đều ở 32 luồng. Các thao tác thống kê và đọc có nhiều biến đổi hơn, nhưng khi chúng đạt đến giá trị cao nhất, hiệu suất không giảm xuống dưới 4 triệu thao tác/giây đối với thao tác thống kê và 3,2 triệu thao tác/giây đối với thao tác đọc. Thao tác tạo và xóa ít thay đổi hơn. Thao tác tạo tiếp tục tăng khi số lượng luồng tăng lên và thao tác xóa giảm dần sau khi đạt đến giá trị cao nhất.

Bởi vì những con số này dành cho một mô-đun siêu dữ liệu với một cặp siêu dữ liệu PowerEdge R650 NVMe duy nhất, nên hiệu suất sẽ tăng đối với mỗi cặp PowerEdge R650 NVMe bổ sung, tuy nhiên, chúng tôi không thể giả định mức tăng tuyến tính cho tất cả các hoạt động. Trừ khi toàn bộ tệp vừa với inode của một tệp như vậy, các mục tiêu dữ liệu trên các thiết bị khác được sử dụng để lưu trữ các tệp nhỏ, hạn chế hiệu suất ở một mức độ nào đó.

Hiệu suất siêu dữ liệu PowerEdge R650 với MDtest bằng 3 tệp KiB

Thử nghiệm này gần giống với thử nghiệm trước, ngoại trừ việc chúng tôi đã sử dụng các tệp nhỏ 3 KiB thay vì các tệp trống với giả định rằng các tệp phù hợp với các nút và do đó tránh truy cập các thiết bị khác để lưu trữ dữ liệu. Lệnh sau được sử dụng để chạy điểm chuẩn, trong đó  biến Chủ đề  là số lượng luồng được sử dụng (1 đến 512 tăng dần theo lũy thừa của 2) và  my_hosts.$Threads  là tệp tương ứng phân bổ mỗi luồng trên một nút khác nhau, sử dụng phương pháp quay vòng để trải chúng đồng nhất trên 16 nút tính toán.

mpirun –allow-run-as-root -np $Threads –hostfile my_hosts.$Threads –map-by node –mca btl_openib_allow_ib 1 –oversubscribe –prefix /usr/mpi/gcc/openmpi-4.1.2a1 / usr/local/bin/mdtest -v -d /mmfs1/perf/mdtest -P -i 1 -b $Directories -z 1 -L -I 1024 -u -t -F -w 3K -e 3K

Hình 31.     Hiệu suất siêu dữ liệu – tệp nhỏ (3 K)

Giờ đây, một số dữ liệu phải được chuyển cho mỗi tệp, số hiệu suất giảm, mặc dù các tệp phải vừa với các nút. Hoạt động thống kê và đọc cho thấy những con số tốt, đạt giá trị cao nhất ở 256 luồng với lần lượt là 9,2M thao tác/giây và ~4M thao tác/giây. Các thao tác xóa đạt mức tối đa là 431 K op/s và các thao tác tạo đạt mức cao nhất là 211 K op/s, cả hai đều ở 64 luồng. Hoạt động thống kê và đọc có nhiều biến đổi hơn, nhưng khi chúng đạt đến giá trị cao nhất, hiệu suất không giảm xuống dưới 4 triệu thao tác/giây đối với hoạt động thống kê và 2,4 triệu thao tác/giây đối với hoạt động đọc. Các hoạt động tạo và xóa ít biến đổi hơn, cả hai đều tiếp tục tăng cho đến khi đạt giá trị cao nhất, sau đó giảm dần sau đó.

Bởi vì những con số này dành cho một mô-đun siêu dữ liệu với một cặp siêu dữ liệu PowerEdge R650 NVMe duy nhất, nên hiệu suất sẽ tăng đối với mỗi cặp PowerEdge R650 NVMe bổ sung, tuy nhiên, chúng tôi không thể giả định mức tăng tuyến tính cho tất cả các hoạt động. Trừ khi toàn bộ tệp vừa với inode cho các tệp như vậy, các mục tiêu dữ liệu trên các thiết bị khác được sử dụng để lưu trữ các tệp nhỏ, hạn chế hiệu suất ở một mức độ nào đó.