Robot analizujący dane na holograficznych wyświetlaczach w futurystycznym otoczeniu.

NPU do obliczeń AI są w naszych procesorach. Sprawdziłem, do czego można je wykorzystać

7 minut czytania
Komentarze

Skoro w nowych procesorach wbudowano już specjalizowane układy NPU, to czy w pełni możemy się już cieszyć akceleracją obliczeń związanych ze sztuczną inteligencją? Cóż – tak i nie.

NPU – obliczenia związane ze sztuczną inteligencją na domowym komputerze

NPU (Neural Processing Unit) jest koprocesorem do obliczeń związanych z AI. Jeśli mamy szukać analogii, to w procesorach od dawna mamy specjalizowane układy do kodowania/dekodowania wideo za pomocą kodeka H.265, czy w nowszych modelach również AV1.

Ich przydatność jest bezdyskusyjna, bowiem odciążają rdzenie procesora od obliczeń związanych z filmami, dzięki czemu spada zużycie energii, zadania te są wykonywane szybciej, a my w tym czasie możemy zaprząc komputer do innych prac. Dokładnie te same cele przyświecały podczas integracji NPU.

Menedżer zadań systemu Windows pokazujący użycie procesora NPU na karcie Wydajność.
Wskaźnik zajętości NPU w systemie Windows. Fot. Marcin Jaskólski / Android.com.pl, zrzut ekranu

Które procesory mają NPU na pokładzie? Zintegrowane z procesorami specjalizowane układy NPU znajdziemy między innymi w procesorach Intel Meteor Lake (czyli Core Ultra), jak i nadchodzących Lunar Lake. W przypadku AMD są między innymi Hawk Point (wybrane modele Ryzen 7000/8000), czy Strix Point (Ryzen AI 300). Nie można oczywiście zapominać o procesorach ARM, bowiem Qualcomm usilnie stara się zdobyć rynek ze swoim Snapdragonem X Elite.

Zwróćmy uwagę, że są to wszystko procesory przeznaczone dla laptopów. Jeśli chodzi o modele desktop, to aktualnie chyba jedynymi wyposażonymi w NPU są APU AMD Phoenix, a i to nie wszystkie (tylko Ryzen 7 8700G i Ryzen 5 8600G).

Układy NPU w procesorach desktop nie są aż tak istotne, bowiem zużycie energii ma tu mniejsze znaczenie i możemy zaprząc do pracy również specjalizowane rdzenie AI w kartach graficznych (choćby Tensor w kartach GeForce RTX). Jeśli jednak chcemy pracować na desktopie przy użyciu zintegrowanej grafiki i mieć pod ręką NPU, to obecnie jedynym rozwiązaniem tego typu są właśnie modele AMD Phoenix.

Plany na wykorzystanie NPU są wielkie, imponujące, ale często mało konkretne i mętnie wskazujące na przyszłe zastosowania. Powstaje jednak pytanie: do czego można wykorzystać NPU tu i teraz?

Obecnie w większości przypadków nie ma żadnej pewności, czy oprogramowanie ze wsparciem AI wykorzysta konkretne NPU (np. te w naszym procesorze) ani czy włączy je do akcji automatycznie. Przed instalacją danej aplikacji warto się rozeznać, które z rozwiązań aktualnie jest wspierane.

Wykorzystanie NPU w systemie operacyjnym Windows

Laptop z logo Microsoft Copilot na ekranie.
Fot. gguy / Shutterstock

Nie sposób tu nie wspomnieć o nowych laptopach Copilot+, które zapowiadano jako zupełnie nowy sposób na korzystanie z komputerów. NPU miał tam na start wspomagać trzy główne zadania:

  • samego Copilota, czyli asystenta AI;
  • skalowanie obrazu ASR (Automatic Super Resolution);
  • system MS Recall, zapisujący i odnajdujący wszystko, co robiliśmy na komputerze.

Tymczasem okazało się, że premierę Recall przesunięto na bliżej nieokreśloną przyszłość, skalowanie ASR działa marnie (aktualnie nie przynosi żadnych korzyści pod względem wydajności i jakości obrazu w grach). A sam Copilot, no cóż, działa. Chyba nie tak miała wyglądać rewolucja.

Warto zauważyć, że dla certyfikatu Copilot+ aktualnie wymaga się NPU o mocy co najmniej 40 TOPS, a takich wymagań nie spełniają ani modele AMD Phoenix/Hawk Point, ani Intel Meteor Lake. Nie oznacza to jednak, że NPU w tych procesorach do niczego się nadają.

Wykorzystanie NPU – lokalne trenowanie LLM i generowanie obrazów

Dziś każdy z nas może samodzielnie i lokalnie (czyli z wykorzystaniem mocy obliczeniowych własnego komputera) trenować modele językowe LLM. Może to być niezwykle przydatne podczas pracy nad poufnymi danymi, których nie chcemy wysyłać do internetu.

Nie mówiąc już o sytuacji gdy przydarzy się awaria sieci, bowiem całkowicie odcina nas to od narzędzia pracy. Przykładem takiego oprogramowania jest LM Studio, które pozwala na wykorzystanie wielu popularnych modeli LLM (jak Mistral czy Llama) i trenowanie ich lokalnie.

Czytaj także: Jak wybrać najlepszy model do swojego ChatGPT? Polecane rankingi

Zrzut ekranu interfejsu użytkownika LM Studio 0.2.31, umożliwiającego eksperymentowanie z dużymi modelami językowymi (LLM).
LM Studio to program do eksperymentowania z modelami językowymi offline. Fot. Marcin Jaskólski / Android.com.pl, zrzut ekranu

