Temat: Szybkość kompilacji OpenWrt

Cezary napisał/a:

Buildy z wydania 24.10 są dostępne i u mnie. Zawartość obrazów jest prawie taka sama jak w poprzednich wydaniach, z tym że zastąpiłem openvpn-openssl przez openvpn-mbedtls, dzięki czemu obrazy są mniejsze (mimo że ogólnie obrazy tego wydania są większe niż wydania poprzedniego). Sporo obrazów LuCI dla ramipsa/mt7620 dla routerów z 8MB flash już nie potrafi się skompilować z powodu zajmowanego miejsca przez system. Może się okazać że niektóre obrazy z LuCI nie nadają się też do użytku - mimo że mogły się skompilować to wszystko zajmuje tyle miejsca że nie jest w stanie zrobić się overlay i nie trzyma ustawień. W takim przypadku dajcie znać to wyrzucę takie modele z kompilacji.
Już widzę że z ath79/generic trzeba wywalić kilka urządzeń z 8MB flash bo dla nich obrazy z LuCi się już nie robią.
Sugeruję też nie robić od razu "produkcyjnego" wdrożenia nowych obrazów. To pierwsze buildy, co prawda chyba wszystko przeniosłem co trzeba było zrobić ale kto wie czego zapomniałem. W repozytorium też co chwilę dodawane są jeszcze nowe poprawki naprawiające błędy, więc może się okazać że niekoniecznie ten build jest doskonały.
Te obrazy mają standardowo opkg jak w starsze wersje OpenWrt, ale ostateczne wydanie stabilne 24.10 może przejść na apk, więc w przyszłości mogą pojawić się nowe rodzaje pakietów.

Trochę statystyki:
- liczba kompilowanych platform: 18
- zajmowane miejsce przez skompilowane obrazy dla routerów: 52GB
- zajmowane miejsce na dysku przez źródła i skompilowane pakiety: ok 450GB
- czas potrzebny na kompilację obrazów (przy skompilowanym już toolchainie, pakietach i kernelu): 7g 30m
- ilość kompilowanych obrazów dla "czystego" OpenWrt: 3327
- ilość kompilowanych obrazów dla OpenWrt z LuCi: 2971
- ilość kompilowanych obrazów MiFi: 299

Kompilacja eksperymentalnie została wykonana tym razem nie na laptopie na którym zwykle kompilowałem tylko na małym PC z procesorem Intel i5-8259U (4C/8T) bo miał więcej wolnego dysku (a i tak czeka mnie zakup kilku nowych nośników). Laptop ma 16 rdzeni i stanowczo szybciej to robił, trzeba będzie zobaczyć jak to kompiluje się na jakiejś naprawdę wielordzeniowej maszynce lub np. współczesnym Maczku.
Strasznie dużo uzbierało mi się tych platform i już z połowy z tego nie używam (i nie mam) - w przyszłości trzeba będzie ograniczyć kompilację do bardziej nowoczesnych platform i zejść trochę niżej z tych gigabajtów.

Obrazy do wyszukania z https://dl.eko.one.pl/firmware/ lub pobrania bezpośrednio z katalogów na https://dl.eko.one.pl/


2*e5 2680v4 128GB ram  - jakiś benchmark?

Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

2

Odp: Szybkość kompilacji OpenWrt

Czas jakiejś kompilacji? I to samo na zwykłym komputerze.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Szybkość kompilacji OpenWrt

To może jakiś skrypt by ogarnął żeby coś ukompilować jakiś target i zrobić tabelke do porównania na forum ?

Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

4 (edytowany przez Cezary 2024-11-17 01:16:32)

Odp: Szybkość kompilacji OpenWrt

W ramdysku, żeby nie było że dysk jest problemem

git clone https://github.com/openwrt/openwrt.git
cd openwrt
git checkout v23.05.5
make defconfig
make download
time make -j$(nproc) tools/compile

U mnie laptop robi to w

real    9m5,958s
user    73m19,901s
sys    12m58,774s

EDIT: jakąś bzdurę pokazuje bo 73m to się nie robiło.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez ambrozy5 2024-11-18 13:33:59)

Odp: Szybkość kompilacji OpenWrt

5650u  na baterii , trzeba temat nowy zalozyć.

