Изследователите от Националната лаборатория Оук Ридж обучиха голям езиков модел (LLM) с размера на ChatGPT на суперкомпютъра Frontier и се нуждаеха само от 3072 от неговите 37 888 графични процесора, за да го направят. Екипът публикува изследователски документ, в който подробно описва как е извършил това постижение и предизвикателствата, с които се е сблъскал по пътя си.
Суперкомпютърът Frontier е оборудван с 9472 процесора Epyc 7A53 и 37 888 графични процесора Radeon Instinct 37 888. Въпреки това екипът е използвал само 3072 графични процесора за обучение на LLM с един трилион параметри и 1024 за обучение на друг LLM със 175 милиарда параметри.
В статията се отбелязва, че основното предизвикателство при обучението на толкова голям LLM е количеството необходима памет, което е било минимум 14 терабайта. Това означава, че е било необходимо да се използват няколко графични процесора MI250X с 64 GB VRAM всеки, но това е довело до нов проблем: паралелизъм. Хвърлянето на повече графични процесори към LLM изисква все по-добра комуникация, за да може действително да се използват ефективно повече ресурси. В противен случай по-голямата част или цялата допълнителна мощност на графичния процесор ще бъде пропиляна.
Изследователският документ навлиза в подробности за това как точно са го направили тези компютърни инженери, но кратката версия е, че те са използвали рамки като Megatron-DeepSpeed и FSDP, променяйки нещата така, че програмата за обучение да работи оптимално на Frontier. В крайна сметка резултатите бяха доста впечатляващи - ефективността на мащабиране достигна 100%, което на практика означава, че повече графични процесори са били използвани възможно най-ефективно с увеличаване на размера на работното натоварване.
В същото време ефективността на силното мащабиране беше малко по-ниска - 89% за LLM с параметър 175 милиарда и 87% за LLM с параметър един трилион. Силното мащабиране се отнася до увеличаване на броя на процесорите, без да се променя размерът на работното натоварване, и това обикновено е моментът, в който по-големият брой ядра става по-малко полезен съгласно закона на Амдал. Дори 87% е приличен резултат, като се има предвид колко графични процесора са използвани.
Въпреки това екипът отбеляза някои проблеми при постигането на тази ефективност на Frontier, като заяви, че "трябва да има повече работа по изследване на ефективната производителност на обучението на AMD GPU, а платформата ROCm е оскъдна". Както се казва в документа, повечето машинно обучение в този мащаб се извършва в рамките на CUDA - хардуерно-софтуерната екосистема на Nvidia, което оставя решенията на AMD и Intel недоразвити в сравнение с тях. Естествено, подобни усилия ще насърчат развитието на тези екосистеми.
Въпреки това най-бързият суперкомпютър в света продължава да бъде Frontier с хардуер изцяло на AMD. На второ място се нарежда Aurora с хардуер изцяло на Intel, включително графични процесори, въпреки че в момента само половината от него се използва за представяне на сравнителни тестове. Графичните процесори на Nvidia захранват третия най-бърз суперкомпютър - Eagle. Ако AMD и Intel искат да запазят класацията по този начин, двете компании ще трябва да наваксат изоставането си от софтуерните решения на Nvidia.
Снимка: ORNL
Виж още: Екранът на следващия ви смартфон може да бъде изработен от... дърво