Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Kdyz mi v patek (kdysi davno, zapisek je nejakou dobu rozepsany) konecne dorazil Turris Omnia zacal jsem se v hrabat. Dualcore 1.6GHz + 1G RAM + 8G flash a busybox!? A vubec, proc nemit na poradnem routeru poradny OS? A tak jsem se rozhodl ze tam vrazim Gentoo. P.S.: Omlouvam se za horsi kvalitu zapisku, jsou to vicemene jen poznamky z vlastni instalace doplnene vysvetlujicimi komentari.
V zapisku predpokladam praci po seriove konzoli, je potreba si sehnat USB <-> 3.3V UART prevodnik. Bez toho pokud vim bootloader prekonfigurovat nejde. Ale daji se sehnat treba za pade na ebayi nebo u oblibeneho lokalniho dealera cinskeho matrose
Prevodnik pripojime na konektor CN10 (u tlacitka na upravu jasu LED diod). Vyvody jsou nasledujici:
Tlacitko - 3.3V - RX - TX - GNDJe samozrejme potreba prehodit RX a TX (RX prevodniku na TX routeru a obracene). Parametry pro komunikaci jsou vicemene klasicke: 115200 baud, 8N1.
Router zapneme, po bootu do nej zapojime USB flash disk a prihlasime se po seriaku (dalo by se asi i po siti ale ja zvolil seriak). Staci spustit neco jako (prepokladam ze ttyUSB0 je seriovy prevodnik)
screen /dev/ttyUSB0 115200
Pokud flash byla naformatovana s nejvyssi pravdepodobnosti se mountla nekam do /media. Pokud ne, vytvorime si mountpoint a mounteme rucne. Na nasledujicich radcich budu predpokladat ze flash je pripojena v /mnt
root@turris:~# cat /sys/bus/i2c/devices/i2c-1/1-0054/eeprom > /mnt/eeprom.bin root@turris:~# dd if=/dev/mtdblock0 of=/mnt/mtdblock0.bin root@turris:~# dd if=/dev/mtdblock1 of=/mnt/mtdblock1.bin root@turris:~# mount / -o remount,ro root@turris:~# dd if=/dev/mmcblk0p1 of=/mnt/mmcblk0p1.bin
Stale mame flashku namountovanou v /mnt. Koukneme do http://distfiles.gentoo.org/releases/arm/autobuilds/ jaky je posledni armv7a build stage3. V mem pripade to bylo 20160325. Stahneme a rozbalime stage 3, chrootneme se a v chrootnutem systemu updatneme portage.
root@turris:~# cd /mnt root@turris:/mnt# wget http://distfiles.gentoo.org/releases/arm/autobuilds/20160325/stage3-armv7a-20160325.tar.bz2 root@turris:/mnt# sync; tar xpf stage3-armv7a-20160325.tar.bz2 root@turris:/mnt# chroot . /bin/bash turris / # rm stage3-armv7a-20160325.tar.bz2 turris / # emerge-webrsync turris / # exit # vyskocime z chrootu protoze vim je vim...
Upravime make.conf, zkopirujeme par potrebnych souboru:
root@turris:/mnt# vim /mnt/etc/portage/make.conf # a klasicky upravime make.conf k obrazu svemu root@turris:/mnt# mkdir /mnt/lib/modules root@turris:~# cp -ar /lib/modules/4.4.13-05df79f63527051ea0071350f86faf76-7/ /mnt/lib/modules/ root@turris:~# cp -ar /lib/firmware /mnt/lib/ root@turris:~# cp -ar /boot/* /mnt/boot/
Do /mnt/etc/inittab nezapomeneme pridat radku startujici getty na seriove konzoli:
s0:12345:respawn:/sbin/agetty -L 115200 ttyS0 linux
Namountujeme kerneli filesystemy a jeste jednou vlezeme do chrootu kde nainstalujeme nejruznejsi potrebne balicky:
root@turris:~# for i in proc sys dev; do mount --rbind /$i /mnt/$i;done root@turris:/mnt# chroot . /bin/bash turris / # ln -s /proc/self/fd /dev/fd turris / # echo "=net-wireless/hostapd-2.6 ~arm" >> /etc/portage/package.accept_keywords turris / # emerge -1av openssh # rebuild openssh and openssl with -bindist turris / # emerge -av dhcpcd hostapd wpa_supplicant wireless-tools bridge-utils vim bc # bc je potreba pro kompilaci kernelu, nevyhazovat turris / # vim /etc/fstab turris / # passwd
Flashku odmountujeme a nakopirujeme si na ni zdrojaky kernelu z https://github.com/tmshlvck/omnia-linux, jeste se nam hodi. Ulozte je nekam mimo standardni adresarovou strukturu, nebudeme je cpat do EMMC. Ja je ulozil do /omnia-linux. Pote rebootneme do rescue modu.
Takze, mame seriovou konzoli, flashku zastrcenou v portu a nabootovany resuce rezim (reset s 5+ sviticimi LEDkami).
/ # mkdir /mnt/mmc / # mkdir /mnt/usb / # mount /dev/sda1 /mnt/usb/
Jelikoz resuce system obsahuje jen mkfs.btrfs a my btrfs nechceme, musime se chrootnout kvuli naformatovani EMMC pameti.
/ # for i in proc sys dev; do mount --rbind /$i /mnt/usb/$i;done / # chroot /mnt/usb/ /bin/bash (none) / # mkfs.ext4 /dev/mmcblk0p1 (none) / # exit / # for i in proc sys dev; do umount /mnt/usb/$i;done
Konecne muzeme presunout data z flashky na EMMC:
/ # mount /dev/mmcblk0p1 /mnt/mmc/ / # for i in proc sys dev; do umount /mnt/usb/$i;done / # for i in bin boot dev etc home lib media mnt opt proc root run sbin sys tmp usr var; do cp -aPrp /mnt/usb/$i /mnt/mmc/;done / # umount /mnt/mmc / # umount /mnt/usb / # sync
Nasleduje obligatni reset a uprava parametru zavadece
Resetneme router a pockame az se na seriove konzoli objevi hlaska
Hit any key to stop autoboot:a prastime nejakou klavesu. Uvita nas u-boot prompt. V nem upravime konfiguraci bootu tak aby pocital s ext4 filesystemem:
=> printenv ... mmcboot=setenv bootargs "$bootargs cfg80211.freg=$regdomain"; btrload mmc 0 0x01000000 boot/zImage @; btrload mmc 0 0x02000000 boot/dtb @; bootz 0x01000000 - 0x02000000 ... => setenv mmcboot 'setenv bootargs "$bootargs cfg80211.freg=$regdomain"\; ext4load mmc 0 0x01000000 boot/zImage @\; ext4load mmc 0 0x02000000 boot/dtb @\; bootz 0x01000000 - 0x02000000' => setenv bootargs earlyprintk console=ttyS0,115200 rootdelay=2 rw rootfstype=ext4 root=/dev/mmcblk0p1 => saveenv => boot
Nyni uz nam nejak bezi Gentoo nicmene vzhledem k osekanemu defaultnimu kernelu to neni zadna slava... Cloveka privitaji hlasky jako
* CONFIG_DEVTMPFS=y is required in your kernel configuration * for this version of udev to run successfully.. Je zkratka potreba prekompilovat kernel. Flashku (pokud jste ji vyndali) znovu pripojte do routeru a provedte tuhle obludnost (neprisel jsem na to jak natahnout zavislosti mezi moduly na originalnim jadre):
localhost # cd /lib/modules/4.4.13-05df79f63527051ea0071350f86faf76-7 localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod nls_base.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod usb-common.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod usbcore.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod scsi_mod.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod sd_mod.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod usb-storage.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod xhci-hcd.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod xhci-plat-hcd.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # insmod xhci-pci.ko localhost 4.4.13-05df79f63527051ea0071350f86faf76-7 # cd / localhost / # mount /dev/sda1 /mnt/ localhost / # cd /mnt/omnia-linux/ localhost omnia-linux # cp arch/arm/configs/omnia_defconfig .config localhost omnia-linux # make menuconfig localhost omnia-linux # make -j2 localhost omnia-linux # make zImage localhost omnia-linux # make modules_install localhost omnia-linux # cp arch/arm/boot/zImage /boot/zImage-4.4.0 localhost omnia-linux # cp arch/arm/boot/arch/arm/boot/dts/armada-385-turris-omnia.dtb /boot/dtb localhost omnia-linux # cd /boot localhost boot # rm zImage localhost boot # ln -s zImage-4.4.0 zImage localhost boot # rebootPo rebootu uz nas privita plne funkcni Gentoo na Omnii! A uz staci jen kompilovat a kompilovat a kompilovat...
Tiskni
Sdílej:
A uz staci jen kompilovat a kompilovat a kompilovat...Az sa nam zacne z routra kurit dym
Šmankote, OpenWrt je na takovýto router naprosto nevhodný.OpenWRT není tak úplně špatná distribuce.
Už jenom debilní busyboxJe otázka, proč tam dáváš debilní busybox, když tam můžeš nechat normální busybox. Bez legrace, myslím, že nadávání je na místě leda pokud nadáváš sám sobě. Mimochodem Alpine Linux taky používá jako zákad busybox a na bootování ho používá i spousta dalších distribucí, takže se zde tvůj pohled s pohledem tvůrců distribucí hodně rozchází.
Šmankote, OpenWrt je na takovýto router naprosto nevhodný. Už jenom debilní busybox, dnsmasq místo něčeho pořádného (isc-dhcpdJasně. ISC DHCP jako příklad předního software dnešní doby. :)
Každej nemá na to, hrát si s polonefunkční distribucí, zvlášť když má na jiných routech nějaké klasické distro se vším komfortem, co to poskytuje.Tak když se ti podařilo nainstalovat distro dle vlastního výběru, nevím, na co si stěžuješ. :)
No, jestli nedokážeš rozeznat rozdíl mezi dobrý/špatný a vhodný/nevhodný pro konkrétní účel, tak budeš asi pěkný blb. OpenWRT je určitě hezká distribuce na krabičky, co mají 8MB flashe a 16MB RAM, nebo třeba pro různé potvory typu Omega2, o tom žádná. Ale na seriózní nasazení třeba na routeru to rozhodně není.Šmankote, OpenWrt je na takovýto router naprosto nevhodný.OpenWRT není tak úplně špatná distribuce.
isc-dhcpd má přehledné konfiguráky a umožňuje např. posílat každému klientovi jiné věci podle potřeby nebo se chovat pro jiné segmeny sítě/VLAN různě. Pokud bych to srovnal s dnsmasq je to jako bych srovnával Mercedes s Trabandem. Dám ale jiný příklad. Při testování Turris Omnia jsem neměl po ruce žádnou USB klíčenku atd, tak jsem se rozhodl, že zazálohuji partišny přes SSH. Říkám si, nebude problém, normální SSH lze dát do roury a na cílovém stroji to hodit do souboru. Myslíš, že tohle ta jejich parodie na SSH umí?Šmankote, OpenWrt je na takovýto router naprosto nevhodný. Už jenom debilní busybox, dnsmasq místo něčeho pořádného (isc-dhcpdJasně. ISC DHCP jako příklad předního software dnešní doby. :)
Ne, zatím se mi to nepodařilo, zatím nebyl čas si s tím hrát. Ale v tuto chvíli mám stejně Turris Omnia jenom na hraní, na routerech mám APU desky od PC-Engines.Každej nemá na to, hrát si s polonefunkční distribucí, zvlášť když má na jiných routech nějaké klasické distro se vším komfortem, co to poskytuje.Tak když se ti podařilo nainstalovat distro dle vlastního výběru, nevím, na co si stěžuješ. :)
tak budeš asi pěkný blb.Věděl jsi, že mě od tebe nadávky neurážejí?
isc-dhcpd má přehledné konfiguráky a umožňuje např. posílat každému klientovi jiné věci podle potřeby nebo se chovat pro jiné segmeny sítě/VLAN různě. Pokud bych to srovnal s dnsmasq je to jako bych srovnával Mercedes s Trabandem.Jednak ISC DNS/DHCP zdaleka ve všem dnsmasq nepřekonává, jednak ani dnsmasq není jediné řešení ani obecně ani na OpenWRT. Software vzniklý kolem OpenWRT je dost zajímavý a podle mě má jistou malou šanci získat hodnotu i mimo OpenWRT.
Myslíš, že tohle ta jejich parodie na SSH umí?Žádná jejich parodie na SSH neexistuje, nabízejí normálně Dropbear a OpenSSH jako jiné distribuce a minimálně to druhé to bude umět. :)
No, jestli nedokážeš rozeznat rozdíl mezi dobrý/špatný a vhodný/nevhodný pro konkrétní účel, tak budeš asi pěkný blb. OpenWRT je určitě hezká distribuce na krabičky, co mají 8MB flashe a 16MB RAM, nebo třeba pro různé potvory typu Omega2, o tom žádná. Ale na seriózní nasazení třeba na routeru to rozhodně není.Tohle je proste naprosto mimo a znaci, ze o problematice nemas rozhled. A jeste urazis.
A jeste urazis.Já se obávám, že to je hlavní motivace Petra být na Abclinuxu.
A tresnickou je, ze podle tebe je idealni system na routery Debian.Ano, je ideální a daleko lepší než sračkoidní OpenWRT.
Lepsi system, nad cem stavet masovy pocty routujicich krabicek, zkratka neexistuje.Mluv za sebe. Je spousta lidí, kteří si myslí přesný opak.
Nebo snad nekde jinde najdes alternativu k UCI?UCI je ta největší sračka, která v OpenWRT je. Nejhorší je ta snaha znásilnit všechno tak, aby se to konfigurovalo přes UCI, i když mají různé démony zavedené svoje vlastní konfiguráky, tak ne, všechno to musí jít přes UCI. S OpenWRT jsem se nejvíc hrál tak před 3-6 lety a vím, jaký byl tenkrát opruz nastavit dnsmasq tak, aby dával strojům pevné IP podle MAC. Problém byl v tom, že s tím UCI tenkrát (jak to je dnes nevím, ani to nemám náladu zjišťovat) vůbec nepočítal a vždycky přepsal konfiguraci svýma vlastníma sračkama. Takže se musel upravit spouštecí skript tak, aby si dnsmasq tyhle věci četl ze zvláštního konfiguráku. Opravdu "geniální". Anebo vůbec ten fakt, že UCI generuje část pravidel pro firewall sám a nedá se to upravit, je dost děsný. Zlatej Debian, kde si můžu napsat vlastní pravidla a nic se mi do toho nesere.
Jaká nadávka, to bylo pouhopouhé konstatovánítak budeš asi pěkný blb.Věděl jsi, že mě od tebe nadávky neurážejí?
Nevím, co si představuješ, že "ISC DHCP zdaleka dnsmasq ve všem nepřekonává", ale když dnsmasq chybí základní funkcionalita nebo je její konfigurace krkolomná, pak není co řešit. Já osobně nevidím jedinou věc, kde by dnsmasq bylo lepší.isc-dhcpd má přehledné konfiguráky a umožňuje např. posílat každému klientovi jiné věci podle potřeby nebo se chovat pro jiné segmeny sítě/VLAN různě. Pokud bych to srovnal s dnsmasq je to jako bych srovnával Mercedes s Trabandem.Jednak ISC DNS/DHCP zdaleka ve všem dnsmasq nepřekonává, jednak ani dnsmasq není jediné řešení ani obecně ani na OpenWRT. Software vzniklý kolem OpenWRT je dost zajímavý a podle mě má jistou malou šanci získat hodnotu i mimo OpenWRT.
# v openwrt: opkg update opkg install isc-dhcp-server-ipv4 openssh-server # v debianu: apt-get update apt-get install isc-dhcp-server openssh-server
tak psal sem "Busybox je naprosto v pohode na to jak je to male to umi dost" a za tim si stojimNa to, jak je to malé(*) to umí beze sporu dost, ale v pohodě to teda určitě není. :) (*) Problém je, že v případě Turris Omnia to opravdu nikoho nezajímá, jak je to malé...
Ale je pravda, že jsem Turris Omnia zatím testoval jen v izolované VLAN, aby mě z czNICu nemohli šmírovatDalsi dukaz o tom, ze se vyjadrujes k problematice, o ktery nemas vubec paru. Pochopil jsi, proc puvodni Turris a Omnia jsou dve ruzny zarizeni? Podle tyhle hlasky jsi to pochopit nemohl. Zahlidnout jo, pochopit - to je jina.
TEST : Iterations/sec. : Old Index : New Index : : Pentium 90* : AMD K6/233* --------------------:------------------:-------------:------------ NUMERIC SORT : 720.94 : 18.49 : 6.07 STRING SORT : 106.22 : 47.46 : 7.35 BITFIELD : 3.0018e+08 : 51.49 : 10.76 FP EMULATION : 109.28 : 52.44 : 12.10 FOURIER : 9406.4 : 10.70 : 6.01 ASSIGNMENT : 13.037 : 49.61 : 12.87 IDEA : 2384.5 : 36.47 : 10.83 HUFFMAN : 1306.7 : 36.24 : 11.57 NEURAL NET : 13.125 : 21.08 : 8.87 LU DECOMPOSITION : 509.54 : 26.40 : 19.06 ==========================ORIGINAL BYTEMARK RESULTS========================== INTEGER INDEX : 39.697 FLOATING-POINT INDEX: 18.124 Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0 ==============================LINUX DATA BELOW=============================== CPU : Dual ARMv7 Processor rev 1 (v7l) L2 Cache : OS : Linux 4.4.0-g890886b-dirty C compiler : gcc 4.9.2 (Debian 4.9.2-10) MEMORY INDEX : 10.055 INTEGER INDEX : 9.795 FLOATING-POINT INDEX: 10.052 Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38APU1C:
TEST : Iterations/sec. : Old Index : New Index : : Pentium 90* : AMD K6/233* --------------------:------------------:-------------:------------ NUMERIC SORT : 390.28 : 10.01 : 3.29 STRING SORT : 34.908 : 15.60 : 2.41 BITFIELD : 1.8518e+08 : 31.77 : 6.64 FP EMULATION : 127.84 : 61.35 : 14.16 FOURIER : 8835.5 : 10.05 : 5.64 ASSIGNMENT : 8.3156 : 31.64 : 8.21 IDEA : 2209.4 : 33.79 : 10.03 HUFFMAN : 911.99 : 25.29 : 8.08 NEURAL NET : 15.384 : 24.71 : 10.40 LU DECOMPOSITION : 435.95 : 22.58 : 16.31 ==========================ORIGINAL BYTEMARK RESULTS========================== INTEGER INDEX : 26.089 FLOATING-POINT INDEX: 17.767 Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0 ==============================LINUX DATA BELOW=============================== CPU : Dual AuthenticAMD AMD G-T40E Processor 1000MHz L2 Cache : 512 KB OS : Linux 3.14-2-amd64 C compiler : gcc 4.9.1 (Debian 4.9.1-4) libc : MEMORY INDEX : 5.085 INTEGER INDEX : 7.836 FLOATING-POINT INDEX: 9.854 Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38Je videt, ze v single thread ma Omnia navrch proti APU1, zhruba v pomeru frekvenci. Je pravda. ze APU2 ma novejsi jadra, nicmene pochybuju, ze by v AMD natolik zvedli vykon na MHz, aby APU2 prekonala Omnii v single thread vykonu. Rychlejsi pamet u APU2 (proti APU1) by mohla pomoci. Pravda, APU2 ma dvojnasobek jader, ale je otazka, zda se pri routingu vyuziji. Pokud vim, tak az high-end inteli sitovky umi rozkladat provoz na vic interruptu/vic jader, low-end inteli sitovky v tom ohledu moc nepomahaji.
root@apu2c4:/tmp/nbench-byte-2.2.3# ./nbench
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)
TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 307.65 : 7.89 : 2.59
STRING SORT : 124.24 : 55.51 : 8.59
BITFIELD : 1.3911e+08 : 23.86 : 4.98
FP EMULATION : 102.62 : 49.24 : 11.36
FOURIER : 7916 : 9.00 : 5.06
ASSIGNMENT : 7.117 : 27.08 : 7.02
IDEA : 1749.9 : 26.76 : 7.95
HUFFMAN : 735.63 : 20.40 : 6.51
NEURAL NET : 17.44 : 28.02 : 11.78
LU DECOMPOSITION : 391.95 : 20.30 : 14.66
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 25.800
FLOATING-POINT INDEX: 17.236
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : 4 CPU AuthenticAMD AMD GX-412TC SOC 1000MHz
L2 Cache : 2048 KB
OS : Linux 4.9.0-1-amd64
C compiler : gcc version 6.3.0 20170205 (Debian 6.3.0-6)
libc : libc-2.24.so
MEMORY INDEX : 6.700
INTEGER INDEX : 6.248
FLOATING-POINT INDEX: 9.560
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.
root@apu2c4:/tmp/nbench-byte-2.2.3#
time sysbench --test=cpu --num-threads=2 --debug=on --cpu-max-prime=50000 run sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 2 Debug mode enabled. Doing CPU performance benchmark Threads started! DEBUG: Runner thread started (1)! DEBUG: Runner thread started (0)! Done. Maximum prime number checked in CPU test: 50000 Test execution summary: total time: 435.8952s total number of events: 10000 total time taken by event execution: 871.7003 per-request statistics: min: 86.93ms avg: 87.17ms max: 113.15ms approx. 95 percentile: 87.40ms Threads fairness: events (avg/stddev): 5000.0000/11.00 execution time (avg/stddev): 435.8502/0.04 DEBUG: Verbose per-thread statistics: real 7m15.908s user 14m28.988s sys 0m1.348s DEBUG: thread # 0: min: 0.0871s avg: 0.0874s max: 0.1132s events: 4989 DEBUG: total time taken by even execution: 435.8099s DEBUG: thread # 1: min: 0.0869s avg: 0.0870s max: 0.0990s events: 5011 DEBUG: total time taken by even execution: 435.8904sTo vychazi az podezrele jinak.
root@apu2c4:~# time $(i=0; while((i<1000000)); do((i++)); done)
real 0m26.699s
user 0m26.532s
sys 0m0.128s
2:
root@apu2c4:~# cd /tmp
root@apu2c4:/tmp# wget http://www.netlib.org/benchmark/linpackc.new &> /dev/null
root@apu2c4:/tmp# mv linpackc.new linpack.c
root@apu2c4:/tmp# gcc linpack.c -o linpack -lm
root@apu2c4:/tmp# ./linpack
Enter array size (q to quit) [200]:
Memory required: 315K.
LINPACK benchmark, Double precision.
Machine precision: 15 digits.
Array size 200 X 200.
Average rolled and unrolled performance:
Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS
----------------------------------------------------
64 0.93 88.10% 2.79% 9.11% 103953.284
128 1.85 88.18% 2.79% 9.03% 104315.021
256 3.70 88.18% 2.81% 9.01% 104373.862
512 7.41 88.14% 2.81% 9.04% 104294.087
1024 14.84 88.15% 2.80% 9.05% 104192.151
Enter array size (q to quit) [200]: ^C
turris ~ # time $(i=0; while((i<1000000)); do((i++)); done) real 0m18.464s user 0m18.460s sys 0m0.000s
LINPACK benchmark, Double precision. Machine precision: 15 digits. Array size 200 X 200. Average rolled and unrolled performance: Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 64 0.85 87.14% 2.75% 10.12% 114985.686 128 1.70 87.12% 2.75% 10.13% 115008.555 256 3.40 87.13% 2.75% 10.13% 114991.741 512 6.80 87.13% 2.75% 10.13% 115000.467 1024 13.61 87.13% 2.75% 10.13% 114997.608
$ time $(i=0; while((i<1000000)); do((i++)); done) real 0m38.754s user 0m37.496s sys 0m0.012s2:
$ ./linpackc Enter array size (q to quit) [200]: Memory required: 315K. LINPACK benchmark, Double precision. Machine precision: 15 digits. Array size 200 X 200. Average rolled and unrolled performance: Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 16 0.58 86.17% 2.77% 11.06% 42575.728 32 1.16 86.13% 2.76% 11.11% 42634.132 64 2.31 86.20% 2.71% 11.09% 42703.483 128 4.64 86.18% 2.73% 11.09% 42629.407 256 9.27 86.18% 2.73% 11.10% 42641.475 512 18.53 86.15% 2.74% 11.11% 42683.515 Enter array size (q to quit) [200]: ^CPokiaľ má to APU približne dvojnásobný výkon oproti vyše desať rokov starému notebooku taktovanému na 800MHz, tak je niečo zle. Minimálne tam chýba optimalizácia jedného desaťročia.
Pokiaľ má to APU približne dvojnásobný výkon oproti vyše desať rokov starému notebooku taktovanému na 800MHz, tak je niečo zle.Ani ne. On single-thread vykon/MHz zas tolik neroste. Kdyz srovnam AMD a Intel procesory z 2008 a z 2016, tak v obou pripadech mi vyjde narust cca 1.5×. Spis roste energeticka efektivita (a tedy klesa odpadni teplo), takze je mozne pouzit vyssi frekvence (coz take narazi na sve limity) a dat tam vic vypocetnich jader. Jinak ten procesor v APU1 (G-T40E) je z roku 2011, ten v APU2 (GX-412TC) z 2014.
To APU2 má 1.2GHz, nie 1GHzJak na webu PC Engines, tak ve vystupu nbench od rofla par postu vys je hodnota 1 GHz.
$ time $(i=0; while((i<1000000)); do((i++)); done) real 0m6.249s user 0m6.244s sys 0m0.000sPodľa tvojich slov by mal byť ani nie dvojnásobný. 2) Výkon pri 1.7GHz je len 3x vyšší ako pri tom APU2C4 (je jedno či na 1GHz aleno 1.2GHz):
$ ./linpackc Enter array size (q to quit) [200]: Memory required: 315K. LINPACK benchmark, Double precision. Machine precision: 15 digits. Array size 200 X 200. Average rolled and unrolled performance: Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 128 0.58 88.62% 3.04% 8.34% 330304.995 256 1.23 88.54% 3.15% 8.31% 312131.188 512 2.47 88.95% 2.98% 8.07% 309826.395 1024 4.59 88.56% 3.03% 8.40% 334665.608 2048 9.21 88.58% 3.02% 8.40% 333501.195 4096 18.76 88.59% 3.05% 8.36% 327128.950 Enter array size (q to quit) [200]: ^CPri tomto druhom teste som nemal počítač v kľude. Pozeral som HD film ktorý mi ukusoval 1/4 výkonu každého jadra. Vypínať si film len kvôli tebe nebudem. Takže, v čom je to APU podľa teba vôbec lepšie? Výkon a ani možnosť nainštalovať čo chceš to niesú.
$ time $(i=0; while((i<1000000)); do((i++)); done) real 0m9.128s user 0m9.116s sys 0m0.000s
Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 128 0.69 88.23% 2.83% 8.93% 280323.060 256 1.38 88.24% 2.84% 8.92% 280428.374 512 2.75 88.25% 2.82% 8.93% 280558.729 1024 5.50 88.25% 2.82% 8.93% 280639.800 2048 11.00 88.25% 2.82% 8.93% 280638.988
$ time $(i=0; while((i<1000000)); do((i++)); done) real 0m24.485s user 0m24.480s sys 0m0.000s
Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 32 0.59 85.50% 2.67% 11.83% 84185.630 64 1.18 85.50% 2.66% 11.84% 84596.278 128 2.36 85.44% 2.71% 11.86% 84538.873 256 4.72 85.51% 2.66% 11.83% 84496.754 512 9.41 85.50% 2.66% 11.84% 84729.267 1024 18.80 85.49% 2.65% 11.86% 84868.882
$ time $(i=0; while((i<1000000)); do((i++)); done) real 0m24.023s user 0m24.020s sys 0m0.000s
Reps Time(s) DGEFA DGESL OVERHEAD KFLOPS ---------------------------------------------------- 32 0.87 89.18% 2.70% 8.12% 54809.601 64 1.75 89.19% 2.69% 8.12% 54808.780 128 3.49 89.18% 2.70% 8.12% 54803.159 256 6.98 89.19% 2.70% 8.12% 54808.857 512 13.96 89.19% 2.69% 8.12% 54810.391
Takže mu vybavili downgrade?Ano, myslim ze na APU2 je podtaktovany.
Podľa tvojich slov by mal byť ani nie dvojnásobný.Me srovnani se tykalo procesoru stejne kategorie a stejneho vyrobce, pouze s odstupem mnoha let. Nesrovnavam Intel vs AMD ani mid-range low-power vs embedded. Jinak najit reprezentatnivni benchmark je problem, ale pouzivat jako benchmark smycku v Bashi je dost mimo.
Takže, v čom je to APU podľa teba vôbec lepšie? Výkon a ani možnosť nainštalovať čo chceš to niesú.Proti Omnii? Pokud vim, tak jsem tu netvrdil, ze by bylo. Naopak, muj prvni post v tom oponoval roflovi ("Je videt, ze v single thread ma Omnia navrch proti APU1"). Ja myslim, ze s APU1 je Omnia vicemene nastejno (a preference zavisi na detailech), APU2 je pak lepsi kvuli dvojnasobku jader a akceleraci AES. Co se tyce ceny, tam APU vyjde trochu levneji (po zapocitani srovnatelnych komponent), ale ten rozdil je daleko mensi, nez ho odpurci Omnie prezentuji. Jinak co jsem vcera koukal, tak sitovka i210 v APU2C4 by mela umet rozkladat prichozi zatez do ctyrech front (na ctyrech jadrech).
Takže, v čom je to APU podľa teba vôbec lepšie? Výkon a ani možnosť nainštalovať čo chceš to niesú.
Ale jsou. Už jenom proto, že APU je x86, takže strčíš mSATA SSD do adaptéru, připojíš do x86 PC, dáš debootstrap a máš nainstalováno. Neřešíš architekturu, neřešíš sériový port, atd.
root@apu2c4:~# time sysbench --test=cpu --num-threads=4 --debug=on --cpu-max-prime=50000 run
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Debug mode enabled.
Doing CPU performance benchmark
DEBUG: Runner thread started (0)!
DEBUG: Runner thread started (1)!
DEBUG: Runner thread started (3)!
DEBUG: Runner thread started (2)!
Threads started!
Done.
Maximum prime number checked in CPU test: 50000
Test execution summary:
total time: 66.5077s
total number of events: 10000
total time taken by event execution: 265.9634
per-request statistics:
min: 24.01ms
avg: 26.60ms
max: 55.67ms
approx. 95 percentile: 27.26ms
Threads fairness:
events (avg/stddev): 2500.0000/20.32
execution time (avg/stddev): 66.4908/0.01
DEBUG: Verbose per-thread statistics:
DEBUG: thread # 0: min: 0.0240s avg: 0.0264s max: 0.0461s events: 2517
DEBUG: total time taken by even execution: 66.5043s
DEBUG: thread # 1: min: 0.0247s avg: 0.0264s max: 0.0505s events: 2521
DEBUG: total time taken by even execution: 66.4963s
DEBUG: thread # 2: min: 0.0251s avg: 0.0269s max: 0.0557s events: 2471
DEBUG: total time taken by even execution: 66.4718s
DEBUG: thread # 3: min: 0.0250s avg: 0.0267s max: 0.0487s events: 2491
DEBUG: total time taken by even execution: 66.4910s
real 1m6.526s
user 4m23.516s
sys 0m0.084s
root@apu2c4:~#
memory:
root@apu2c4:~# time sysbench --test=memory --debug=on --memory-block-size=1M --memory-total-size=10G run
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Debug mode enabled.
Doing memory operations speed test
Memory block size: 1024K
Memory transfer size: 10240M
Memory operations type: write
Memory scope type: global
Threads started!
DEBUG: Runner thread started (0)!
Done.
Operations performed: 10240 ( 1404.84 ops/sec)
10240.00 MB transferred (1404.84 MB/sec)
Test execution summary:
total time: 7.2891s
total number of events: 10240
total time taken by event execution: 7.2829
per-request statistics:
min: 0.54ms
avg: 0.71ms
max: 1.75ms
approx. 95 percentile: 0.81ms
Threads fairness:
events (avg/stddev): 10240.0000/0.00
execution time (avg/stddev): 7.2829/0.00
DEBUG: Verbose per-thread statistics:
DEBUG: thread # 0: min: 0.0005s avg: 0.0007s max: 0.0017s events: 10240
DEBUG: total time taken by even execution: 7.2829s
real 0m7.306s
user 0m7.156s
sys 0m0.132s
root@apu2c4:~#
host:
root@apu2c4:~# hostnamectl status
Static hostname: apu2c4
Icon name: computer-desktop
Chassis: desktop
Machine ID: 50cfeffb5d36426e95a8da2e5b885c84
Boot ID: d93b14abb35d493bb0f58171a4df5025
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-1-amd64
Architecture: x86-64
lspci:
root@apu2c4:~# lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1566
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 156b
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.5 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:08.0 Encryption controller: Advanced Micro Devices, Inc. [AMD] Device 1537
00:10.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI Controller (rev 11)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [IDE mode] (rev 40)
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 39)
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 42)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 11)
00:14.7 SD Host controller: Advanced Micro Devices, Inc. [AMD] FCH SD Flash Controller (rev 01)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1580
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1581
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1582
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1583
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1584
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1585
01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
03:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
04:00.0 Network controller: Qualcomm Atheros AR958x 802.11abgn Wireless Network Adapter (rev 01)
root@apu2c4:~#
root@apu2c4:~#
root@apu2c4:~#
root@apu2c4:~# lsusb
Bus 001 Device 002: ID 0438:7900 Advanced Micro Devices, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@apu2c4:~#