პროგრამისტმა შექმნა მანქანური ენა, რომელიც იძლევა გრაფიკული პროცეროსის სხვადასხვა სახის გამოთვლისათვის ეფექტურად გამოყენების საშუალებას. ეს აღმოჩენა ფართო შესაძლებლობებს ქმნის – მაგალითად, „მაგიდის" სუპერ-კომპიუტერის შექმნა.
გრაფიკული პროცესორი, GPU, ჩვენს პერსონალურ კომპიუტერში ერთადერთ ფუნქციას ასრულებს – ამუშავებს გრაფიკას. თუმცა, შეიძლება ამ პაწაწინა ჩიპის გაცილებით უფრო ფართოდ გამოყენებაც; მაგალითად, კომპანია Google გრაფიკულ პროცესორს ადამიანის თავის ტვინის მოდელირებისათვის იყენებს; გარდა ამისა, სწორედ მისი საშუალებით ხდება Twitter-ის შეტყობინებათა ანალიზი.
გრაფიკული პროცესორი გაცილებით ეფექტურია ჩვეულებრივზე მონაცემთა დიდი მასივის დამუშავებისას, თუმცა აქამდე მის ფართო გამოყენებას აბრკოლებდა შესაბამისი პროგრამული უზრუნველყოფის შემუშავების სირთულე.
GPU განსაკუთრებით ეფექტურია პარალელური დამუშავებისას, როცა ერთდროულად სრულდება ათასობით ამოცანა. GPU-გან განსხვავებით, კომპიუტერის ცენტრალური პროცესორი ამუშავებს გამოთვლის მხოლოდ ერთ მიმდევრობას (ერთ ნაკადს), მაგრამ ამას ძალიან სწრაფად აკეთებს; GPU პროცესორით თითოეული ცალკეული გამოთვლა ბევრად უფრო ნელა ხდება. ამიტომ GPU-ის პარალელური გამოთვლის პოტენციალის სრულად გამოსაყენებლად საჭიროა სპეციალური პროგრამული უზრუნველყოფის შექმნა, რათა მრავალი პარალელური ნაკადის ნელი ტემპით დამუშავება ხელსაყრელი იყოს.
სწორედ აქ დგება მთავარი პრობლემა: GPU პროცესორის შემთხვევაში გამოთვლის პროგრამის დაწერა მოითხოვს პროგრამისტისაგან დაბალი დონის უამრავი შრომატევადი ოპერაციის შესრულებას.
საბედნიეროდ, ინფორმატიკის სპეციალისტმა, ერიკ ჰოლკმა (Eric Holk) ინდიანას უნივერსიტეტიდან შექმნა პროგრამირების ახალი ენა, რომელიც იძლევა GPU-თვის მაღალი ეფექტურობის პროგრამის სწრაფად დაწერის საშუალებას.
პროგრამირების ახალ ენას „Harlan" ჰქვია. დაბალი დონის შრომატევადი ოპერაციებს ეს ახალი ენა „საკუთარ თავზე იღებს", რაც იძლევა GPU პროცეროსისათვის ეფექტური პროგრამული უზრუნველყოფის სწრაფად დაწერის საშუალებას. ერიკ ჰოლკი ხაზგასმით აღნიშნავს, რომ გრაფიკულ პროცესორს გაცილებით დიდი გამტარუნარიანობა აქვთ, ვიდრე ცენტრალურ პროცესორს. სწორედ ამის წყალობით GPU უკეთესად მუშაობს შედარებით მარტივი გამოთვლისას, რომელშიც ჩართულია მონაცემთა უზარმაზარი მასივი. მსგავსი გამოთვლა, ჩვეულებრივ, სუპერ-კომპიუტერზე სრულდება, სადაც მიმდინარეობს მოდელირება ურთულესი სისტემებისა, რომლებიც შედგება უამრავი შედარებით მარტივი პროცესისაგან. ჰოლკი ამტკიცებს, რომ საბოლოო ჯამში მოხდება CPU-სა და GPU-ის შერწყმა ერთ უნივერსალურ, მაღალი წარმადობის პროცესორად. მაგრამ მანამდე ორივე ტიპის მოწყობილობა გვჭირდება. ამასთანავე, GPU-ს დიდი არარეალიზირებული პოტენციალი აქვს.
Harlan-ის სინტაქსი ეფუძნება პროგრამირების ენის, Lisp-ის, „დიალექტს" – Scheme, რომელიც 1958 წელს შექმნა ხელოვნური ინტელექტის პრობლემების მკვლევარმა, ჯონ მაკარტიმ. გარდა ამისა, ერიკ ჰოლკმა შეიმუშავა GPU პროცესორისათვის პროგრამირების უფრო ჩვეული ენის ვარიანტიც, რომელიც ეფუძნება ენას Rust. ეს ენა Mozilla-ის პროგრამისტებმა სპეციალურად დაბალი დონის სისტემებისათვის შეიმუშავეს. Harlan გაცილებით უფრო მძლავრი ინსტრუმენტია და შეუძლია უფრო ეფექტური და რთული კოდის გენერირება, ხოლო Rust კი უფრო პრაქტიკული და მოსახერხებელია.
Комментариев нет:
Отправить комментарий