Gaudi2 არის Habana Labs-ის მიერ შექმნილი ხელოვნური ინტელექტის (AI) აპარატურული ამაჩქარებლის მეორე თაობა. ერთ სერვერში განთავსებულია 8 ამაჩქარებელი მოწყობილობა, თითოეული 96 GB მეხსიერებით (პირველი თაობის Gaudi-ზე იყო 32 GB, ხოლო A100 80GB-ზე – 80 GB). Habana SDK, SynapseAI, საერთოა როგორც პირველი თაობის Gaudi-სთვის, ასევე Gaudi2-ისთვის. ეს ნიშნავს, რომ 🤗 Optimum Habana, რომელიც გვთავაზობს მომხმარებლისთვის ძალიან მოსახერხებელ ინტერფეისს 🤗 Transformers-ისა და 🤗 Diffusers-ის ბიბლიოთეკებსა და SynapseAI-ს შორის, Gaudi2-ზე ზუსტად ისევე მუშაობს, როგორც პირველი თაობის Gaudi-ზე! ამიტომ, თუ უკვე გაქვთ პირველი თაობის Gaudi-სთვის მზა ტრენინგის ან ინფერენციის სამუშაო პროცესები, გირჩევთ, გამოსცადოთ ისინი Gaudi2-ზე, რადგან ისინი იმუშავებენ ყოველგვარი ცვლილების გარეშე. Intel-მა და Habana-მ Gaudi2 ხელმისაწვდომი გახადეს მარტივი და ეკონომიური გზით – Intel Developer Cloud-ის საშუალებით. Gaudi2-ის გამოსაყენებლად უნდა მიჰყვეთ შემდეგ ნაბიჯებს: გადადით Intel Developer Cloud-ის საწყის გვერდზე და შეხვიდეთ თქვენს ანგარიშზე, ან დარეგისტრირდით, თუ არ გაქვთ. გადადით Intel Developer Cloud-ის მართვის კონსოლში. აირჩიეთ Habana Gaudi2 Deep Learning Server, რომელიც მოიცავს რვა Gaudi2 HL-225H მეზანინის ბარათს და Intel® Xeon® პროცესორების უახლეს ვერსიებს, შემდეგ დააჭირეთ „Launch Instance“-ს ქვედა მარჯვენა კუთხეში (როგორც ნაჩვენებია ქვემოთ). შემდეგ შეგიძლიათ მოითხოვოთ ინსტანცია: თქვენი მოთხოვნის ვალიდაციის შემდეგ, ხელახლა შეასრულეთ მე-3 ნაბიჯი და დააჭირეთ „Add OpenSSH Publickey“-ს გადახდის მეთოდის (საკრედიტო ბარათი ან სარეკლამო კოდი) და SSH საჯარო გასაღების დასამატებლად, რომლის გენერირებაც შეგიძლიათ ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa ბრძანებით. გადახდის მეთოდის ან SSH საჯარო გასაღების ყოველი დამატებისას, შესაძლოა გადამისამართდეთ მე-3 ნაბიჯზე. ხელახლა შეასრულეთ მე-3 ნაბიჯი და შემდეგ დააჭირეთ „Launch Instance“-ს. ინსტანციის რეალურად გასაშვებად მოგიწევთ შემოთავაზებული ზოგადი პირობების მიღება. გადადით Intel Developer Cloud-ის მართვის კონსოლში და დააჭირეთ „View Instances“ ჩანართს. შეგიძლიათ დააკოპიროთ SSH ბრძანება თქვენს Gaudi2 ინსტანციაზე დისტანციური წვდომისთვის! თუ ინსტანციას დახურავთ და Gaudi2-ის ხელახლა გამოყენება მოგინდებათ, მთელი პროცესის ხელახლა გავლა მოგიწევთ. ამ პროცესის შესახებ მეტი ინფორმაციის ნახვა შეგიძლიათ აქ. ჩატარდა რამდენიმე ბენჩმარკი, რათა შეფასებულიყო პირველი თაობის Gaudi-ს, Gaudi2-ის და A100 80GB-ის შესაძლებლობები როგორც ტრენინგის, ასევე ინფერენციისთვის, სხვადასხვა ზომის მოდელებზე. რამდენიმე თვის წინ, ფილიპ შმიდმა, Hugging Face-ის ტექნიკურმა ხელმძღვანელმა, წარმოადგინა, თუ როგორ ხდება BERT-ის წინასწარი ტრენინგი Gaudi-ზე 🤗 Optimum Habana-ს გამოყენებით. შესრულდა 65 000 ტრენინგის ნაბიჯი 32 ნიმუშის პაკეტის ზომით თითო მოწყობილობაზე (ანუ სულ 8*32=256) საერთო ტრენინგის დროით 8 საათი და 53 წუთი (ამ გაშვების TensorBoard-ის ჟურნალების ნახვა შეგიძლიათ აქ). ჩვენ იგივე სკრიპტი იგივე ჰიპერპარამეტრებით გავუშვით Gaudi2-ზე და მივიღეთ საერთო ტრენინგის დრო 2 საათი და 55 წუთი (იხილეთ ჟურნალები აქ). ეს Gaudi2-ზე 3.04-ჯერ აჩქარებას ნიშნავს ყოველგვარი ცვლილების გარეშე. იმის გამო, რომ Gaudi2-ს თითოეულ მოწყობილობაზე დაახლოებით 3-ჯერ მეტი მეხსიერება აქვს პირველი თაობის Gaudi-სთან შედარებით, შესაძლებელია ამ გაზრდილი მოცულობის გამოყენება უფრო დიდი პაკეტების მისაღებად. ეს HPU-ებს მეტ სამუშაოს მისცემს და დეველოპერებს საშუალებას მისცემს, სცადონ ჰიპერპარამეტრების ისეთი მნიშვნელობები, რომლებიც მიუწვდომელი იყო პირველი თაობის Gaudi-ზე. 64 ნიმუშის პაკეტის ზომით თითო მოწყობილობაზე (სულ 512), ჩვენ მივიღეთ მსგავსი დანაკარგის კონვერგენცია 20 000 ნაბიჯით, როგორც წინა გაშვებების 65 000 ნაბიჯის შემთხვევაში. ეს ნიშნავს ტრენინგის საერთო დროს 1 საათი და 33 წუთი (იხილეთ ჟურნალები აქ). ამ კონფიგურაციით გამტარობა 1.16-ჯერ მეტია, ხოლო პაკეტის ეს ახალი ზომა მნიშვნელოვნად აჩქარებს კონვერგენციას. საერთო ჯამში, Gaudi2-ის გამოყენებით, ტრენინგის საერთო დრო მცირდება 5.75-ჯერ, ხოლო გამტარობა 3.53-ჯერ მეტია პირველი თაობის Gaudi-სთან შედარებით. Gaudi2 ასევე გვთავაზობს აჩქარებას A100-თან შედარებით: 1580.2 ნიმუში/წმ 981.6-ის წინააღმდეგ 32 პაკეტის ზომით და 1835.8 ნიმუში/წმ 1082.6-ის წინააღმდეგ 64 პაკეტის ზომით, რაც შეესაბამება Habana-ს მიერ გამოცხადებულ 1.8-ჯერ აჩქარებას BERT-ის წინასწარი ტრენინგის 1-ელ ფაზაში 64 პაკეტის ზომით. ქვემოთ მოცემული ცხრილი აჩვენებს გამტარობას, რომელიც მივიღეთ პირველი თაობის Gaudi-ს, Gaudi2-ის და Nvidia A100 80GB GPU-ებისთვის: BS არის პაკეტის ზომა მოწყობილობაზე. Gaudi-ის გაშვებები შესრულდა შერეული სიზუსტით (bf16/fp32), ხოლო A100-ის გაშვებები fp16-ით. ყველა გაშვება იყო განაწილებული 8 მოწყობილობაზე. 🤗 Optimum Habana-ს 1.3 ვერსიის ერთ-ერთი მთავარი ახალი ფუნქციაა Stable Diffusion-ის მხარდაჭერა. ახლა Gaudi-ზე ძალიან მარტივია სურათების ტექსტიდან გენერირება. GPU-ებზე 🤗 Diffusers-ისგან განსხვავებით, სურათები გენერირდება პაკეტების მიხედვით. მოდელის კომპილაციის დროის გამო, პირველი ორი პაკეტი უფრო ნელი იქნება, ვიდრე მომდევნო იტერაციები. ამ ბენჩმარკში, ეს პირველი ორი იტერაცია უგულებელყოფილი იქნა პირველი თაობის Gaudi-სა და Gaudi2-ისთვის გამტარობის გამოსათვლელად. ეს სკრიპტი გაშვებული იქნა 8 ნიმუშის პაკეტის ზომით. ის იყენებს Habana/stable-diffusion Gaudi კონფიგურაციას. მიღებული შედეგები, რომლებიც შეესაბამება Habana-ს მიერ აქ გამოქვეყნებულ მონაცემებს, ნაჩვენებია ქვემოთ მოცემულ ცხრილში. Gaudi2 აჩვენებს დაყოვნებებს, რომლებიც 3.51-ჯერ უფრო სწრაფია, ვიდრე პირველი თაობის Gaudi (3.25 წმ 0.925 წმ-ის წინააღმდეგ) და 2.84-ჯერ უფრო სწრაფი, ვიდრე Nvidia A100 (2.63 წმ 0.925 წმ-ის წინააღმდეგ). მას ასევე შეუძლია უფრო დიდი პაკეტების ზომების მხარდაჭერა. განახლება: ზემოთ მოცემული მონაცემები განახლდა SynapseAI 1.10-ისა და Optimum Hab-ის მიხედვით.