Bạn tập trung vào đâu?
Quyết định vận hành tại chỗ
Nhiều người đối phó với câu hỏi có nên mua hệ thống Deep Learning của riêng họ để sử dụng tại chỗ không. Trong khi một số người hài lòng với các giải pháp dựa trên đám mây cung cấp thời gian tính toán, có những điểm rất hợp lệ ủng hộ giải pháp tại chỗ . Một khi quyết định đã được đưa ra, tuy nhiên, điều gì đến tiếp theo? Là các giải pháp đơn giản và sẵn sàng với một vài lựa chọn, hoặc các thành phần cụ thể cần nghiên cứu và xem xét? Câu trả lời ngắn gọn là bất kỳ nhu cầu đầu tư nghiêm túc nào cần được thực hiện và việc mua một hệ thống Deep Learning cũng không ngoại lệ.
Kết hợp hệ thống Deep Learning của riêng bạn là một triển vọng thú vị. Đồng thời, với rất nhiều lựa chọn để xem xét, việc đưa ra một hệ thống để làm những gì bạn muốn, trong phạm vi ngân sách, có thể gây ra một chút khó khăn. Trong bài viết này, chúng tôi đề cập đến các thành phần chính rất quan trọng cho mọi hệ thống Deep Learning và những gì bạn cần biết để đưa ra lựa chọn phù hợp nhất với nhu cầu của mình.
Các khía cạnh cần xem xét cho hệ thống deep learning của bạn:
-
Ngân sách
Chi phí trả trước của việc kết hợp máy Deep Learning của riêng bạn là rất đáng kể và liên quan trực tiếp đến các thành phần mà bạn chọn. Mỗi thành phần được thảo luận ở đây có nhiều loại và một trong những khác biệt rõ ràng là giá cả. Không giống như hầu hết các sản phẩm, khi khả năng tăng, giá mua cũng vậy.
Đó là một ý tưởng tốt để có một ngân sách trong tâm trí và cố gắng hết sức để bám vào nó. Thay đổi và nâng cấp vào phút cuối là chấp nhận được, nhưng phấn đấu cho lớp tốt nhất của từng thành phần có thể là một nỗ lực rất tốn kém mà không thực tế đối với một số người.
-
Các dự án hoặc nhiệm vụ mà bạn muốn thực hiện
Loại hệ thống Deep Learning mà bạn cần sẽ phụ thuộc vào loại nhiệm vụ mà bạn muốn thực hiện. Trong các trường hợp, ví dụ, khi có một lượng nhỏ dữ liệu và nhiều tính toán cần được thực hiện, sức mạnh xử lý thô sẽ là ưu tiên so với lưu trữ lớn hơn và nhanh hơn. Ngược lại, nếu có nhiều dữ liệu phải liên tục được tham chiếu cho các mô hình đào tạo, thì có thể cần một lượng lớn bộ nhớ trên tàu hoặc RAM, để đào tạo ở tốc độ hợp lý.
-
Có thể mở rộng và tùy chọn nâng cấp
Hệ thống mà bạn kết hợp với nhau bây giờ có thể rất phù hợp với nhu cầu của bạn trong tương lai, nhưng trong bao lâu? Nâng cấp hoặc thêm các thành phần mới vào hệ thống Deep Learning của bạn là một cách tuyệt vời để kéo dài tuổi thọ của nó và có một hệ thống có thể mở rộng là một biện pháp linh hoạt tốt.
Sự khác biệt giữa nâng cấp và mở rộng rất đơn giản. Nếu một phần đang được thay thế bằng một phần mạnh hơn thì đó là một bản nâng cấp. Nếu một cái gì đó mới đang được thêm vào thì đó là một bản mở rộng. Ví dụ, thay thế CPU cũ bằng CPU mới hơn, nhanh hơn, là một bản nâng cấp đẹp cho bo mạch chủ CPU đơn đủ linh hoạt để hỗ trợ bộ xử lý mới hơn. Ngược lại, đặt bộ nhớ bổ sung vào các vị trí trống để thêm vào tổng kích thước bộ nhớ trên bo mạch, bạn đã có nó – mở rộng. Có thêm các khe cắm trên bo mạch chủ là một ví dụ về mở rộng và có thể mở rộng.
-
Hỗ trợ / Support
Khi nói đến công nghệ, hỗ trợ là một điều quan trọng cần xem xét. Đối với hầu hết các phần, bạn sẽ không phải lo lắng về việc khắc phục sự cố các thành phần trong máy Deep Learning của mình. Nếu có lỗi xảy ra thì nó sẽ được sửa chữa bởi một kỹ thuật viên được ủy quyền, hoặc thay thế. Loại hỗ trợ liên quan đến nhiệm vụ trong tay có liên quan đến khả năng sử dụng. Về cơ bản, bạn muốn sử dụng các thành phần được hỗ trợ tốt bởi nhà sản xuất.
Một ví dụ điển hình cho điều này là GPU, trong đó GPU NVIDIA được hỗ trợ rộng rãi hơn so với GPU của các nhà sản xuất khác. Điều này dẫn đến việc nhiều nhà phát triển viết thư viện và ứng dụng tốt hơn, cuối cùng biến NVIDIA trở thành lựa chọn tốt hơn cho hệ thống Deep Learning của bạn .
-
Mốc thời gian
Mặc dù một số người đam mê khuyên bạn nên mua các thành phần riêng biệt, theo thời gian, đây không phải là loại lời khuyên phù hợp nhất với mọi người. Một yếu tố quan trọng mà một số người bỏ qua là tổng thời gian cần thiết, từ khi bắt đầu đến khi hoàn thành, để xây dựng hệ thống của bạn. Những người đề xuất chiến lược này đề nghị theo dõi thị trường để bán hàng, hoặc nói cách khác là giao dịch tốt, trên các bộ phận cụ thể và mua chúng vào đúng thời điểm. Có ít nhất hai vấn đề liên quan chặt chẽ với kế hoạch này.
Đầu tiên là bạn không thể kiểm tra các thành phần riêng lẻ khi chúng đến vì chúng phụ thuộc lẫn nhau. Trong một thế giới hoàn hảo, mọi thứ bạn mua sẽ hoạt động hoàn hảo. Tuy nhiên, hầu hết chúng ta đều biết từ kinh nghiệm rằng các bộ phận khi đến nơi (DOA) thường đến đủ để việc kiểm tra trong giai đoạn DOA là quan trọng. Đặc biệt, với các bộ phận mở hộp cứng hay các bộ phận được tân trang lại, đảm bảo rằng chúng hoạt động chính xác là rất quan trọng. Vấn đề là nếu có quá ít bộ phận để tạo ra ngay cả một hệ thống barebones thì việc kiểm tra một thành phần riêng lẻ đòi hỏi phải sử dụng hệ thống làm việc thứ hai. Nếu bạn không có, hoặc ít nhất có quyền truy cập vào một, thì hàng mới đến phải ngồi trên kệ cho đến khi bạn sẵn sàng cho nó.
Vấn đề thứ hai tiếp theo trực tiếp từ vấn đề thứ nhất, và nó liên quan đến bảo hành chung. Giả sử rằng bạn có thể kiểm tra thành phần mới, hãy xác minh rằng nó hoạt động theo đặc điểm kỹ thuật, nếu nó không có nhà cố định thì nó lại nằm trên kệ. Điều này có vẻ không phải là vấn đề đối với một cái gì đó giống như Thẻ Video NVIDIA hoàn toàn mới với bảo hành ba năm , nhưng đối với các mặt hàng giải phóng mặt bằng hoặc hộp mở, thì nó có thể rất phù hợp.
Điểm mấu chốt là khoảng thời gian từ khi mua thành phần đầu tiên, cho đến khi hệ thống được xây dựng và thử nghiệm, có vấn đề. Trong một ví dụ cực đoan, bạn không muốn một số thành phần không được bảo hành trước khi chúng được bật.
Bạn quan tâm đến hệ thống deep learning được dựng sẵn cho riêng bạn?
Giải pháp trạm làm việc deep learning do Thế Giới Máy Chủ cung cấp trang bị mọi thứ bạn cần để bắt đầu tăng tốc đào tạo deep learning. Trải nghiệm sức mạnh của GPU NVIDIA, với các lựa chọn từ RTX 2080 Ti, TITAN RTX, Quadro RTX 6000, v.v. Cũng được cài đặt sẵn với các deep learning framework mới nhất bao gồm TensorFlow, PyTorch, Keras, v.v…
6 thành phần quan trọng Nhu cầu hệ thống deep learning của bạn
Bạn hãy ghi nhớ lại các khía cạnh khác nhau được liệt kê ở trên, còn bây giờ là lúc bàn chi tiết vào các thành phần.
-
Bo mạch chủ
Bo mạch chủ là tùy chọn đầu tiên trong danh sách này vì mọi thứ khác đều cắm vào nó. Tuy nhiên, nó có thể được đặt một cách thích hợp hơn ở cuối bởi vì nó phải là một mảnh tương thích với mọi thứ khác.
Sự lựa chọn bo mạch chủ của bạn được gắn trực tiếp với thành phần nào tương thích với hệ thống của bạn và quan trọng hơn là khả năng mở rộng hoặc mở rộng của nó. Bo mạch chủ có các yếu tố hình thức khác nhau, trong đó kích thước nhỏ hơn có thể dễ dàng đặt trên bàn của bạn hơn, nhưng có thể mở rộng ít hơn nhiều so với kích thước lớn hơn (ví dụ MBD-C7B75-B so với MBD-X10DAC-B ).
Lựa chọn bo mạch chủ của bạn sẽ đặt giới hạn trên cho số lượng CPU, GPU, khe cắm bộ nhớ khả dụng, bộ nhớ được hỗ trợ tối đa và khe cắm mở rộng PCI Express. Tương tự, các bo mạch chủ khác nhau chỉ tương thích với các thành phần nhất định như CPU cụ thể và các loại mô-đun bộ nhớ.
Khi bo mạch chủ của bạn đã được chọn, số lượng tùy chọn sẽ thu hẹp. Nếu đó là thành phần đầu tiên bạn chọn thì hãy chắc chắn kiểm tra tính tương thích ở mỗi bước trên đường đi
-
GPU
Đơn vị xử lý đồ họa là trái tim của mọi hệ thống Deep Learning. Bất kể vấn đề bạn đang giải quyết là gì, việc bạn chọn loại GPU và cấu hình sẽ thúc đẩy tốc độ công việc của bạn. Quyết định đầu tiên là số lượng GPU.
Một cách tầm thường, một hệ thống GPU đơn là một giải pháp hiệu quả hơn về chi phí và có lẽ phù hợp với những người không hoàn toàn cam kết. Vượt ra ngoài điều này, một hệ thống GPU kép hoặc đa GPU sẽ cho phép bạn chạy nhiều vấn đề khác nhau, hoặc có thể cùng một vấn đề với nhiều cài đặt siêu tham số khác nhau, song song. Đối với một nhà nghiên cứu machine learning, khả năng chạy thử nghiệm song song làm cho hệ thống đa GPU trở thành một sự đầu tư khôn ngoan.
Sau khi số lượng GPU được đặt, thương hiệu và kiểu máy là những thứ tiếp theo được xem xét. Phần lớn, sự lựa chọn GPU của bạn sẽ giảm giá và hỗ trợ. Đối với trung tâm hệ thống của bạn, bạn muốn có GPU tốt nhất phù hợp với ngân sách của bạn, với khả năng sử dụng tối đa của các thư viện và ứng dụng của bên thứ ba.
Danh sách GPU NVIDIA Turing mà chúng tôi đề xuất cho một hệ thống deep learning:
- RTX 2080 Ti (kiểu quạt thổi)
- NVIDIA TITAN RTX
- Quadro RTX 8000
- NVIDIA RTX 6000
Xem thêm: https://thegioimaychu.vn/gpu-card-may-chu/deep-learning-pf113/
Xem xét các loại GPU cho các ứng dụng Deep Learning cụ thể
Trong liên kết ở trên, chúng tôi đã so sánh 4 loại GPU khác nhau và cách chúng xếp chồng lên nhau cho các ứng dụng deep learning cụ thể, Thị giác máy tính và Xử lý ngôn ngữ tự nhiên (NLP). Hãy xem xét các GPU sau cho NLP, trong đó các kiến trúc hiện đại đòi hỏi một bộ nhớ GPU lớn để đạt được kết quả tốt nhất.
- NVIDIA GeForce RTX 2080 Ti (11GB DDR) – Đối với các mạng NLP hiện đại như Transformers, kích thước lô là rất quan trọng. Do đó, RTX 2080 Ti không lý tưởng cho các Nhiệm vụ NLP hiện đại. Mặc dù các máy trạm có thể được cấu hình với tối đa 4 GPU, nhưng không may bộ nhớ nhỏ hơn là một trở ngại cho ứng dụng này.
- NVIDIA Quadro RTX 8000 (48 GB DDR6) – Có lẽ GPU tốt nhất cho NLP: RTX 8000 với bộ nhớ / GPU 48 GB cho phép dung lượng bộ nhớ tối đa trong một GPU. Các thẻ này có thể được bắc cầu (bộ nhớ 96GB cho mỗi cặp) với NVLink.
Điểm BLEU (Số liệu NLP)
Ở đây chúng tôi so sánh đào tạo mô hình Biến áp chính thức (BASE và BIG) từ TensorFlow GitHub chính thức.
Transformer BLEU Score trained with RTX 6000 (BIG Model) | Transformer BLEU Score trained with RTX 2080 ti (BASE Model) |
Mô hình lớn được đào tạo sử dụng RTX 6000 có thể đạt được điểm bleu cao hơn (dựa trên cài đặt vanilla cho mô hình máy biến áp). Cài đặt mặc định / kích thước lô được sử dụng trên hệ thống 2x RTX 6000 wNVLink. | Ở đây, mô hình BASE được đào tạo sử dụng RTX 2080 Ti (dựa trên các thiết lập vanilla cho mô hình máy biến áp) rõ ràng là kém hơn. Lưu ý: Mô hình BIG không đào tạo được trên Hệ thống 2x 2080 Ti với kích thước lô mặc định. |
-
CPU
Đơn vị xử lý trung tâm có thể không phải là đối tượng tính toán trong hệ thống Deep Learning, tuy nhiên vai trò của nó rất quan trọng. Công việc của CPU trong tình huống này là xử lý vận chuyển dữ liệu. Cho dù dữ liệu của bạn nằm trong bộ nhớ hoặc trong bộ nhớ ngoài, nó cần được truy xuất và cung cấp cho GPU. Sau đó, khi GPU đã hoàn thành các tính toán cần thiết, kết quả phải được chuyển sang bộ nhớ và có lẽ, ổ cứng hoặc ổ cứng thể rắn. Nếu bộ lưu trữ trên một mạng, thì CPU sẽ chịu trách nhiệm liên lạc với các thành phần mạng để cung cấp dữ liệu đến và từ GPU. Về cơ bản, nó xử lý mọi thứ trừ các tính toán cụ thể mà GPU rất giỏi.
Với vô số lựa chọn CPU, làm thế nào để bạn biết cái gì phù hợp nhất với yêu cầu của bạn? Như đã đề cập, nếu sự lựa chọn của bo mạch chủ đã được thực hiện thì nó thu hẹp các tùy chọn. Thậm chí, sẽ có các yếu tố như tốc độ xung nhịp, số làn PCIe và số lõi cần được xem xét.
Tốc độ đồng hồ
Nói chung, tốc độ xung nhịp đề cập đến tốc độ CPU hoạt động và trong CPU lõi đơn, nó liên quan trực tiếp đến số lượng lệnh mà nó có thể thực hiện mỗi giây. Tốc độ xung nhịp không hữu ích để so sánh CPU từ các nhà sản xuất khác nhau, nhưng nó là một biện pháp phổ biến bất kể. Điều tiếp theo cần xem xét là số làn PCIe tối đa.
Làn đường PCIe
Trong khi CPU chịu trách nhiệm cung cấp dữ liệu cho GPU để xử lý, thì làn PCIe là phương thức vận chuyển. Số lượng làn PCIe phụ thuộc vào cả bo mạch chủ và CPU. Thông thường, các kỹ thuật viên sẽ tham khảo chipset bo mạch chủ , sẽ hỗ trợ số lượng đường PCIe tối đa. Nhu cầu, tuy nhiên, đến từ số lượng GPU. Về lý thuyết, có một nút cổ chai tiềm năng trong việc truyền dữ liệu trừ khi có 16 dòng PCIe trên mỗi GPU trong hệ thống của bạn.
Số lượng lõi
Trong CPU đa lõi, mỗi lõi có thể xử lý các hoạt động bổ sung được thực hiện song song, do đó tăng tổng số lệnh mỗi giây. Câu hỏi thực sự là liệu điều này có liên quan đến hệ thống Deep Learning không. Câu trả lời là có, nó là.
CPU xử lý việc xử lý dữ liệu song song với GPU thực hiện các tác vụ của chính nó. Khi GPU kết thúc, nó sẽ không hoạt động cho đến khi khối dữ liệu tiếp theo xuất hiện và bạn sẽ muốn giảm thiểu thời gian chết đó nhiều như thực tế. Một nguyên tắc nhỏ là có hai lõi cho mỗi GPU, vì vậy một hệ thống GPU kép nên được hỗ trợ bởi CPU có bốn lõi.
-
RAM
Khi nói đến bộ nhớ có một vài điều cần xem xét. Tổng dung lượng bộ nhớ sẽ quyết định số lượng dữ liệu bạn có thể tải cùng một lúc. Đối với các mô hình xây dựng, càng nhiều dữ liệu đào tạo có thể phù hợp với bộ nhớ thì càng tốt. Phải lấy dữ liệu từ bộ nhớ ngoài chậm hơn đáng kể, vì vậy đối với các trường hợp có nhiều dữ liệu, bạn muốn có nhiều RAM để tránh các truy cập đĩa không cần thiết. Ở mức tối thiểu, bạn muốn có ít nhất bộ nhớ trong hệ thống như với GPU lớn nhất, nếu không, sẽ xuất hiện một nút cổ chai tiềm năng. Điều này có nghĩa là nếu GPU của bạn có 32 GB thì RAM tối thiểu bạn nên có là 32 GB.
Yếu tố hình thức cũng cần được xem xét, kết hợp với số lượng khe cắm bộ nhớ trên bo mạch chủ, để giúp lập kế hoạch mở rộng. Ví dụ, trong ví dụ 32 GB đã nói ở trên, sẽ có khả năng mở rộng hơn để sử dụng hai mô-đun bộ nhớ 16 GB so với bốn mô-đun 8 GB vì nó để lại hai khe cắm mở rộng trong tương lai.
Đối với tốc độ RAM, càng cao càng tốt. Một lần nữa, sự gia tăng chi phí là điển hình khi tốc độ của bộ nhớ tăng lên, do đó ngân sách của bạn sẽ bị ảnh hưởng theo.
-
Lưu trữ
Lưu trữ cho hệ thống Deep Learning của bạn có hai loại: Ổ cứng (HDD) và Ổ cứng thể rắn (SSD). Ổ cứng truyền thống là một thiết bị lưu trữ rẻ hơn, mặc dù chậm hơn so với SSD. Các hệ thống ngày nay sử dụng kết hợp các thiết bị lưu trữ, với ổ SSD để lưu trữ hệ điều hành và các file được sử dụng thường xuyên và ổ cứng để lưu trữ phần lớn dữ liệu và ứng dụng của người dùng. Một cách tiếp cận tương tự có thể được sử dụng cho hệ thống Deep Learning của bạn, với SSD cũng được sử dụng để lưu trữ các bộ đào tạo tích cực.
Khi nói đến việc định giá cho việc lưu trữ, luôn có một điểm mua hàng tối ưu nơi bạn có được tiếng nổ tốt nhất. Vượt quá một ngưỡng nhất định, bạn đang trả quá nhiều cho một tài nguyên dễ dàng được nâng cấp vào thời điểm sau. Giá cho lưu trữ thay đổi thường xuyên, vì vậy thay vì đưa ra đề xuất cụ thể, tốt hơn là chỉ định các yêu cầu tối thiểu. Ngân sách cho phép, ổ SSD có dung lượng từ 128 GB đến 256 GB là kích thước hợp lý cho hệ điều hành và bộ dữ liệu đang hoạt động, trong khi đó, ổ cứng 2 TB có nhiều chỗ cho các ứng dụng, môi trường phát triển, bộ dữ liệu, mô hình, kết quả và báo cáo.
Về chủ đề khả năng mở rộng, bo mạch chủ thường có hỗ trợ cho một số thiết bị lưu trữ, nhưng một lần nữa, đây là một tùy chọn. Hãy tìm những thứ như số lượng giao diện SATA và thậm chí số lượng giao diện USB để hỗ trợ các thiết bị lưu trữ bên ngoài vỏ.
-
PSU
Bộ cấp nguồn máy tính được sử dụng để chuyển đổi nguồn điện từ ổ cắm thành nguồn có thể sử dụng được bởi các bộ phận bên trong vỏ. Các PSU được đánh giá theo công suất của chúng, vì vậy khi mọi người nói về việc có nguồn cung cấp năng lượng lớn hơn, nó thường đề cập đến một nguồn cung cấp số lượng watt cao hơn. Sự lựa chọn cung cấp năng lượng của bạn phụ thuộc vào sự kết hợp của các thành phần của bạn, cẩn thận để lại chỗ cho việc mở rộng trong tương lai. Đó là một thực tế tốt để mua một cái lớn hơn một chút so với yêu cầu bởi vì nhược điểm duy nhất để có PSU lớn hơn là chi phí ban đầu.
Các Outervision Power Supply Calculator là một nguồn tài nguyên hữu ích để giúp xác định kích thước của PSU bạn cần. Có những cân nhắc khác, chẳng hạn như mức độ hiệu quả của năng lượng hoặc tiếng ồn, nhưng các tùy chọn này không quan trọng bằng việc có đủ năng lượng cần thiết để chạy hệ thống của bạn.
Tóm lại
Có hệ thống Deep Learning của riêng bạn là một khoản đầu tư tuyệt vời sẽ phục vụ tốt cho các dự án của bạn và giúp bạn tiết kiệm tiền trong thời gian dài. Như với bất kỳ khoản đầu tư nào, có nhiều thứ khác nhau để xem xét, và tổng chi phí không phải là ít nhất trong số đó. Khi kế hoạch ban đầu hoàn tất, đã đến lúc chọn các thành phần.
Mua tất cả các bộ phận cần thiết có thể được thực hiện cùng một lúc hoặc có thể được trải ra để làm cho trải nghiệm thân thiện với ngân sách hơn. Tuy nhiên, hãy cảnh giác với các bảo hành và khả năng các bộ phận bị lỗi có thể vẫn chưa được kiểm tra trong giai đoạn xây dựng.
Có rất nhiều lựa chọn cho mỗi thành phần quan trọng. Một số trong số này phụ thuộc vào những cái khác, do đó, việc kiểm tra tính tương thích ở mọi bước của quá trình được khuyến khích. Tương tự, hệ thống hoàn chỉnh nên bao gồm các bộ phận phù hợp nhất với nhu cầu của bạn và yêu cầu của các dự án mà bạn muốn giải quyết. Điều này có nghĩa là chú ý đến các sản phẩm được hỗ trợ tốt có hồ sơ đã được chứng minh về việc hoàn thành công việc.
Lý tưởng nhất là khi hệ thống của bạn được xây dựng và bạn đã giao cho nó một số nhiệm vụ lớn dẫn đến kết quả tuyệt vời, nó đủ linh hoạt để nâng cấp và mở rộng lên cấp độ tiếp theo.