real    8m4,510s
user    56m35,189s  -- tu tez cos z kapelusza
sys    9m50,363s
 
Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

6

Odp: Szybkość kompilacji OpenWrt

@Cezary a Ty wiesz o takiej promce ? https://www.apple.com/pl-edu/shop/buy-m … -ram-256gb

Nic nie trzeba udowadniać, że się studiuje. Imho mały dysk ale fajna alternatywa dla chińskich mini pc.

Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

7

Odp: Szybkość kompilacji OpenWrt

Wiem, wiem. Któreś obrazy z 21.xx kompilowałem na pierwszej wersji maka mini z M1.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8

Odp: Szybkość kompilacji OpenWrt

Że jak? Dla Ciebie fajną alternatywą do chińskiego minipc za 600PLN jest również chiński macmini ,tyle ,że 4x drożej ?

9 (edytowany przez Cezary 2024-11-18 07:20:25)

Odp: Szybkość kompilacji OpenWrt

MiG25 napisał/a:

Że jak? Dla Ciebie fajną alternatywą do chińskiego minipc za 600PLN jest również chiński macmini ,tyle ,że 4x drożej ?

Ja odpowiem. Chiński minipci za 600zł to zabawka ze słabym celeronem z wydajnością na poziomie zwykłego kalkulatora czy innej mikrofalówki. Jeżeli chcesz zestaw z takim i5/i7 wcale nie najnowszej generacji, powiedzmy 10, to już to się robi 2k i więcej.

EDIT: nie. Jak dobrze poszukać to i5 12gen za ~1500 można znaleźć.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10

Odp: Szybkość kompilacji OpenWrt

No i wtedy do takiego i5 12gen to macmini będzie alternatywą ? smile

11

Odp: Szybkość kompilacji OpenWrt

Nie wiem smile Nie miałem okazji pobawić się m4 czy m4pro więc nie wiem jak z jego wydajnością.

https://browser.geekbench.com/processor … -i5-12600k dla i5 12gen
https://browser.geekbench.com/v6/cpu/8907617 dla zwykłego M4. Jest szybciej, a jak w praktyce by się to przełożyło i czy warto by było wydać 3k - tego jeszcze nie wiem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12 (edytowany przez Cezary 2024-11-18 09:51:11)

Odp: Szybkość kompilacji OpenWrt

OT się robi. Wyciągnąłem z piwnicy DELL'a Precision T7500. Dziadek ma dwa fizyczne Xeony X5650 co łącznie daje 12C/24T. w/w zadanie robi w

real    7m46.763s
user    85m40.393s
sys    11m39.243s

. Wada dziadka - wciąga 180W w idle i 350W podczas kompilacji (i to bez dysków)...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: Szybkość kompilacji OpenWrt

Jak alternatywa, to może być coś na AMD. Ryzen 5800 i w górę. W sumie można już za 300USD wyrwać, często taniej. Widziałem też za 380 7840u. 8 rdzeni, 16 wątków. Generalnie dosyć wydajne. Na servethehome.com są fajne testy różnych minipc.
https://www.servethehome.com/wp-content … chmark.jpg

14

Odp: Szybkość kompilacji OpenWrt

To ja mam tak:

CPU: 8-core AMD Ryzen 7 5700U with Radeon Graphics (-MT MCP-)

real    8m54,450s
user    77m53,045s
sys    13m24,052s

15 (edytowany przez ambrozy5 2024-11-22 19:53:36)

Odp: Szybkość kompilacji OpenWrt

secam7 napisał/a:

To ja mam tak:

CPU: 8-core AMD Ryzen 7 5700U with Radeon Graphics (-MT MCP-)

real    8m54,450s
user    77m53,045s
sys    13m24,052s

Dwa rdzenie i dwa wątki więcej od mojego 5650u w thinkpadzie a wolniej, albo throttling albo coś w tle śmigalo sobie i dość zabieralo zasoby.

Dom : router https://i.imgur.com/IuB6Zwy.png | TP-LINK T1700G-28TQ |Zyxel XGS-1210-12 | 6x Ruckus r310 unleashed  + Ruckus icx7150-c12p | Truenas scale 124TB 25Gb| Xpenology 12TB | apc smart ups 750 lcd smile 100Mb/s - 25Gb/s
Podróżne : GL.Inet MT3000  +1TB hdd
Działka : rb260gs 1j wdm 1Gb+ ruckus r310 + nb m5 + kilka kamer ip  + panel 285Wp + lifepo4 12v 60Ah .

