Google Pixel 2 podporuje hardwarově akcelerované tethering pro lepší výdrž baterie při tetheringu

Google Pixel 2 podporuje tethering offload – také známý jako hardwarově akcelerované tethering – což pomáhá prodloužit výdrž baterie při tetheringu vašeho internetu.

O novém Google Pixel 2/Pixel 2 XL je toho ještě hodně, co ještě nebylo odhaleno. Google se rychle prosadil ve světě technologií, když náhle odhalil, že nové smartphony mají vestavěný vlastní obrazový procesor, tzv. Pixel Visual Core, ačkoli to má ještě není povoleno. Na Pixelu 2 jsme našli další zajímavou věc, i když si nejsme 100% jisti, co všechno tato nová funkce obnáší. Funkce, tzv hardwarově akcelerované tethering, pravděpodobně prodlouží životnost baterie během tetheringu mobilních dat tím, že veškerou logiku související s předáváním paketů a dalšími povinnostmi souvisejícími s tetheringem přenese na hardware.

Stávající majitelé Google Pixel 2 nebo Pixel 2 XL tuto funkci najdou v Možnostech pro vývojáře v kategorii Síť. Ve výchozím nastavení je povoleno, takže pravděpodobně na těchto zařízeních již funguje. V projektu Android Open Source Project (AOSP) můžeme vidět několik potvrzení souvisejících s funkcí pod „

tether-offload"značka. Vidíme, že to má logiku předání datového limitu vašeho smartphonu do offload kódu, aby vaše data limit není překročena.

Nejdůležitější je, že vidíme implementaci pro "tether offload HAL." Hardware Abstraction Layers (HAL) umožňují systému Android propojit se s čipem WiFi v SoC, který zvládne hardwarově akcelerované tethering. Tuto HAL používá Android k přenesení veškeré zátěže předávání paketů z Androidu na hardware, který je pro něj vyhrazen.

Konečným výsledkem je, že systémové prostředky vyhrazené pro mobilní datový tethering budou uvolněny pro jiné účely. Čím méně je CPU zařízení odpovědné za operace související s tetheringem, tím více energie se šetří. To může být užitečné zejména v případě, že zařízení přejde do režimu spánku, protože v současné době softwarové tethering v systému Android vyžaduje, aby byl CPU udržován v bdělém stavu pomocí funkce wakelock. Přenesením odpovědnosti za tethering na hardware pak možná může CPU skutečně přejít do režimu spánku –čím déle budete přivazovat, tím se zlepší životnost baterie.

Jaká zařízení tedy podporují hardwarově akcelerované tethering? No, zatím jsme našli přepínač pouze na Google Pixel 2/Pixel 2 XL, takže předpokládáme, že jej podporují pouze tato zařízení. Podle tethering offload HAL commitů se zdá, že Google testoval podporu na Google Nexus 5X (bullhead). Kromě toho se podle několika komentářů zaměstnanců společnosti Google zdá, že tethering offload HAL je spíše neutrální vůči dodavateli:

I když tato HAL má několik zvláštností pro nastavení Qualcommu, velká většina z nich je neutrální vůči dodavateli. Jakýkoli dodavatel s vhodně schopným SoC by s tím mohl teoreticky podporovat tethering hardware offload (mohou přeskočit další předávání fd při nastavení, kdo ví).

V jiném komentáři zaměstnanec společnosti Google zmiňuje, jak mohou zařízení kombinovat a porovnávat čipové sady WiFi a stahovat HAL, ale to API, které vytvořili, je stále navrženo tak, aby fungovalo tak, aby z vašeho zařízení vyždímalo co nejlepší výdrž baterie uvazování.

Úplně nahoře definujeme, že toto API vrátí statickou konfiguraci. V závislosti na implementaci dodavatele/hardwaru se tyto možnosti mohou změnit. Pro např. jedno zařízení může mít wifi od dodavatele A a stáhnout HAL od dodavatele B. zatímco jiné zařízení může mít čipovou sadu Wifi od dodavatele B a stáhnout HAL od dodavatele B. V tomto případě se mohou možnosti vykládky lišit. I s omezenými možnostmi může framework /client chtít využít výhody hardwarového snížení zátěže pro omezenou sadu. Proto je API navrženo tak, aby z hardwaru vytěžilo co nejvíce šťávy, protože implementace soc k soc mohou být různé.

Pokud vlastníte Google Pixel 2/Pixel 2 XL a chcete vidět stav hardwarově akcelerovaného tetheringu, můžete zadat následující Příkaz prostředí ADB a hledejte řetězce související s „odložením hardwaru:“

adb shell dumpsys connectivity tethering

Budeme muset provést testování, abychom skutečně viděli, jak efektivní je hardwarově akcelerované tethering při zlepšování výdrže baterie při tetheringu. Tethering také způsoboval obrovský nárůst výkonu, ale masivní vylepšení rychlosti CPU a optimalizace v Androidu tento problém do značné míry vyřešily. Neočekáváme tedy, že odlehčení tetheringové logiky přes offload HAL na WiFi čipovou sadu povede ke znatelnému zlepšení výkonu.