Friday, November 1, 2024

[AWS] High Performance Computing (HPC) on AWS

-

High Performance Computing (HPC)

High Performance Computing (HPC) là một phương pháp sử dụng các tài nguyên máy tính lớn để xử lý các tác vụ tính toán phức tạp. Trong đó, điện toán đám mây là nơi lý tưởng để thực hiện HPC, vì bạn có thể tạo ra một số lượng lớn các tài nguyên trong thời gian ngắn, tăng tốc độ thời gian để đạt được kết quả bằng cách thêm nhiều tài nguyên hơn và chỉ phải trả tiền cho các hệ thống bạn đã sử dụng.

Trong AWS, có một số dịch vụ hỗ trợ cho việc thực hiện HPC, bao gồm:

  1. Amazon EC2: Cung cấp các máy ảo (instances) với các tính năng mạnh mẽ, có khả năng tùy chỉnh để thực hiện các công việc HPC phức tạp.
  2. Amazon Elastic Inference: Cung cấp khả năng tính toán thêm cho các mô hình machine learning bằng cách thêm GPU vào các máy ảo EC2 mà không cần phải tạo ra các máy ảo hoàn toàn mới.
  3. AWS Batch: Giúp tự động hóa quy trình HPC, hỗ trợ việc lập lịch và quản lý công việc.
  4. Amazon Elastic File System (EFS): Cung cấp lưu trữ dựa trên file system được chia sẻ cho các tài nguyên EC2 để xử lý các dữ liệu lớn.
  5. Amazon FSx for Lustre: Cung cấp lưu trữ file system phân tán, tối ưu hóa cho việc thực hiện HPC và các ứng dụng tính toán chuyên sâu.
  6. AWS ParallelCluster: Cung cấp một giao diện người dùng đơn giản để triển khai và quản lý các hệ thống HPC trên đám mây.
  7. Amazon SageMaker: Cung cấp một nền tảng để phát triển, đào tạo và triển khai các mô hình machine learning, bao gồm các mô hình HPC.
  8. AWS HPC Competency Program: Cung cấp các đối tác và khách hàng được xác nhận có kinh nghiệm trong việc thiết kế, triển khai và quản lý các ứng dụng HPC trên AWS.

Data Management & Transfer

Trong quản lý và chuyển dữ liệu, AWS cung cấp nhiều dịch vụ để di chuyển dữ liệu lên đám mây của AWS. Các dịch vụ này bao gồm:

  • AWS Direct Connect: Cho phép di chuyển GB/s dữ liệu vào đám mây AWS thông qua một mạng riêng tư và an toàn. Việc sử dụng Direct Connect giúp cho việc di chuyển dữ liệu lên đám mây trở nên nhanh chóng và an toàn hơn so với việc sử dụng mạng công cộng.
  • Snowball & Snowmobile: Dịch vụ này cho phép di chuyển PB dữ liệu vào đám mây AWS. AWS sẽ cung cấp cho khách hàng một thiết bị di động (Snowball hoặc Snowmobile) để lưu trữ dữ liệu và sau đó di chuyển thiết bị này đến đám mây AWS. Điều này giúp cho việc di chuyển dữ liệu lớn trở nên nhanh chóng và hiệu quả hơn.
  • AWS DataSync: Dịch vụ này cho phép di chuyển lượng lớn dữ liệu giữa các hệ thống đang chạy trên trang và các dịch vụ lưu trữ đám mây như S3, EFS, FSx cho Windows. DataSync cung cấp một giao diện đơn giản và giúp việc di chuyển dữ liệu trở nên dễ dàng hơn.

Compute and Networking