Innym popularnym zastosowaniem AI jest zamiana tekstu na obraz czy wręcz wideo. Jeśli mamy dość ograniczeń sieciowych rozwiązań, to możemy zaprząc do tego celu domowy komputer.

Darmowa aplikacja Amuse korzysta między z popularnych modeli Stable Diffusion (zarówno w wersji SD, jak i SDXL) i pozwoli ci zarówno na generowanie obrazów za pomocą promptów, jak i nakładanie filtrów AI, czy też wręcz przetwarzanie tego, co sami narysujemy.

Interfejs aplikacji do generowania obrazów z użyciem AI oraz Stable Diffusion z wygenerowanym obrazem astronauty w kosmosie.
Amuse pozwala na lokalne tworzenie obrazów za pomocą Stable Diffusion. Fot. Marcin Jaskólski / Android.com.pl, zrzut ekranu

Wykorzystanie NPU – oprogramowanie użytkowe

Tu zasadniczo jest nieco lepiej, bo wielu twórców popularnego oprogramowania implementuje funkcje wykorzystujące NPU, ale trzeba jasno powiedzieć, że wciąż jest to wykorzystanie szczątkowe i dotyczące niektórych funkcji.

  • Adobe Lightroom – Lightroom chętnie sięgnie po moc NPU między innymi do skalowania zdjęć, kadrowania czy zaznaczania fragmentów obrazu;
  • BlackMagic DaVinci Resolve – to jeden z najlepszych programów do montażu wideo potrafi wykorzystać NPU w wybranych funkcjach korekcji kolorów, stabilizacji obrazu, masek, czy wykrywania scen;
  • Blender – znany i lubiany program do modelowania i renderowania obrazów umie już wykorzystać AI do teksturowania;
  • OBS – popularny program dla streamerów może wykorzystać NPU przy efektach green screen, wykrywania twarzy, usuwania szumu, czy automatycznego kadrowania;
  • Audacity – darmowy program do edycji audio może wykorzystać NPU do efektów związanych z usuwaniem szumu, zamiany tekstu na mowę, usuwania wokalu, czy remiksowania;
  • GIMP – kolejna darmowa pozycja tym razem do edycji obrazu potrafi wykorzystać koprocesor AI do skalowania i kilku innych efektów. Możliwa jest również integracja GIMPa ze Stable Diffusion, czyli popularnym modelem zamieniającymi tekst na obrazy (np. w przypadku procesorów Intela z NPU trzeba sięgnąć po OpenVINO AI Plugins for GIMP);
  • Microsoft Studio – NPU w Windowsie wykorzystywane jest choćby do generowania efektów podczas wideokonferencji (np. rozmycie tła, śledzenie wzrokiem, czy automatyczne kadrowanie). Niby na razie niewiele, ale osoby często prowadzące wideokonferencji na laptopach, mogą odczuć niższe wykorzystanie baterii.
Co nowego w DaVinci Resolve 19.0
Trzy z ośmiu nowości w DaVinci Resolve 19 dotyczą AIFot. Marcin Jaskólski / Android.com.pl, zrzut ekranu

Inne programy, które potrafią wykorzystać NPU to między innymi CyberLink Director, Magix Vegas, Avid, Zoom, Bytedance, XSplit VCam, ArkRunr, VideoCom Presenter, iQIYI, Skylum Luminar, aplikacje Topaz Labs (Gigapixel, Photo AI i Video AI) czy wtyczki BorisFX.

Na dziś dzień nie należy się jednak spodziewać, że NPU zostanie wykorzystane w każdym przypadku, ale jedynie w wybranych funkcjach. Ich liczba jak na razie jest skromna, ale z pewnością będzie rosła w miarę upływu czasu.

Do czego dziś użyć NPU – podsumowanie

Nie da się ukryć, że obiecywana rewolucja jakoś nie nadchodzi, a jeśli już – to raczej opornie. Nie będę tu prognozował, czy funkcje jak Recall z Copilot+ faktycznie okażą się naprawdę przydatne, ale pewne jest, że odciążenie procesora przez NPU na pewno się sprawdzi.

Zanim to jednak nastąpi może minąć naprawdę sporo czasu – NPU to nie magiczny układ w środku procesora, ale koprocesor, dla którego trzeba specjalnie napisać oprogramowanie, bądź zmodyfikować te już istniejące.

Próby wykorzystania NPU aktualnie przypominają nieco pracę na Linuksie – często trzeba samodzielnie doinstalowywać dodatkowe pakiety, sięgać po oprogramowanie w wersji beta (np. DaVinci 19) i z reguły kombinować, żeby faktycznie włączyć NPU do akcji. Funkcje, które po prostu działają, są wbudowane w Windows (Microsoft Studio), ale wcale nie jest powiedziane, że dany NPU nie będzie potrzebować dodatkowych sterowników do działania.

To, że jeden program obsłuży NPU w jednym procesorze, wcale nie znaczy, że będzie tak w przypadku innego procesora – niektóre aplikacje wskazują wprost na rozwiązania tylko jednego producenta sprzętu. Do powszechnego i efektywnego wykorzystania NPU jest jeszcze daleka droga. Nie po raz pierwszy rozwój oprogramowania nie nadąża za rozwojem sprzętu.

Źródło: opracowanie własne. Zdjęcie otwierające: Microsoft Bing Kreator Obrazów / wygenerowane przez AI

Część odnośników to linki afiliacyjne lub linki do ofert naszych partnerów. Po kliknięciu możesz zapoznać się z ceną i dostępnością wybranego przez nas produktu – nie ponosisz żadnych kosztów, a jednocześnie wspierasz niezależność zespołu redakcyjnego.

Motyw