16

Odp: Szybkość kompilacji OpenWrt

Przeszkadzałem mu, teraz z wyłączoną przeglądarką:

 real    8m28,701s
user    74m54,973s
sys    13m20,847s

Cała kompilacja z luci, jeden target to około 47 min.

17

Odp: Szybkość kompilacji OpenWrt

secam7 napisał/a:

Przeszkadzałem mu, teraz z wyłączoną przeglądarką:

 real    8m28,701s
user    74m54,973s
sys    13m20,847s

Cała kompilacja z luci, jeden target to około 47 min.

To jeszcze sprawdziłem na desktopie z takim procesorem:

CPU: 6-core AMD Ryzen 5 1600 (-MT MCP-) speed/min/max: 1620/1550/3200 MHz

real    6m35.356s
user    50m53.805s
sys    5m14.521s

Czyli wychodzi że laptop ma problemy i jest throttling na procesorze.

18 (edytowany przez forteller 2024-11-22 13:55:07)

Odp: Szybkość kompilacji OpenWrt

Ryzen 7 7700 z włączonym PBO2, podniesionym TDP do 105W oraz Curve Optimizer. 5,55GHz na jednym rdzeniu i około 5,35-5,4GHz przy obciążeniu wszystkich. Windows 11 / WSL2:

real    2m53.552s
user    19m45.656s
sys     2m5.577s

Mój NAS, czyli Intel Kawa-Jezioro QQLT 6C/12T smile Ustawiony kaganiec na 65W oraz 4,0GHz, realnie osiąga jakieś 3,6-3,8GHz przy pełnym obciązeniu wszystkich rdzeni. Ubuntu 24.04:

real    7m4.222s
user    55m51.386s
sys     5m51.001s

W pracy mam dostęp do PowerEdge'y R760 które mają 96C/192T jeśli dobrze pamiętam, ale nie wiem czy taka mała kompilacja dobrze się będzie skalować smile

19

Odp: Szybkość kompilacji OpenWrt

Sprawdź, bo to ciekawe jest samo w sobie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

20 (edytowany przez forteller 2024-11-22 10:23:31)

Odp: Szybkość kompilacji OpenWrt

2x Intel(R) Xeon(R) Gold 5418Y 24C/48T = 48C/96T (pisząc wczoraj z pamięci pomnożyło mi się x2 w głowie) smile Ubuntu 20.04:

real    2m57.057s
user    36m21.431s
sys     3m41.744s

Ciekawie było obserwować obciążenie CPU. Tam gdzie 8 rdzeni Ryzena potrzebowało chwili żeby przemielić te fragmenty które rozkładały się na wszystkie rdzenie, na tym serwerze momenty gdzie obciążone były wszystkie rdzenie trwały maksymalnie sekundę-dwie. Niemniej, szybszy pojedynczy rdzeń w takim scenariuszu zwycięża.

Jak coś to mam dostęp jeszcze do i3-10100T, i5-12500T, Celerona G5900T, Xeona E2286G oraz E2336 i paru staroci w stylu D2123IT gdyby komuś zależało na konkretnych porównaniach.

21

Odp: Szybkość kompilacji OpenWrt

Przetestujcie sobie ( jak jest możliwość) kombinacje RAM.
Na i5 8gen przy 16GB RAM przy jednym module DDR4 było 16min , a przy dwóch 8GB spadło do 11 ... to jest dopiero wzrost wydajności smile

22

Odp: Szybkość kompilacji OpenWrt

Ciekawe że przepustowość pamięci ma tak duży wpływ. Projekt projektowi nierówny, ale zawsze żyłem w przeświadczeniu że pamięć nie ma dużego wpływu.

Ale być może to też tłumaczy bardzo dobre wyniki Ryzena (pomimo warstwy wirtualizacji przez WSL). Mam tam ręcznie optymalizowane moduły DDR5 (do trzeciego rzędu timingów) z częstotliwością 6200MT/s.

Może warto jednak założyć ten osobny temat? To nie ma absolutnie nic wspólnego z 24.10, skoro kompilujemy 23.05 smile

