Root NationНовиниIT новиниMIT разработва нов език за програмиране за високопроизводителни компютри

MIT разработва нов език за програмиране за високопроизводителни компютри

-

Необходими са високопроизводителни изчисления за решаване на все повече и повече задачи – като обработка на изображения или различни приложения за дълбоко обучение на невронни мрежи – където трябва да обработвате огромни количества данни и да го правите достатъчно бързо, в противен случай може да отнеме невероятно количество време. Широко разпространено е мнението, че при извършването на подобни операции компромисът между скорост и надеждност е неизбежен. Според това мислене, ако скоростта е приоритет, тогава надеждността вероятно ще пострада и обратното.

Въпреки това група изследователи, базирани предимно в Масачузетския технологичен институт (MIT), оспорват тази идея, като твърдят, че всъщност можете да имате всичко. Според Аманда Лиу, студентка втора година в Лабораторията по компютърни науки и изкуствен интелект (CSAIL) на Масачузетския технологичен институт, с нов език за програмиране, който са написали специално за високопроизводителни изчисления, „бързината и коректността не трябва да се конкурират. Напротив, те могат да вървят заедно, рамо до рамо, в програмите, които пишем." Лиу и нейният екип говориха за потенциала на техния новосъздаден тензорен език (ATL) миналия месец на конференцията Principles of Programming Languages ​​във Филаделфия.

"Всичко в нашия език", казва Лиу, "е насочено към получаването на едно число или тензор." Тензорите от своя страна са обобщение на вектори и матрици. Докато векторите са едномерни обекти (често представени от отделни стрелки), а матриците са познати двумерни масиви от числа, тензорите са n-мерни масиви, които могат да приемат формата на масив 3×3×3, например, или дори по-високо (или ниско) измерение.

MIT разработва нов език за програмиране за високопроизводителни компютри

Същността на компютърен алгоритъм или програма е да инициира определено изчисление. Но може да има много различни начини да се напише тази програма - "изненадващо разнообразие от различни реализации на код", както Liu и нейните съавтори пишат в своята статия - някои от които са значително по-бързи от други. Основната обосновка зад ATL, обяснява тя, е следната: „Като се има предвид, че високопроизводителните изчисления са толкова ресурсоемки, вие искате да можете да модифицирате или пренаписвате програми в оптимална форма, за да ускорите нещата. Често започвате с програмата, която е най-лесна за писане, но това може да не е най-бързият начин да я стартирате, така че все пак трябва да направите допълнителни корекции."

Новият команден език е базиран на съществуващия език Coq, който включва помощник за доказателство. Асистентът за доказателство от своя страна има способността да докаже своите твърдения математически прецизно. Coq има още едно свойство, което го прави привлекателен за групата MIT: програми, написани на този език или негова адаптация, винаги се прекратяват и не могат да работят за неопределено време в безкрайни цикли.

Сега това е първият и засега единственият тензорен език с формално проверени оптимизации. Екипът на MIT обаче предупреждава, че ATL все още е само прототип - макар и обещаващ - който е тестван върху редица малки програми.

Прочетете също:

Dzhereloscitechdaily
Регистрирай се
Уведомете за
гост

0 Коментари
Вградени рецензии
Вижте всички коментари