Danny Weber
En utvikler omgikk Apples programvaregrenser og viste at Neural Engine i M4-brikker kan gjøre mer enn bare inferens.
En sikkerhetsforsker og utvikler under pseudonymet 0X0SOJALSEC sier at han har omgått begrensninger fra Apple som vanligvis hindrer at Neural Engine i M4-brikker brukes til fullverdig trening av AI-modeller.
Apples nevrale motor fungerer som regel først og fremst som en akselerator for allerede trente modeller og AI-funksjoner som kjører lokalt på enheten. Entusiasten klarte likevel å bruke denne blokken i langt mer krevende scenarier, inkludert trening av transformer-modeller med tilbakepropagering.
For å få det til ble det laget et eget kompilatorlag basert på Model Intermediate Language (MIL). Det gir direkte tilgang til Neural Engine og omgår vanlige Apple-verktøy som Core ML og Metal. Under kjøringen blir data liggende i arbeidsminnet, noe som reduserer forsinkelser knyttet til gjentatte skrivinger til lagring.
Utvikleren har også laget en mekanisme for å gjenoppta trening: Hvis prosessen fryser eller avbrytes, kan systemet fortsette fra siste kontrollpunkt uten å miste fremgangen som allerede er oppnådd.
Prosjektets kildekode er allerede publisert på GitHub. Ifølge forfatteren viste de første testene høy hastighet: enkelte treningsfaser for modeller av typen transformer på M4-brikker ble fullført på millisekunder.
Apple tilbyr ikke offisielt utviklere å trene nevrale nettverk med Neural Engine og omtaler først og fremst blokken som en akselerator for inferens. Reverse engineering-arbeidet antyder likevel at maskinvarepotensialet i brikkene er langt større enn selskapets offentlige verktøy tilsier.
Hvis tilnærmingen viser seg nyttig i praksis, kan Mac-maskiner og iPad-nettbrett bli en mer interessant plattform for lokal utvikling og testing av små AI-modeller uten å være bundet til skytjenester.
Oppdagelsen reiser igjen spørsmålet om hvor mange muligheter som ligger skjult i Apple-maskinvare, og hvor mange av dem som forblir utilgjengelige ikke på grunn av selve silisiumet, men på grunn av selskapets programvaregrenser.
© T. Feodor