Trong số nhiều thay đổi trong OneFS 9.5, điều thú vị nhất là những cải tiến về hiệu suất trên các nút PowerScale dựa trên NVMe: F900 và F600. Những cải tiến về hiệu suất này là kết quả của một số thay đổi đáng kể “bên trong” đối với OneFS. Trong quá trình chuẩn bị cho chương trình National Association of Broadcasters vào tháng 4 năm ngoái, tôi muốn đánh giá mức độ khác biệt mà hiệu suất bổ sung sẽ tạo ra cho quy trình biên tập video Adobe Premiere Pro. Adobe là một trong những đối tác phần mềm truyền thông lớn nhất của Dell và Premiere Pro đóng vai trò quan trọng đối với mọi loại hình sản xuất truyền thông, từ phát sóng đến điện ảnh.
Tin tuyệt vời là những thay đổi đối với OneFS tạo ra sự khác biệt lớn. Tôi thấy nhiều luồng video hơn 40% với bản nâng cấp phần mềm: lên đến 140 luồng UHD ProRes422 từ một nút F900 duy nhất!
Những thay đổi đối với OneFS
Nói chung, có những thay đổi ở ba khu vực trong OneFS dẫn đến sự gia tăng hiệu suất trong phiên bản 9.5. Các khu vực này là bộ đệm L2, mạng lưới phụ trợ và truy xuất trước.
Bộ đệm L2 — Một phần trong câu chuyện về hiệu suất của OneFS 9.5 là biết cách và thời điểm bỏ qua bộ đệm L2 và đọc trực tiếp từ NVMe một cách thông minh. Các cụm PowerScale OneFS duy trì bộ đệm L2 có thể truy cập toàn cục cho tất cả các nút trong cụm. Việc thao tác bộ đệm L2 có thể “tốn kém” về mặt tính toán. Trong quá trình đọc, cụm cần xác định dữ liệu nào có trong bộ đệm, dữ liệu đọc có nên được thêm vào bộ đệm hay không và dữ liệu nào nên hết hạn khỏi bộ đệm. Bộ lưu trữ NVMe có hiệu suất cao đến mức việc bỏ qua bộ đệm L2 và đọc dữ liệu trực tiếp từ NVMe sẽ giải phóng tài nguyên cụm. Làm như vậy sẽ giúp đọc nhanh hơn nữa trên các nút hỗ trợ nó.
Mạng lưới backend — OneFS sử dụng mạng backend riêng cho giao tiếp liên nút. Với hiệu suất lớn của lưu trữ dựa trên NVMe và sự ra đời của 100 GbE, giới hạn đã đạt đến trên mạng lưới riêng này. OneFS 9.5 khắc phục những hạn chế này bằng cách tiếp cận đa kênh tùy chỉnh (tương tự về khái niệm với nconnect từ thế giới NFS dành cho những người dùng Linux). Trong OneFS 9.5, các kênh kết nối trên mạng backend được liên kết theo cách được sắp xếp cẩn thận để song song hóa một số khía cạnh, trong khi vẫn duy trì thứ tự tin nhắn có thể dự đoán được.
Prefetch — Phần cuối cùng của quá trình tăng hiệu suất cho OneFS 9.5 đến từ việc cải thiện prefetch tệp. Cách OneFS prefetch siêu dữ liệu hệ thống tệp đã được làm lại để đọc trước tối ưu hơn ở các độ sâu khác nhau của cây siêu dữ liệu. Hiệu quả đã được cải thiện và “jitter” giữa các quy trình hệ thống tệp được giảm thiểu.
Thiết lập phòng thí nghiệm của chúng tôi
Trước tiên là một chút thông tin cơ bản về PowerScale và OneFS. PowerScale là tên mới của dòng sản phẩm Isilon. Các nút PowerScale mới dựa trên máy chủ Dell với khả năng tính toán, RAM, mạng và lưu trữ. PowerScale là giải pháp lưu trữ gắn mạng (NAS) theo cụm, có thể mở rộng. Để xây dựng hệ thống tệp OneFS, các nút PowerScale được nối lại để tạo cụm. Cụm tạo ra một hệ thống tệp NAS duy nhất với các tài nguyên tổng hợp của tất cả các nút trong cụm. Hệ thống máy khách kết nối bằng tên DNS và OneFS SmartConnect cân bằng các kết nối máy khách giữa các nút khác nhau. Bất kể máy khách kết nối đến nút nào, máy khách đó đều có khả năng truy cập tất cả dữ liệu trên toàn bộ cụm. Hơn nữa, các hệ thống máy khách được hưởng lợi từ tất cả các nút hoạt động đồng bộ.
Ngay cả trước khi có những cải tiến về hiệu suất trong OneFS 9.5, các nút PowerScale dựa trên NVMe đã rất nhanh, do đó cần có một môi trường phòng thí nghiệm mạnh mẽ để gây áp lực cho hệ thống. Đối với bộ thử nghiệm cụ thể này, tôi đã có quyền truy cập vào 16 máy trạm chạy phiên bản mới nhất của Adobe Premiere Pro 2023. Mỗi máy trạm đều chạy Windows 10 với GPU Nvidia, bộ xử lý Intel và mạng 10 GbE. Về mặt lưu trữ, các thử nghiệm được thực hiện trên một cụm F900 PowerScale 3 nút có kích thước tối thiểu với mạng 100 GbE.
Adobe Premiere Pro vượt trội trong việc chỉnh sửa video nén. Thủ thuật với video nén là một máy trạm khách hàng riêng lẻ sẽ bị quá tải trước hệ thống lưu trữ rất lâu. Do đó, điều quan trọng là phải đánh giá xem bất kỳ khung hình nào bị mất là kết quả của lưu trữ hay một máy trạm quá tải. Một thử nghiệm đơn giản là lấy một máy trạm duy nhất và bắt đầu phát lại các luồng video nén song song, chẳng hạn như ProRes 422. Theo dõi chặt chẽ các màn hình hiệu suất của máy trạm, tại một thời điểm nhất định, mức sử dụng CPU và GPU sẽ tăng đột biến và các khung hình sẽ giảm. Thử nghiệm này sẽ hiển thị số luồng tối đa mà một máy trạm duy nhất có thể xử lý. Vì thử nghiệm này hoàn toàn liên quan đến hiệu suất lưu trữ nên việc duy trì số luồng trên mỗi máy trạm ở mức lành mạnh sẽ loại bỏ hiệu suất của từng máy trạm ra khỏi phương trình.
Tôi đã quyết định chạy 10 luồng video ProRes 422 UHD ở tốc độ 30 khung hình/giây trên mỗi máy trạm. Mỗi luồng video riêng lẻ là ~70 MBps (560mbps). Chạy mười luồng này có nghĩa là mỗi máy trạm sẽ kéo khoảng 700 MBps (mặc dù với Premiere Pro tải trước, con số này gần với 800 MBps). Với số luồng video này, máy trạm không phải làm việc quá sức và nằm trong phạm vi phù hợp với đường ống mạng 10 GbE.
Chạy một số phép tính nhanh ở đây, 16 máy trạm mỗi máy kéo 800 MBps tương đương với khoảng 12,5 GBps tổng thông lượng. Thông lượng này không đủ thông lượng để làm quá tải ngay cả một cụm F900 3 nút nhỏ. Để gây áp lực cho hệ thống, tất cả 16 máy trạm đều được trỏ thủ công đến một cổng 100 GbE duy nhất trên một nút F900 duy nhất. Do bản chất cụm của OneFS, các máy khách sẽ được hưởng lợi từ toàn bộ cụm. Nhưng ngay cả khi phần còn lại của cụm nằm sau nó, tại một thời điểm nhất định, một nút F900 duy nhất sẽ bị quá tải.
Hình 1. Cấu hình OneFS Lab
Phương pháp thử nghiệm
Bước đầu tiên là nhập phương tiện thử nghiệm để phát lại. Mỗi máy trạm truy cập vào bộ riêng gồm 10 clip UHD ProRes422 dài một giờ. Sau đó, một dự án Premiere Pro riêng biệt được tạo cho mỗi máy trạm với 10 lớp video đồng thời. Kế hoạch là bắt đầu phát lại từng cái một trên mỗi máy trạm và xem điểm tới hạn cho nút PowerScale F900 duy nhất đó. Bài kiểm tra sẽ được chạy trước với OneFS 9.4 và sau đó với OneFS 9.5.
Adobe Premiere Pro có lớp phủ gỡ lỗi gọi là DogEars. Ngoài việc hiển thị các khung hình bị mất, DogEars còn cung cấp một số số liệu hữu ích về mức độ “khỏe mạnh” của việc phát lại video trong Premiere Pro. Ngay cả trước khi hệ thống bắt đầu mất khung hình, các điểm tăng đột biến về độ trễ và bộ đệm tải trước thấp sẽ hiển thị khi Premiere Pro gặp khó khăn trong việc duy trì phát lại.
Các số liệu trong DogEars mà tôi tập trung vào là:
Khung hình bị rớt : Chỉ số này rất rõ ràng, khung hình bị rớt là không thể chấp nhận được. Tuy nhiên, đôi khi Premiere Pro sẽ hiển thị số khung hình bị rớt một chữ số khi bắt đầu phát lại.
FramePrefetchLatency: Chỉ số này chỉ hiển thị trong quá trình phát lại. Độ trễ bắt đầu cao trong khi bộ đệm khung prefetch đang đầy. Khi bộ đệm đó tăng lên hơn 300 khung một chút, độ trễ giảm xuống còn khoảng 20 đến 30 mili giây. Khi hệ thống lưu trữ bị quá tải, độ trễ prefetch này tăng lên trên 30 mili giây và duy trì ở mức đó.
CompleteAheadOfPlay: Chỉ số này cũng chỉ hiển thị trong quá trình phát lại. Số lượng khung hình tăng dần trong quá trình phát lại và ổn định ở mức hơn 300 khung hình được tải trước một chút. FramePrefetchLatency ở trên sẽ cao (trong khoảng 100ms hoặc hơn) cho đến khi 300 khung hình được tải trước, tại thời điểm đó độ trễ sẽ giảm xuống còn 30ms hoặc thấp hơn. Khi hệ thống lưu trữ bị căng thẳng, Premiere Pro không bao giờ có thể lấp đầy bộ đệm tải trước này và không bao giờ đạt tới hơn 300 khung hình.
Hình 2. Premiere Pro với lớp phủ Dogears
Kết quả thử nghiệm
Sau khi cấu hình xong môi trường thử nghiệm và tải từng dự án, đã đến lúc xem hệ thống có thể cung cấp những gì.
Với cụm PowerScale chạy OneFS 9.4, quá trình phát lại được bắt đầu trên mỗi máy trạm Adobe Premiere. Hãy nhớ rằng tất cả các máy trạm đều được trỏ một cách giả tạo đến một nút duy nhất trong cụm F900 3 nút này. Nút F900 duy nhất chạy OneFS 9.4 đó có thể xử lý 10x máy trạm, mỗi máy phát lại 10x luồng UHD. Tức là 100x luồng video UHD ProRes 422 từ một nút. Không tệ chút nào.
Ở 110x luồng (11 máy trạm), không có khung nào bị mất, nhưng số CompleteAheadOfPlay trên tất cả các máy trạm bắt đầu giảm xuống dưới 300. Ngoài ra, FramePreFetchLatency tăng vọt lên hơn 100 mili giây. Rõ ràng, nút lưu trữ không thể cung cấp hiệu suất cao hơn.
Sau khi tái tạo những kết quả này nhiều lần để xác nhận độ chính xác, chúng tôi đã tháo bộ lưu trữ khỏi mỗi máy trạm và nâng cấp cụm F900 lên OneFS 9.5. Đã đến lúc xem sự khác biệt mà hiệu suất OneFS 9.5 mang lại cho Premiere Pro.
Như trước đây, mỗi máy trạm tải một dự án duy nhất với phương tiện ProRes duy nhất. Ở 100 luồng video, quá trình phát lại diễn ra tốt đẹp. Đã đến lúc tải thêm các luồng khác và xem mọi thứ bị hỏng ở đâu. 110, 120, 130, 140… quá trình phát lại từ một nút F900 duy nhất tiếp tục diễn ra tốt đẹp mà không bị giảm và có độ trễ chấp nhận được. Chỉ đến 150 luồng video thì quá trình phát lại mới bắt đầu gặp vấn đề. Vào thời điểm này, nút F900 duy nhất đó đã bơm gần 10GBps ra khỏi cổng NIC 100 GbE duy nhất đó. Các máy trạm 14x này không hoàn toàn bão hòa kết nối, nhưng đang tiến gần đến mức đó. Và hiệu suất tăng 40% so với các con số của OneFS 9.4. Thật ấn tượng.
Hình 3. Đầu ra thống kê isi với 140 luồng video từ một nút duy nhất
Những kết quả này vượt quá mong đợi của tôi khi bắt đầu dự án. Việc tăng hiệu suất 40% với bản nâng cấp mã cho phần cứng hiện có là điều ấn tượng. Sự gia tăng này phù hợp với một số công cụ đánh giá chuẩn mà kỹ sư sử dụng. Nhưng hiệu suất từ công cụ đánh giá chuẩn so với ứng dụng thực tế thường là hai thứ hoàn toàn khác nhau. Các công cụ đánh giá chuẩn đặc biệt không chính xác đối với phát lại video, trong đó độ trễ tăng nhỏ có thể dẫn đến kết quả không thể chấp nhận được. Vì Adobe Premiere là một trong những ứng dụng được sử dụng rộng rãi nhất với bộ lưu trữ PowerScale, nên việc đánh giá những khác biệt này như một nền tảng thử nghiệm là điều hợp lý. Để biết thêm thông tin về bộ lưu trữ và phương tiện PowerScale, hãy truy cập https://Dell.to/media .
Bài viết mới cập nhật
OneFS Restricted Shell—Xem và phục hồi nhật ký
Bổ sung cho shell bị hạn chế đã được đề cập ...
Thành công với Dell PowerScale và Baselight của FilmLight
Với vai trò là người dẫn đầu kỹ thuật cho quy ...
Cải tiến hiệu suất OneFS 9.5 cho chỉnh sửa video
Trong số nhiều thay đổi trong OneFS 9.5, điều thú vị ...
Cấu hình và triển khai OneFS WebUI Single Sign-on
Trong bài viết đầu tiên trong loạt bài này , chúng ta đã ...