Compute and Networking là một trong những dịch vụ của AWS, bao gồm nhiều tính năng và công cụ hỗ trợ cho việc tính toán và mạng trong môi trường đám mây. Các tính năng và công cụ này bao gồm:

  • EC2 Instances: đây là các máy ảo được cung cấp bởi AWS để thực hiện các tác vụ tính toán. Các EC2 Instances có thể được tối ưu hóa cho CPU hoặc GPU, giúp tăng tốc độ xử lý các tác vụ tính toán. Ngoài ra, AWS cũng cung cấp các Spot Instances / Spot Fleets cho phép khách hàng giảm chi phí, đồng thời sử dụng Auto Scaling để tự động điều chỉnh số lượng Instances tùy theo nhu cầu sử dụng.
  • EC2 Placement Groups: đây là một tính năng cho phép tạo ra các nhóm máy ảo trong cùng một vùng, nhằm đảm bảo hiệu năng mạng tốt nhất.
  • EC2 Enhanced Networking (SR-IOV): đây là một tính năng giúp tăng băng thông, giảm độ trễ và tăng số lượng gói tin xử lý mỗi giây. Tính năng này bao gồm hai tùy chọn: Elastic Network Adapter (ENA) với tốc độ lên tới 100 Gbps và Intel 82599 VF với tốc độ lên tới 10 Gbps (tùy chọn LEGACY).
  • Elastic Fabric Adapter (EFA): đây là một tính năng cải tiến của ENA, được thiết kế cho các tác vụ tính toán chuyên sâu như HPC (High Performance Computing). EFA chỉ hoạt động trên hệ điều hành Linux và hỗ trợ Message Passing Interface (MPI) để tăng tốc độ truyền tải dữ liệu giữa các máy ảo. Tính năng này còn cho phép bỏ qua hệ điều hành Linux để cung cấp kết nối mạng nhanh và đáng tin cậy với độ trễ thấp.

Ngoài ra, AWS còn cung cấp nhiều dịch vụ khác như Route 53, AWS Global Accelerator, Amazon Virtual Private Cloud (VPC), AWS Direct Connect, Elastic Load Balancing (ELB), AWS PrivateLink… giúp quản lý và tăng cường mạng trong môi trường đám mây.

Storage

AWS cung cấp các dịch vụ lưu trữ khác nhau để đáp ứng nhu cầu lưu trữ của khách hàng với mục đích khác nhau.

– Lưu trữ gắn kết với Instance:

  • EBS (Elastic Block Store): cho phép khách hàng gắn kết và sử dụng các thiết bị lưu trữ được liên kết trực tiếp với các instances EC2, có thể được tối ưu hóa cho các yêu cầu về hiệu suất khác nhau, và có thể mở rộng lên tới 256.000 IOPS với io2 Block Express.
  • Instance Store: Dành cho các khách hàng có yêu cầu về IOPS cao, với khả năng mở rộng đến hàng triệu IOPS, liên kết trực tiếp với instance EC2 và có độ trễ thấp.

– Lưu trữ mạng:

  • Amazon S3 (Simple Storage Service): Dịch vụ lưu trữ đối tượng phân tán, có khả năng lưu trữ và truy xuất các file lớn.
  • Amazon EFS (Elastic File System): Hệ thống file phân tán, có khả năng tăng IOPS dựa trên tổng kích thước hoặc sử dụng IOPS được cung cấp.
  • Amazon FSx for Lustre: Dịch vụ hệ thống file phân tán tối ưu hóa cho HPC, có khả năng cung cấp hàng triệu IOPS, được sao lưu bằng S3.

Automation and Orchestration

Automation and Orchestration là các công cụ được sử dụng để tạo ra các quy trình tự động, giúp tăng tốc độ và hiệu quả trong việc triển khai và quản lý các ứng dụng và hệ thống trên AWS. Các công cụ này cung cấp các tính năng như lập lịch, tự động hóa triển khai, tự động khởi động EC2, quản lý mạng và quản lý tài nguyên.

AWS Batch là một dịch vụ tính toán quy mô, cho phép chạy các tác vụ đa nhiệm phân tán trên các instance EC2, hỗ trợ việc lập lịch cho các tác vụ, tự động khởi tạo các instance EC2 cần thiết, và quản lý các tác vụ đó. AWS Batch giúp tối ưu hóa hiệu suất tính toán và giảm thời gian chạy các công việc lớn.

AWS ParallelCluster là một công cụ quản lý và triển khai một cụm HPC (High Performance Computing) trên AWS, được cung cấp dưới dạng mã nguồn mở. Nó cho phép người dùng tạo và quản lý các cụm HPC trên AWS, thông qua việc cấu hình các file văn bản. AWS ParallelCluster có thể tự động tạo và cấu hình các tài nguyên cần thiết như VPC, subnet, loại cụm và các loại instance khác nhau, giúp tiết kiệm thời gian và nỗ lực của người dùng. Đặc biệt, nó cho phép kích hoạt EFA trên cụm, giúp tăng hiệu suất mạng trong các ứng dụng HPC.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories