การพัฒนาล่าสุดในการเรียนรู้เชิงลึกได้นำไปสู่โมเดลขนาดใหญ่ขึ้นเรื่อยๆ เช่น GPT-3, BLOOM และ OPT ซึ่งบางโมเดลมีพารามิเตอร์เกิน 100 พันล้านพารามิเตอร์แล้ว แม้ว่าโมเดลที่ใหญ่กว่ามักจะมีประสิทธิภาพมากกว่า แต่การฝึกโมเดลดังกล่าวต้องใช้ทรัพยากรการคำนวณจำนวนมาก แม้จะมีการใช้ไลบรารีการฝึกอบรมขั้นสูงแบบกระจาย เช่น FSDP และ DeepSpeed เป็นเรื่องปกติที่งานฝึกอบรมจะต้องใช้อุปกรณ์เร่งความเร็วหลายร้อยเครื่องเป็นเวลาหลายสัปดาห์หรือหลายเดือนต่อครั้ง
ในช่วงปลายปี 2022 AWS ประกาศความพร้อมใช้งานทั่วไปของ อินสแตนซ์ Amazon EC2 Trn1 ขับเคลื่อนด้วย การฝึกอบรม AWS—ตัวเร่งการเรียนรู้ของเครื่อง (ML) ที่สร้างขึ้นตามวัตถุประสงค์ซึ่งได้รับการปรับให้เหมาะสมเพื่อให้มีแพลตฟอร์มที่มีประสิทธิภาพสูง คุ้มค่า และปรับขนาดได้อย่างมากสำหรับการฝึกอบรมโมเดลการเรียนรู้เชิงลึกในระบบคลาวด์ อินสแตนซ์ Trn1 มีให้เลือกหลายขนาด (ดูตารางต่อไปนี้) โดยมีตัวเร่งความเร็ว Trainium สูงสุด 16 ตัวต่ออินสแตนซ์
ขนาดอินสแตนซ์ | ตัวเร่งความเร็ว Trainium | หน่วยความจำตัวเร่งความเร็ว (GB) | vCPU | หน่วยความจำอินสแตนซ์ (GiB) | แบนด์วิธเครือข่าย (Gbps) |
trn1.2xlarge | 1 | 32 | 8 | 32 | ถึง 12.5 |
trn1.32xlarge | 16 | 512 | 128 | 512 | 800 |
trn1n.32xlarge (เร็วๆ นี้) | 16 | 512 | 128 | 512 | 1600 |
อินสแตนซ์ Trn1 สามารถปรับใช้เป็นอินสแตนซ์แบบสแตนด์อโลนสำหรับงานฝึกอบรมขนาดเล็ก หรือในอัลตราคลัสเตอร์ที่ปรับขนาดได้สูงซึ่งสนับสนุนการฝึกอบรมแบบกระจายใน Trainium accelerators นับหมื่น อินสแตนซ์ Trn1 ทั้งหมดรองรับการกำหนดค่าแบบสแตนด์อโลน ในขณะที่ Trn1 ultraclusters ต้องการอินสแตนซ์ trn1.32xlarge หรือ trn1n.32xlarge ในอัลตราคลัสเตอร์ อินสแตนซ์ Trn1 หลายรายการจะอยู่ร่วมกันใน AWS Availability Zone ที่กำหนด และเชื่อมต่อด้วยเครือข่าย Elastic Fabric Adapter (EFA) ความเร็วสูง เวลาแฝงต่ำ ที่ให้แบนด์วิดท์เครือข่ายแบบไม่ปิดกั้น 800 Gbps ต่ออินสแตนซ์สำหรับการประมวลผลแบบรวม . อินสแตนซ์ประเภท trn1n.32xlarge ซึ่งเปิดตัวในช่วงต้นปี 2023 จะเพิ่มแบนด์วิดท์นี้เป็น 1600 Gbps ต่ออินสแตนซ์
ลูกค้าองค์กรจำนวนมากเลือกที่จะปรับใช้ปริมาณงานการเรียนรู้เชิงลึกโดยใช้ Kubernetes ซึ่งเป็นมาตรฐานโดยพฤตินัยสำหรับการจัดเรียงคอนเทนเนอร์ในระบบคลาวด์ ลูกค้า AWS มักจะปรับใช้ปริมาณงานเหล่านี้โดยใช้ บริการ Amazon Elastic Kubernetes (อเมซอน EKS). Amazon EKS เป็นบริการ Kubernetes ที่มีการจัดการซึ่งช่วยลดความยุ่งยากในการสร้าง การกำหนดค่า วงจรชีวิต และการตรวจสอบคลัสเตอร์ Kubernetes ในขณะที่ยังคงให้ความยืดหยุ่นเต็มรูปแบบของ Kubernetes อัปสตรีม
วันนี้เรารู้สึกตื่นเต้นที่จะประกาศการสนับสนุนอย่างเป็นทางการสำหรับงานฝึกอบรมแบบกระจายโดยใช้อินสแตนซ์ Amazon EKS และ EC2 Trn1 ด้วยการประกาศนี้ ตอนนี้คุณสามารถเรียกใช้งานการฝึกอบรมในคอนเทนเนอร์ขนาดใหญ่ภายใน Amazon EKS ได้อย่างง่ายดาย พร้อมรับประโยชน์สูงสุดจากประสิทธิภาพด้านราคา ความสามารถในการปรับขนาด และการใช้งานที่ง่ายดายจากอินสแตนซ์ Trn1
นอกจากการประกาศนี้แล้ว เรายังเผยแพร่บทช่วยสอนโดยละเอียดที่จะแนะนำคุณตลอดขั้นตอนที่จำเป็นในการเรียกใช้งานการฝึกอบรมแบบกระจายหลายอินสแตนซ์ (การฝึกอบรมล่วงหน้าของ BERT ระยะที่ 1) โดยใช้อินสแตนซ์ Amazon EKS และ Trn1 ในโพสต์นี้ คุณจะได้เรียนรู้เกี่ยวกับสถาปัตยกรรมโซลูชันและทบทวนขั้นตอนสำคัญหลายขั้นตอนจากบทช่วยสอน อ้างถึง ที่เก็บการสอนอย่างเป็นทางการ สำหรับเวิร์กโฟลว์แบบ end-to-end ที่สมบูรณ์
เพื่อติดตามความคุ้นเคยอย่างกว้างขวางกับบริการหลักของ AWS เช่น อเมซอน อีลาสติก คอมพิวท์ คลาวด์ (Amazon EC2) และ Amazon EKS เป็นการบอกเป็นนัย และความคุ้นเคยขั้นพื้นฐานเกี่ยวกับการเรียนรู้เชิงลึกและ PyTorch จะเป็นประโยชน์
สถาปัตยกรรมโซลูชัน
ไดอะแกรมต่อไปนี้แสดงสถาปัตยกรรมโซลูชัน
โซลูชันประกอบด้วยส่วนประกอบหลักดังต่อไปนี้:
- EKS คลัสเตอร์
- กลุ่มโหนด EKS ประกอบด้วยอินสแตนซ์ trn1.32xlarge
- พื้นที่ AWS เซลล์ประสาท SDK
- ปลั๊กอิน EKS สำหรับ Neuron และ EFA
- An การลงทะเบียน Amazon Elastic Container (Amazon ECR) พื้นที่เก็บข้อมูล
- ภาพคอนเทนเนอร์การฝึกอบรม
- An Amazon FSx สำหรับความมันวาว ระบบแฟ้ม
- ตัวกำหนดตารางเวลาชุด Volcano และเซิร์ฟเวอร์ etcd
- ตัวเปิดงานสากล TorchX
- โมดูล TorchX DDP สำหรับ Trainium
หัวใจของโซลูชันคือคลัสเตอร์ EKS ที่ให้ฟังก์ชันการจัดการ Kubernetes หลักผ่านจุดสิ้นสุดบริการ EKS ข้อดีอย่างหนึ่งของ Amazon EKS คือบริการนี้ตรวจสอบและปรับขนาด Control Plane ตามภาระงาน ซึ่งรับประกันประสิทธิภาพสูงสำหรับปริมาณงานขนาดใหญ่ เช่น การฝึกอบรมแบบกระจาย ภายในคลัสเตอร์ EKS คือกลุ่มโหนดที่ประกอบด้วยอินสแตนซ์ที่ใช้ Trainium trn1.32xlarge สองรายการขึ้นไปซึ่งอยู่ใน Availability Zone เดียวกัน
Neuron SDK เป็นชุดซอฟต์แวร์ที่จัดเตรียมไดรเวอร์ คอมไพเลอร์ รันไทม์ การรวมเฟรมเวิร์ก (เช่น PyTorch Neuron) และเครื่องมือสำหรับผู้ใช้ที่ให้คุณเข้าถึงประโยชน์ของ Trainium accelerators โปรแกรมควบคุมอุปกรณ์ Neuron ทำงานโดยตรงบนโหนด EKS (อินสแตนซ์ Trn1) และให้การเข้าถึงชิป Trainium จากภายในคอนเทนเนอร์การฝึกอบรมที่เปิดใช้งานบนโหนด ปลั๊กอิน Neuron และ EFA ได้รับการติดตั้งภายในคลัสเตอร์ EKS เพื่อให้สามารถเข้าถึงชิป Trainium และอุปกรณ์เครือข่าย EFA ที่จำเป็นสำหรับการฝึกอบรมแบบกระจาย
ที่เก็บ ECR ใช้เพื่อจัดเก็บอิมเมจคอนเทนเนอร์การฝึกอบรม อิมเมจเหล่านี้ประกอบด้วย Neuron SDK (ไม่รวมไดรเวอร์ Neuron ซึ่งทำงานบนอินสแตนซ์ Trn1 โดยตรง) สคริปต์การฝึก PyTorch และการขึ้นต่อกันที่จำเป็น เมื่อเปิดงานการฝึกอบรมบนคลัสเตอร์ EKS อิมเมจคอนเทนเนอร์จะถูกดึงจาก Amazon ECR ไปยังโหนด EKS ก่อน จากนั้นจึงสร้างอินสแตนซ์คอนเทนเนอร์ของผู้ปฏิบัติงาน PyTorch จากอิมเมจ
พื้นที่จัดเก็บที่ใช้ร่วมกันมีให้โดยใช้ FSx ประสิทธิภาพสูงสำหรับระบบไฟล์ Luster ซึ่งมีอยู่ใน Availability Zone เดียวกันกับอินสแตนซ์ trn1.32xlarge การสร้างและการแนบระบบไฟล์ FSx for Luster กับคลัสเตอร์ EKS นั้นใช้สื่อกลางโดย ไดรเวอร์ Amazon FSx สำหรับ Luster CSI. ในโซลูชันนี้ พื้นที่เก็บข้อมูลที่ใช้ร่วมกันจะถูกใช้เพื่อจัดเก็บชุดข้อมูลการฝึกอบรมและบันทึกหรือสิ่งประดิษฐ์ใดๆ ที่สร้างขึ้นในระหว่างกระบวนการฝึกอบรม
การแก้ปัญหาใช้ ตัวเรียกใช้งานอเนกประสงค์ TorchX เพื่อเริ่มงานฝึกอบรมแบบกระจายภายใน Amazon EKS TorchX มีการพึ่งพาที่สำคัญสองประการ: ตัวกำหนดตารางเวลาชุดงาน Volcano และเซิร์ฟเวอร์ etcd Volcano จัดการการจัดตารางเวลาและการเข้าคิวของงานฝึกอบรม ในขณะที่เซิร์ฟเวอร์ etcd เป็นที่เก็บคีย์-ค่าที่ TorchElastic ใช้สำหรับการซิงโครไนซ์และการค้นหาเพียร์ระหว่างการเริ่มต้นงาน
เมื่อเปิดงานการฝึกอบรมโดยใช้ TorchX คำสั่งเรียกใช้จะใช้โมดูล DDP แบบกระจายของ TorchX ที่จัดเตรียมไว้สำหรับ Trainium เพื่อกำหนดค่างานการฝึกอบรมโดยรวม จากนั้นจึงรันคำสั่ง torchrun ที่เหมาะสมในแต่ละพ็อดผู้ปฏิบัติงาน PyTorch เมื่องานกำลังทำงาน สามารถตรวจสอบได้โดยใช้เครื่องมือ Kubernetes มาตรฐาน (เช่น kubectl) หรือผ่านชุดเครื่องมือ ML มาตรฐาน เช่น TensorBoard
ภาพรวมโซลูชัน
มาดูขั้นตอนสำคัญของวิธีแก้ปัญหานี้กัน ตลอดภาพรวมนี้ เราอ้างถึง เปิดตัวงานการฝึกอบรมเซลล์ประสาท PyTorch แบบหลายโหนดบน Trainium โดยใช้ TorchX และ EKS บทช่วยสอนเกี่ยวกับ GitHub
สร้างคลัสเตอร์ EKS
หากต้องการเริ่มต้นใช้งานการฝึกอบรมแบบกระจายใน Amazon EKS ด้วยอินสแตนซ์ Trn1 คุณต้องสร้างคลัสเตอร์ EKS ตามที่ระบุไว้ใน กวดวิชาเกี่ยวกับ GitHub. การสร้างคลัสเตอร์ทำได้โดยใช้เครื่องมือมาตรฐานเช่น eksctl
และ การก่อตัวของ AWS Cloud.
สร้างกลุ่มโหนด EKS
ต่อไป เราต้องสร้างกลุ่มโหนด EKS ที่มีอินสแตนซ์ trn1.32xlarge สองรายการขึ้นไปในภูมิภาคที่รองรับ ในบทช่วยสอน AWS CloudFormation ใช้เพื่อสร้างเทมเพลตการเปิดใช้ EC2 เฉพาะของ Trainiumซึ่งทำให้มั่นใจได้ว่าอินสแตนซ์ Trn1 เปิดใช้งานด้วย Amazon Machine Image (AMI) ที่เหมาะสมและการกำหนดค่าเครือข่าย EFA ที่ถูกต้องซึ่งจำเป็นต่อการรองรับการฝึกอบรมแบบกระจาย AMI ยังรวมถึงไดรเวอร์อุปกรณ์ Neuron ที่ให้การสนับสนุนชิปตัวเร่งความเร็ว Trainium กับ eksctl
เครื่องมือการจัดการ Amazon EKS คุณสามารถสร้างกลุ่มโหนด Trainium ได้อย่างง่ายดายโดยใช้รายการ YAML พื้นฐานที่อ้างอิงถึงเทมเพลตการเปิดใช้ที่สร้างขึ้นใหม่ ตัวอย่างเช่น:
ในรายการก่อนหน้านี้ มีการกำหนดค่าแอตทริบิวต์หลายรายการเพื่ออนุญาตให้ใช้อินสแตนซ์ Trn1 ในคลัสเตอร์ EKS อันดับแรก, metadata.region
ถูกตั้งค่าเป็นหนึ่งในภูมิภาคที่รองรับอินสแตนซ์ Trn1 (ปัจจุบันคือ us-east-1
และ us-west-2
). ถัดไป สำหรับ AvailabilityZones Amazon EKS กำหนดให้ระบุ Availability Zone สองแห่ง หนึ่งใน Availability Zone เหล่านี้ต้องรองรับการใช้อินสแตนซ์ Trn1 ในขณะที่อีกโซนหนึ่งสามารถเลือกได้โดยการสุ่ม บทช่วยสอนแสดงวิธีการ กำหนดว่า Availability Zone ใดจะอนุญาตสำหรับอินสแตนซ์ Trn1 ภายในบัญชี AWS ของคุณ. ต้องระบุ Availability Zone ที่รองรับ Trn1 เดียวกันโดยใช้ availabiltyZones
แอตทริบิวต์ที่เกี่ยวข้องกับกลุ่มโหนด EKS efaEnabled
ถูกตั้งค่าเป็น true
เพื่อกำหนดค่าโหนดด้วยการกำหนดค่าเครือข่าย EFA ที่เหมาะสมซึ่งจำเป็นสำหรับการฝึกอบรมแบบกระจาย สุดท้ายนี้ การ launchTemplate.id
แอตทริบิวต์ที่เกี่ยวข้องกับกลุ่มโหนดชี้ไปที่เทมเพลตการเปิดใช้ EC2 ที่สร้างผ่าน AWS CloudFormation ในขั้นตอนก่อนหน้า
สมมติว่าคุณใช้เทมเพลต CloudFormation และติดตั้งแล้ว eksctl
เครื่องมือการจัดการ คุณสามารถสร้างกลุ่มโหนด EKS ที่มีความสามารถ Trainium ได้โดยการรันโค้ดต่อไปนี้:
ติดตั้งปลั๊กอิน Kubernetes สำหรับอุปกรณ์ Trainium และ EFA
เมื่อจัดกลุ่มโหนดเรียบร้อยแล้ว ขั้นตอนต่อไปคือการติดตั้งปลั๊กอิน Kubernetes ที่ให้การสนับสนุน Trainium accelerators (ผ่านปลั๊กอิน Neuron) และอุปกรณ์ EFA (ผ่านปลั๊กอิน EFA) ปลั๊กอินเหล่านี้สามารถติดตั้งบนคลัสเตอร์ได้อย่างง่ายดายโดยใช้มาตรฐาน kubectl
เครื่องมือการจัดการตามที่แสดงในบทช่วยสอน
ในการใช้ TorchX universal PyTorch launcher เพื่อเริ่มงานการฝึกอบรมแบบกระจาย จำเป็นต้องมีข้อกำหนดเบื้องต้นสองประการ: ตัวกำหนดตารางเวลาชุด Volcano และเซิร์ฟเวอร์ etcd เช่นเดียวกับปลั๊กอิน Neuron และ EFA เราสามารถใช้ kubectl
เครื่องมือสำหรับติดตั้ง Volcano และเซิร์ฟเวอร์ etcd บนคลัสเตอร์ EKS
แนบที่เก็บข้อมูลที่ใช้ร่วมกันกับคลัสเตอร์ EKS
ในบทแนะนำสอนการใช้งาน FSx for Luster ใช้เพื่อจัดเตรียมระบบไฟล์ที่ใช้ร่วมกันที่มีประสิทธิภาพสูง ซึ่งสามารถเข้าถึงได้โดยพ็อดผู้ปฏิบัติงาน EKS ต่างๆ ที่เก็บข้อมูลที่ใช้ร่วมกันนี้ใช้เพื่อโฮสต์ชุดข้อมูลการฝึกอบรม ตลอดจนสิ่งประดิษฐ์และบันทึกใดๆ ที่สร้างขึ้นในระหว่างกระบวนการฝึกอบรม บทช่วยสอนอธิบายวิธีสร้างและแนบที่เก็บข้อมูลที่ใช้ร่วมกันกับคลัสเตอร์โดยใช้ ไดรเวอร์ Amazon FSx สำหรับ Luster CSI.
สร้างอิมเมจคอนเทนเนอร์การฝึกอบรม
ต่อไป เราต้องสร้างอิมเมจคอนเทนเนอร์การฝึกอบรมที่มีสคริปต์การฝึกอบรม PyTorch พร้อมกับการอ้างอิงใดๆ ตัวอย่าง Dockerfile รวมอยู่ในบทช่วยสอน ซึ่งรวมสคริปต์การฝึกล่วงหน้าของ BERT เข้ากับการขึ้นต่อกันของซอฟต์แวร์ Dockerfile ใช้เพื่อสร้างอิมเมจคอนเทนเนอร์การฝึกอบรม จากนั้นอิมเมจจะถูกส่งไปยังที่เก็บ ECR ซึ่งผู้ปฏิบัติงาน PyTorch สามารถดึงอิมเมจได้เมื่อเปิดงานการฝึกอบรมบนคลัสเตอร์
ตั้งค่าข้อมูลการฝึกอบรม
ก่อนเริ่มงานการฝึกอบรม ข้อมูลการฝึกอบรมจะถูกคัดลอกไปยังไดรฟ์ข้อมูลพื้นที่จัดเก็บที่ใช้ร่วมกันบน FSx for Lustre ก่อน บทช่วยสอนแสดงวิธีสร้างพ็อด Kubernetes ชั่วคราวที่มีสิทธิ์เข้าถึงไดรฟ์ข้อมูลพื้นที่เก็บข้อมูลที่ใช้ร่วมกัน และแสดงวิธีลงชื่อเข้าใช้พ็อดเพื่อดาวน์โหลดและแตกชุดข้อมูลการฝึกโดยใช้คำสั่งเชลล์มาตรฐานของ Linux
ด้วยโครงสร้างพื้นฐานและข้อกำหนดเบื้องต้นของซอฟต์แวร์ต่างๆ ที่มีอยู่ ตอนนี้เราสามารถมุ่งเน้นที่แง่มุมของ Trainium ของโซลูชันได้แล้ว
คอมไพล์โมเดลของคุณล่วงหน้า
Neuron SDK รองรับ PyTorch ผ่านชั้นการรวมที่เรียกว่า PyTorch เซลล์ประสาท. โดยค่าเริ่มต้น PyTorch Neuron จะทำงานด้วยการคอมไพล์แบบทันเวลา โดยที่กราฟการคำนวณเครือข่ายประสาทต่างๆ สำหรับรุ่นใหญ่ก็ใช้งานได้สะดวกกว่าที่ให้มา neuron_parallel_compile
เครื่องมือในการคอมไพล์ล่วงหน้าและแคชกราฟการคำนวณต่างๆ ล่วงหน้าเพื่อหลีกเลี่ยงการรวบรวมกราฟในเวลาฝึก ก่อนเริ่มงานการฝึกอบรมในคลัสเตอร์ EKS บทช่วยสอนจะแสดงวิธีเริ่มงานการคอมไพล์ล่วงหน้าก่อนผ่าน TorchX โดยใช้ neuron_parallel_compile
เครื่องมือ. เมื่อเสร็จสิ้นงานก่อนการคอมไพล์แล้ว คอมไพเลอร์ Neuron จะระบุและรวบรวมกราฟการประมวลผลโครงข่ายประสาทเทียมทั้งหมด และแคชไว้ในไดรฟ์ข้อมูลพื้นที่เก็บข้อมูลที่ใช้ร่วมกันเพื่อใช้ในภายหลังในระหว่างงานก่อนการฝึกอบรม BERT
เริ่มงานการฝึกอบรมแบบกระจาย
เมื่อคอมไพล์ล่วงหน้าเสร็จสมบูรณ์แล้ว TorchX จะถูกใช้เพื่อเริ่มงานการฝึกอบรมแบบกระจายพนักงาน 64 คนในอินสแตนซ์ trn1.32xlarge สองอินสแตนซ์ โดยมีคนงาน 32 คนต่ออินสแตนซ์ เราใช้ผู้ปฏิบัติงาน 32 คนต่ออินสแตนซ์เนื่องจากแต่ละอินสแตนซ์ trn1.32xlarge มีตัวเร่งความเร็ว Trainium 16 ตัว โดยที่ตัวเร่งความเร็วแต่ละตัวมี 2 ตัว แกนประสาท. สามารถเข้าถึง NeuronCore แต่ละอันได้โดยไม่ซ้ำกัน อุปกรณ์ PyTorch XLA ในสคริปต์การฝึกอบรม ตัวอย่างคำสั่งเรียกใช้ TorchX จากบทช่วยสอนมีลักษณะดังนี้:
อาร์กิวเมนต์บรรทัดคำสั่งต่างๆ ในคำสั่ง TorchX ก่อนหน้ามีคำอธิบายโดยละเอียดในบทช่วยสอน อย่างไรก็ตาม อาร์กิวเมนต์ต่อไปนี้มีความสำคัญที่สุดในการกำหนดค่างานการฝึกอบรม:
- -cfg คิว = ทดสอบ – ระบุคิว Volcano ที่จะใช้สำหรับงานฝึกอบรม
- -cfg image_repo – ระบุที่เก็บ ECR ที่จะใช้สำหรับอิมเมจคอนเทนเนอร์ TorchX
- –script_args – ระบุอาร์กิวเมนต์ที่ควรส่งไปยังสคริปต์การฝึก PyTorch
- –nnodes และ –nproc_per_node – จำนวนอินสแตนซ์และผู้ปฏิบัติงานต่ออินสแตนซ์ที่จะใช้สำหรับงานฝึกอบรม
- - สคริปต์ – ชื่อของสคริปต์การฝึกอบรม PyTorch เพื่อเปิดใช้งานภายในคอนเทนเนอร์การฝึกอบรม
- -ภาพ – เส้นทางไปยังอิมเมจคอนเทนเนอร์การฝึกอบรมใน Amazon ECR
- –bf16 – เปิดใช้งานประเภทข้อมูล BF16 หรือไม่
ตรวจสอบงานฝึกอบรม
หลังจากเริ่มงานฝึกอบรมแล้ว มีหลายวิธีในการตรวจสอบงาน บทช่วยสอนแสดงวิธีตรวจสอบเมตริกสคริปต์การฝึกพื้นฐานบนบรรทัดคำสั่งโดยใช้ kubectl
วิธีตรวจสอบความคืบหน้าของสคริปต์การฝึกอบรมด้วยสายตาใน TensorBoard (ดูภาพหน้าจอต่อไปนี้) และวิธีตรวจสอบการใช้งานตัวเร่งความเร็ว Trainium โดยใช้ neuron-top
เครื่องมือจาก Neuron SDK
ทำความสะอาดหรือนำสิ่งแวดล้อมกลับมาใช้ใหม่
เมื่องานฝึกอบรมเสร็จสิ้น คลัสเตอร์จะสามารถนำมาใช้ซ้ำหรือกำหนดค่าใหม่สำหรับงานฝึกอบรมเพิ่มเติมได้ ตัวอย่างเช่น กลุ่มโหนด EKS สามารถปรับขนาดได้อย่างรวดเร็วโดยใช้ eksctl
เพื่อรองรับงานฝึกอบรมที่ต้องการอินสแตนซ์ Trn1 เพิ่มเติม ในทำนองเดียวกัน คำสั่งเรียกใช้ Dockerfile และ TorchX ที่ให้มาสามารถแก้ไขได้อย่างง่ายดายเพื่อรองรับโมเดลการเรียนรู้เชิงลึกเพิ่มเติมและการกระจายโทโพโลยีการฝึกอบรม
หากไม่จำเป็นต้องใช้คลัสเตอร์อีกต่อไป บทช่วยสอนจะรวมขั้นตอนทั้งหมดที่จำเป็นในการลบโครงสร้างพื้นฐาน EKS และทรัพยากรที่เกี่ยวข้อง
สรุป
ในโพสต์นี้ เราสำรวจว่าอินสแตนซ์ Trn1 และ Amazon EKS มอบแพลตฟอร์มที่มีการจัดการสำหรับการฝึกอบรมโมเดลการเรียนรู้เชิงลึกที่มีประสิทธิภาพสูง คุ้มค่า และปรับขนาดได้อย่างมากได้อย่างไร นอกจากนี้ เรายังแชร์บทช่วยสอนที่ครอบคลุมซึ่งแสดงวิธีเรียกใช้งานการฝึกอบรมแบบกระจายหลายอินสแตนซ์ในโลกแห่งความเป็นจริงใน Amazon EKS โดยใช้อินสแตนซ์ Trn1 และเน้นขั้นตอนสำคัญและส่วนประกอบต่างๆ ในโซลูชัน เนื้อหาบทช่วยสอนนี้สามารถปรับให้เข้ากับโมเดลและปริมาณงานอื่นๆ ได้อย่างง่ายดาย และมอบโซลูชันพื้นฐานสำหรับการฝึกอบรมแบบกระจายของโมเดลการเรียนรู้เชิงลึกใน AWS
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีเริ่มต้นใช้งานอินสแตนซ์ Trn1 ที่ขับเคลื่อนโดย Trainium โปรดดูที่ เอกสารเกี่ยวกับเซลล์ประสาท.
เกี่ยวกับผู้เขียน
สกอตต์ เพอร์รี่ เป็น Solutions Architect ในทีม Annapurna ML accelerator ที่ AWS เขาอยู่ในแคนาดา ช่วยลูกค้าปรับใช้และเพิ่มประสิทธิภาพการฝึกอบรมการเรียนรู้เชิงลึกและปริมาณงานการอนุมานโดยใช้ AWS Inferentia และ AWS Trainium ความสนใจของเขารวมถึงโมเดลภาษาขนาดใหญ่ การเรียนรู้เสริมเชิงลึก IoT และจีโนมิกส์
โลเรอา อาร์ริซาบาลากา เป็นสถาปนิกโซลูชันที่สอดคล้องกับภาครัฐของสหราชอาณาจักร ซึ่งเธอช่วยลูกค้าออกแบบโซลูชัน ML ด้วย Amazon SageMaker เธอยังเป็นส่วนหนึ่งของชุมชนด้านเทคนิคที่อุทิศตนเพื่อการเร่งความเร็วฮาร์ดแวร์ และช่วยในการทดสอบและการเปรียบเทียบปริมาณงาน AWS Inferentia และ AWS Trainium
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- เพลโตบล็อคเชน Web3 Metaverse ข่าวกรอง ขยายความรู้. เข้าถึงได้ที่นี่.
- ที่มา: https://aws.amazon.com/blogs/machine-learning/scaling-distributed-training-with-aws-trainium-and-amazon-eks/
- 1
- 100
- 11
- 2022
- 2023
- 7
- a
- สามารถ
- เกี่ยวกับเรา
- คันเร่ง
- เร่ง
- เข้า
- Accessed
- ประสบความสำเร็จ
- ข้าม
- อย่างกระตือรือร้น
- เพิ่มเติม
- ความก้าวหน้า
- สูง
- ความได้เปรียบ
- ชิด
- ทั้งหมด
- แล้ว
- แม้ว่า
- อเมซอน
- Amazon EC2
- อเมซอน SageMaker
- และ
- ประกาศ
- ประกาศ
- การประกาศ
- ประยุกต์
- เหมาะสม
- สถาปัตยกรรม
- ข้อโต้แย้ง
- ด้าน
- ที่เกี่ยวข้อง
- แนบ
- แอตทริบิวต์
- ความพร้อมใช้งาน
- ใช้ได้
- AWS
- การก่อตัวของ AWS Cloud
- การอนุมาน AWS
- แบนด์วิดธ์
- ตาม
- ขั้นพื้นฐาน
- เพราะ
- ก่อน
- การเปรียบเทียบ
- ประโยชน์ที่ได้รับ
- พันล้าน
- บานสะพรั่ง
- กว้าง
- สร้าง
- แคช
- ที่เรียกว่า
- แคนาดา
- ชิป
- Choose
- เลือก
- เมฆ
- Cluster
- รหัส
- โดยรวม
- มา
- เร็ว ๆ นี้
- ร่วมกัน
- ชุมชน
- สมบูรณ์
- เสร็จสิ้น
- ส่วนประกอบ
- ครอบคลุม
- คำนวณ
- องค์ประกอบ
- งานที่เชื่อมต่อ
- ประกอบด้วย
- ภาชนะ
- ภาชนะบรรจุ
- มี
- เนื้อหา
- ควบคุม
- สะดวกสบาย
- แกน
- ค่าใช้จ่ายที่มีประสิทธิภาพ
- สร้าง
- ที่สร้างขึ้น
- การสร้าง
- การสร้าง
- CSI
- ขณะนี้
- ลูกค้า
- ข้อมูล
- DDP
- ทุ่มเท
- ลึก
- การเรียนรู้ลึก ๆ
- ค่าเริ่มต้น
- ปรับใช้
- นำไปใช้
- อธิบาย
- ออกแบบ
- รายละเอียด
- รายละเอียด
- การพัฒนา
- เครื่อง
- อุปกรณ์
- โดยตรง
- การค้นพบ
- กระจาย
- กระจายการฝึกอบรม
- จำหน่าย
- ดาวน์โหลด
- คนขับรถ
- ในระหว่าง
- แต่ละ
- ก่อน
- ก่อน
- สะดวกในการใช้
- อย่างง่ายดาย
- ทั้ง
- ทำให้สามารถ
- จบสิ้น
- ปลายทาง
- เพื่อให้แน่ใจ
- Enterprise
- แม้
- ตัวอย่าง
- ตื่นเต้น
- ไม่รวม
- ที่มีอยู่
- สำรวจ
- สารสกัด
- ผ้า
- ความคุ้นเคย
- สนาม
- เนื้อไม่มีมัน
- ชื่อจริง
- ความยืดหยุ่น
- โฟกัส
- ปฏิบัติตาม
- ดังต่อไปนี้
- กรอบ
- ราคาเริ่มต้นที่
- เต็ม
- ฟังก์ชั่น
- General
- ฟังก์ชั่น
- ได้รับ
- GitHub
- กำหนด
- กราฟ
- กราฟ
- บัญชีกลุ่ม
- คู่มือ
- จัดการ
- ฮาร์ดแวร์
- หัวใจสำคัญ
- เป็นประโยชน์
- จะช่วยให้
- จุดสูง
- ประสิทธิภาพสูง
- ไฮไลต์
- อย่างสูง
- เจ้าภาพ
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- อย่างไรก็ตาม
- HTML
- HTTPS
- ร้อย
- ID
- ระบุ
- ภาพ
- ภาพ
- โดยนัย
- สำคัญ
- in
- ประกอบด้วย
- รวม
- รวมถึง
- เพิ่ม
- ขึ้น
- โครงสร้างพื้นฐาน
- ติดตั้ง
- การติดตั้ง
- ตัวอย่าง
- บูรณาการ
- ผลประโยชน์
- IOT
- IT
- การสัมภาษณ์
- งาน
- คีย์
- ชนิด
- ภาษา
- ใหญ่
- ขนาดใหญ่
- ที่มีขนาดใหญ่
- ปลาย
- เปิดตัว
- เปิดตัว
- การเปิดตัว
- ชั้น
- เรียนรู้
- การเรียนรู้
- นำ
- ห้องสมุด
- Line
- ลินุกซ์
- โหลด
- อีกต่อไป
- ดู
- LOOKS
- เครื่อง
- เรียนรู้เครื่อง
- หลัก
- การจัดการ
- การจัดการ
- อย่างมากมาย
- หน่วยความจำ
- เมตาดาต้า
- ตัวชี้วัด
- ML
- โมเดล
- การแก้ไข
- โมดูล
- การตรวจสอบ
- การตรวจสอบ
- การตรวจสอบ
- จอภาพ
- เดือน
- ข้อมูลเพิ่มเติม
- มากที่สุด
- หลาย
- ชื่อ
- จำเป็นต้อง
- เครือข่าย
- เครือข่าย
- เครือข่ายประสาท
- ถัดไป
- ปม
- โหนด
- จำนวน
- เสนอ
- การเสนอ
- เป็นทางการ
- ONE
- ดำเนินการ
- การดำเนินการ
- เพิ่มประสิทธิภาพ
- การปรับให้เหมาะสม
- ประสาน
- ใบสั่ง
- อื่นๆ
- ที่ระบุไว้
- โครงร่าง
- ทั้งหมด
- ภาพรวม
- พารามิเตอร์
- ส่วนหนึ่ง
- ผ่าน
- เส้นทาง
- ลูกแพร์
- การปฏิบัติ
- ระยะ
- สถานที่
- เวที
- เพลโต
- เพลโตดาต้าอินเทลลิเจนซ์
- เพลโตดาต้า
- เสียบเข้าไป
- ปลั๊กอิน
- จุด
- โพสต์
- ขับเคลื่อน
- ที่มีประสิทธิภาพ
- ข้อกำหนดเบื้องต้น
- กระบวนการ
- ความคืบหน้า
- ให้
- ให้
- ให้
- การให้
- สาธารณะ
- การประกาศ
- ผลักดัน
- ไฟฉาย
- อย่างรวดเร็ว
- สุ่ม
- โลกแห่งความจริง
- การอ้างอิง
- ภูมิภาค
- ภูมิภาค
- ที่เกี่ยวข้อง
- เอาออก
- กรุ
- ต้องการ
- จำเป็นต้องใช้
- ต้อง
- แหล่งข้อมูล
- ทบทวน
- วิ่ง
- วิ่ง
- sagemaker
- เดียวกัน
- scalability
- ที่ปรับขนาดได้
- ตาชั่ง
- ปรับ
- SDK
- ภาค
- บริการ
- บริการ
- ชุด
- หลาย
- ที่ใช้ร่วมกัน
- เปลือก
- น่า
- แสดง
- แสดงให้เห็นว่า
- สำคัญ
- เหมือนกับ
- ขนาด
- มีขนาดเล็กกว่า
- So
- ซอฟต์แวร์
- ทางออก
- โซลูชัน
- บาง
- ที่ระบุไว้
- กอง
- สแตนด์อโลน
- มาตรฐาน
- ข้อความที่เริ่ม
- การเริ่มต้น
- ขั้นตอน
- ขั้นตอน
- ยังคง
- การเก็บรักษา
- จัดเก็บ
- อย่างเช่น
- สนับสนุน
- ที่สนับสนุน
- รองรับ
- การประสาน
- ระบบ
- ตาราง
- การ
- ทีม
- วิชาการ
- เทมเพลต
- ชั่วคราว
- การทดสอบ
- พื้นที่
- สหราชอาณาจักร
- ของพวกเขา
- พัน
- ตลอด
- ตลอด
- เวลา
- ไปยัง
- เครื่องมือ
- เครื่องมือ
- การฝึกอบรม
- จริง
- เกี่ยวกับการสอน
- Uk
- เป็นเอกลักษณ์
- สากล
- ใช้
- ผู้ใช้งาน
- ต่างๆ
- รุ่น
- ผ่านทาง
- ปริมาณ
- วิธี
- สัปดาห์ที่ผ่านมา
- ว่า
- ที่
- ในขณะที่
- จะ
- ภายใน
- ผู้ปฏิบัติงาน
- แรงงาน
- จะ
- มันแกว
- คุณ
- ของคุณ
- ลมทะเล
- โซน