Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.
SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.
Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační
… více »PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují
… více »GIMP 3.2 byl oficiálně vydán (Mastodon, 𝕏). Přehled novinek v poznámkách k vydání.
FRANK OS je open-source operační systém pro mikrokontrolér RP2350 (s FRANK M2 board) postavený na FreeRTOS, který přetváří tento levný čip na plně funkční počítač s desktopovým uživatelským rozhraním ve stylu Windows 95 se správcem oken, terminálem, prohlížečem souborů a knihovnou aplikací, ovládaný PS/2 myší a klávesnicí, s DVI video výstupem. Otázkou zůstává, zda by 520 KB SRAM stačilo každému 😅.
Administrativa amerického prezidenta Donalda Trumpa by měla dostat zhruba deset miliard dolarů (asi 214 miliard Kč) za zprostředkování dohody o převzetí kontroly nad aktivitami sociální sítě TikTok ve Spojených státech.
Projekt Debian aktualizoval obrazy stabilní větve „Trixie“ (13.4). Shrnuje opravy za poslední dva měsíce, 111 aktualizovaných balíčků a 67 bezpečnostních hlášení. Opravy se týkají mj. chyb v glibc nebo webovém serveru Apache.
Máme implementovanou spoustu věcí v multithreadu a málokdo toho využívá. To, co mt není, je možné někdy pustit vícekrát vedle sebe a přesto toho málokterý skript využívá... Cílem zápisku je pár lidem maličko rozšířit obzory.
Koupil jsem si notes s procesorem Core i3-350M (2x2.26 GHz + HT), je to můj první Intel a chtěl jsem vyzkoušet jak moc je užitečný HT a jestli se při multithreadingu trvání některých operací zkrátí na míň než poloviční dobu.
Možná znáte lbzip2, multithreadovou implementaci bzip2, která je kompatibilní s původním bzip2. Totéž platí o pigz vs. gzip. Díky tomu lze tyto programy rovnou použít jako "(de)kompresory" pro tar.
Stojí to za to? Posuďte sami. Testy jsou prováděny v ramdisku a RAM jsou dostatečně rychlé (1066 MHz DDR3).
## komprese, 1 vlákno root@archie /tmp/ram # time tar jcf \ linux-2.6.35-rc6.tar.bz2 linux-2.6.35-rc6/ real 1m12.235s user 1m11.982s sys 0m0.880s ## komprese, 4 vlákna root@archie /tmp/ram # time tar -I lbzip2 -cf \ linux-2.6.35-rc6-lbz2.tar.bz2 linux-2.6.35-rc6/ real 0m29.131s user 1m53.979s sys 0m1.190s ## dekomprese, 1 vlákno root@archie /tmp/ram # rm -fr linux-2.6.35-rc6 ; \ time tar -jxf linux-2.6.35-rc6.tar.bz2 real 0m23.064s user 0m22.972s sys 0m1.450s ## dekomprese, 4 vlákna root@archie /tmp/ram # rm -fr linux-2.6.35-rc6 ; \ time tar -I lbzip2 -xf linux-2.6.35-rc6-lbz2.tar.bz2 real 0m11.928s user 0m44.347s sys 0m1.520s
Podobný je to s gzipem a pigz.
## komprese, 1 vlákno root@archie /tmp/ram # time tar -zcf \ linux-2.6.35-rc6.tar.gz linux-2.6.35-rc6/ real 0m20.824s user 0m20.782s sys 0m0.697s ## komprese, 4 vlákna root@archie /tmp/ram # time tar -I pigz -cf \ linux-2.6.35-rc6-pigz.tar.gz linux-2.6.35-rc6/ real 0m7.757s user 0m29.671s sys 0m0.793s ## dekomprese, 1 vlákno root@archie /tmp/ram # rm linux-2.6.35-rc6 -fr; \ time tar -zxf linux-2.6.35-rc6.tar.gz real 0m3.963s user 0m4.003s sys 0m0.857s ## dekomprese, 4 vlákna root@archie /tmp/ram # rm linux-2.6.35-rc6 -fr; \ time tar -I pigz -xf linux-2.6.35-rc6.tar.gz real 0m2.226s user 0m2.913s sys 0m0.923s
makepkg v Arch Linuxu vytváří balíčky a může mu to trvat dost dlouho i na nadupaný mašině... je velmi jednoduché si tento shellový skript otevřít v $EDITOR a upravit ho tak, aby používal pigz či lbzip2. lzma/xz bohužel mt implementaci nemá (afaik).
Ještě dodám jeden tip. Nástroj xjobs umožňuje spustit daný příkaz paralelně dle zadání. Nemá cenu abych to nějak detailně popisoval, ukážu vám jak převést všechny wavy na mp3 v aktuálním adresáři a to tak, že ve více vláknech.
for wav in *.[Ww][Aa][Vv]
do
echo lame -h --preset standard "\"$wav\"" "\"${wav%.*}.mp3\""
done | xjobs -N
Máte-li v názvech souborů mezery či jiné paznaky, xjobs musí dostat uvozovky kolem argumentů tak, jak jsem to předvedl, jinak se to podělá. Výstup potom vypadá takto:
### started job #1, pid 11329: /usr/bin/lame -h --preset standard 101.wav 101.mp3 ### started job #2, pid 11330: /usr/bin/lame -h --preset standard 102.wav 102.mp3 ### started job #3, pid 11331: /usr/bin/lame -h --preset standard 103.wav 103.mp3 ### started job #4, pid 11332: /usr/bin/lame -h --preset standard 104.wav 104.mp3 ### job #1 (/usr/bin/lame -h --preset standard 101.wav 101.mp3), pid 11329, exitcode 0, real: 27.3 secs. ### started job #5, pid 11348: /usr/bin/lame -h --preset standard 105.wav 105.mp3 ### job #3 (/usr/bin/lame -h --preset standard 103.wav 103.mp3), pid 11331, exitcode 0, real: 31.47 secs. ### started job #6, pid 11352: /usr/bin/lame -h --preset standard 106.wav 106.mp3 ### job #2 (/usr/bin/lame -h --preset standard 102.wav 102.mp3), pid 11330, exitcode 0, real: 31.7 secs. ### started job #7, pid 11353: /usr/bin/lame -h --preset standard 107.wav 107.mp3 ### job #4 (/usr/bin/lame -h --preset standard 104.wav 104.mp3), pid 11332, exitcode 0, real: 32.01 secs. ### started job #8, pid 11354: /usr/bin/lame -h --preset standard 108.wav 108.mp3 ### job #5 (/usr/bin/lame -h --preset standard 105.wav 105.mp3), pid 11348, exitcode 0, real: 29.73 secs. ### started job #9, pid 11370: /usr/bin/lame -h --preset standard 109.wav 109.mp3 ### job #8 (/usr/bin/lame -h --preset standard 108.wav 108.mp3), pid 11354, exitcode 0, real: 27 secs. ### started job #10, pid 11374: /usr/bin/lame -h --preset standard 110.wav 110.mp3 ### job #7 (/usr/bin/lame -h --preset standard 107.wav 107.mp3), pid 11353, exitcode 0, real: 29.69 secs. ### started job #11, pid 11375: /usr/bin/lame -h --preset standard 111.wav 111.mp3 ### job #10 (/usr/bin/lame -h --preset standard 110.wav 110.mp3), pid 11374, exitcode 0, real: 30.92 secs. ### job #6 (/usr/bin/lame -h --preset standard 106.wav 106.mp3), pid 11352, exitcode 0, real: 59.85 secs. ### job #11 (/usr/bin/lame -h --preset standard 111.wav 111.mp3), pid 11375, exitcode 0, real: 32.18 secs. ### job #9 (/usr/bin/lame -h --preset standard 109.wav 109.mp3), pid 11370, exitcode 0, real: 41.95 secs.
Něco podobného jako xjobs umí i standardní nástroj xargs, ale má jistá omezení, která nelze obejít, proto tam kde to lze je lepší použít xjobs.
Tiskni
Sdílej:
Stojí to za to? Posuďte sami.cele zle
par pastnutych vypisov z timeCo to zas meleš?
par pastnutych vypisov z time? bez akychkolvek zaverov?To jako že výpis z programu time není závěr a ještě ho potřebuje v písemné formě nebo jak? A netrpí ten člověk náhodou nějakou mentální poruchou?
Nástroj xjobs umožňuje spustit daný příkaz paralelně dle zadání.xargs taky. a samozřejmě make.
make je jasnej, ten nebýt paralelní, tak jsem asi fakt v dobách Gentoo kompiloval 100 % času
... v dobách Gentoo ...A teď je co za doba? :o)
root@archie /tmp/ram # time tar cf - linux-2.6.35-rc6/ | \ lbzip2 -n 2 > linux-2.6.35-rc6.tar.bz2.2 real 1m15.019s user 1m14.455s sys 0m1.363s root@archie /tmp/ram # time tar cf - linux-2.6.35-rc6/ | \ lbzip2 -n 4 > linux-2.6.35-rc6.tar.bz2.4 real 0m53.931s user 1m47.243s sys 0m1.093s
real 0m55.491s user 1m47.746s sys 0m1.577sže by zde HT bylo na prd?
subprocess.call('tar cpf - linux-2.6.33 | pigz -p ' + str(cpus) + ' >linux.2.6.33.' + str(cpus) + '.tar.gz',shell=True)
Prinos MT je tam videt (27s jedno jadro, 2.7s 15 jader).
Cas klesal do 8 pouzitych jader docela rychle, pak to zacalo hodne zpomalovat, tak na prvni pohled HT asi tak moc nepomohlo. Treba to ale zpomaluje neco jineho (tar to nebrzdi, ten zvladne udelat cely archiv behem 0.75s)
1: 26.948592 2: 12.978853 3: 8.386309 4: 6.496362 5: 5.147390 6: 4.600060 7: 3.709489 8: 3.520402 9: 3.389651 10: 3.212332 11: 3.044059 12: 2.927873 13: 2.852460 14: 2.741924 15: 2.676069 16: 2.721835 17: 2.764356 18: 2.782042 19: 2.759746 20: 2.776046