Agisoft Metashape je komerční nástroj pro fotogrammetrii, je většinou spojován s Windows. Jenže co když chcete těžit z výkonu vaší pracovní stanice na Linuxu? A co když máte GPU od nVidia a chcete z něi vymáčknout maximum? V tomto článku ukážu, že to jde – a nejen že to jde, ale běží to stabilně, výkonně a přehledně monitorovaně
Použité prostředí
-
Distribuce: Ubuntu 24.04.2 LTS (kernel 6.1.0)
-
HW: HP Z440 Workstation
-
CPU: Intel Xeon E5-1620 v4 @ 3.8 GHz (8 jader)
-
GPU: NVIDIA Quadro K2200
-
RAM: 128 GB DDR4
Software: Agisoft Metashape Standard 2.2.1, Zabbix 7.0, nVidia ovladače a nástroje (
nvidia-smi
,nvidia-settings)
Instalace a běh Metashape na Linuxu
Metashape lze provozovat i na Linuxu – ačkoli oficiálně Agisoft nabízí balíček pro linux metashape_2_2_1_amd64.tar.gz, archív stačí rozbalit např. do /opt a pak už jen zpustit a zalicencovat. GPU akcelerace přes nVidia funguje, pokud máte správně nastavené ovladače. Metashape v nastaveni GPU detekuje a můžete ji používat.
Na obrázku níže je vidět zpracování 617 snímků v projektu „Bohyně umění“, konkrétně fáze výpočtu hloubkových map. Fotografie byly nasnímány dronem s podporou RTK.
Využití GPU v reálném čase
Pomocí nástrojů jako nvtop
nebo nvidia-settings
lze sledovat, že GPU jede na plný výkon. GPU teplota během výpočtu šplhá k 85 °C, ventilátor běží na 87 % a spotřeba se drží kolem 39 W. Stařičká nVidia toho ma plné brýle.
Je vidět, že GPU skutečně nese hlavní výpočetní zátěž – Metashape plně využívá renderovací schopnosti i compute funkce GPU.
Využití CPU a RAM
Zatímco GPU zpracovává hluboké mapy, CPU není zcela odstaveno. V nástrojích htop
a btop
je patrná vysoká aktivita na všech jádrech, ale hlavní proces Metashape běží většinu času na všech jádrech naplno.
RAM spotřeba při tomto projektu je kolem 9–12 GB, takže ani 32GB RAM by pro menší projekty neměla být překážkou.
Monitoring pomocí Zabbix
Celý běh Metashape je i na dektopu je zároveň monitorován pomocí Zabbix 7.0. Použitý monitoring nVidia GPU zobrazuje:
-
využití GPU
-
paměť GPU
-
teploty
-
výkon/spotřebu
Monitoring nVidia GPU je skrze zabbix agenta funkční až od verze Zabbix 7.4. Ukázaný monitoring je realizován po staru pomoci projektu zabbix-nvidia-smi-integration. Tím lze jednoduše sledovat, kdy GPU jede naplno a jestli se nedostává do kritických teplot. Trigger v Zabbixu upozorní, pokud teplota GPU přesáhne 95 °C – což je dobré i pro dlouhé výpočty běžící přes noc.
Výsledný spočítaný model
Model sochy bohyně umění byl nasnímán v Hradci Králové na budově Muzea.
Závěr
Linux používím dlouhodobě a když jsem měl potřebu počítat fotogrametrii velmi jsem uvítal port pro Linux. Popisovaný HW není nikterak nový. Jedná se o postarsi desktop co se mi válel v kanceláři a občas je využiji na tyto náročnější výpočty. Do budoucna to bude chtit výkonější stanici a hlavně GPU.