23

Odp: Szybkość kompilacji OpenWrt

mały "chińczyk" z N100  wykonał te zadanie  w 12min.43sek.  Zobaczcie jak zegary sie skaluja , oraz jak poszła temperatura

/home/adam
$ git clone https://github.com/openwrt/openwrt.git
Cloning into 'openwrt'...
remote: Enumerating objects: 723023, done.
remote: Counting objects: 100% (130/130), done.
remote: Compressing objects: 100% (83/83), done.
remote: Total 723023 (delta 89), reused 49 (delta 47), pack-reused 722893 (from 2)
Receiving objects: 100% (723023/723023), 246.96 MiB | 25.77 MiB/s, done.
Resolving deltas: 100% (487587/487587), done.
$ neofetch
       _,met$$$$$gg.          adam@caaff8f7d957
    ,g$$$$$$$$$$$$$$$P.       -----------------
  ,g$$P"     """Y$$.".        OS: Debian GNU/Linux 12 (bookworm) x86_64
 ,$$P'              `$$$.     Host: LarkBox X
',$$P       ,ggs.     `$$b:   Kernel: 6.6.60
`d$$'     ,$P"'   .    $$$    Uptime: 2 days, 14 hours, 43 mins
 $$P      d$'     ,    $$P    Packages: 385 (dpkg)
 $$:      $$.   -    ,d$$'    Shell: sh
 $$;      Y$b._   _,d$P'      CPU: Intel N100 (4) @ 3.400GHz
 Y$$.    `.`"Y$$$$P"'         GPU: Intel Alder Lake-N [UHD Graphics]
 `$$b      "-.__              Memory: 449MiB / 11725MiB
  `Y$$
   `Y$$.
     `$$b.
       `Y$$b.
          `"Y$b._
              `"""

$

// przed startem
-----------------------------------------------------
 | CPU freq: 887.78MHz, 869.82MHz, 878.11MHz, 863.73MHz |
 | CPU temp: 45.00 C, 45.00 C, 45.00 C, 44.00 C, 44.00 C |
 -----------------------------------------------------



// po 1 minucie
-----------------------------------------------------
 | CPU freq: 1.58GHz, 1.71GHz, 1.76GHz, 1.59GHz      |
 | CPU temp: 57.00 C, 56.00 C, 56.00 C, 56.00 C, 56.00 C |
 -----------------------------------------------------


// po 3 minutach
-----------------------------------------------------
 | CPU freq: 2.91GHz, 2.91GHz, 2.90GHz, 2.91GHz      |
 | CPU temp: 80.00 C, 78.00 C, 78.00 C, 78.00 C, 78.00 C |
 -----------------------------------------------------

// po 5 minutach
 -----------------------------------------------------
 | CPU freq: 2.90GHz, 2.90GHz, 2.91GHz, 2.90GHz      |
 | CPU temp: 81.00 C, 82.00 C, 81.00 C, 82.00 C, 82.00 C |
 -----------------------------------------------------

// po 10 minutach
 -----------------------------------------------------
 | CPU freq: 2.90GHz, 2.90GHz, 2.90GHz, 2.90GHz      |
 | CPU temp: 84.00 C, 84.00 C, 84.00 C, 84.00 C, 84.00 C |
 -----------------------------------------------------

2628.67user 192.23system 12:43.02elapsed 369%CPU (0avgtext+0avgdata 710048maxresident)k
0inputs+0outputs (1628major+93495076minor)pagefaults 0swaps

// 1 min po skonczeniu
 -----------------------------------------------------
 | CPU freq: 899.97MHz, 899.98MHz, 900.01MHz, 900.00MHz |
 | CPU temp: 54.00 C, 51.00 C, 52.00 C, 52.00 C, 52.00 C |
 -----------------------------------------------------

test wykonany na  OpenWrt 24.10-SNAPSHOT, r28165-45f9f15512   w kontenerze dockera z debianem  w tle działło kilka małych usług  ( w tym nextcloud  też w dockerze  )

24

Odp: Szybkość kompilacji OpenWrt

jako ciekawostka   linux live usb MX 23.6    , budowa v24.10.5
AMD Ryzen 7 260 

real    4m29,578s
user    3m46,510s
sys    1m14,109s

szału nie ma hmm