abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 22:22 | Komunita

Společnost Purism představila kryptografický token Librem Key. Koupit jej lze za 59 dolarů. Token byl vyvinut ve spolupráci se společností Nitrokey a poskytuje jak OpenPGP čipovou kartu, tak zabezpečení bootování notebooků Librem a také dalších notebooků s open source firmwarem Heads.

Ladislav Hagara | Komentářů: 0
včera 20:33 | Nová verze

Společnost NVIDIA oficiálně vydala verzi 10.0 toolkitu CUDA (Wikipedie) umožňujícího vývoj aplikací běžících na jejich grafických kartách. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
včera 20:00 | Upozornění

Příspěvek Jak přežít plánovanou údržbu DNS na blogu zaměstnanců CZ.NIC upozorňuje na historicky poprvé podepsání DNS root zóny novým klíčem dne 11. října 2018 v 18:00. Software, který nebude po tomto okamžiku obsahovat nový DNSSEC root klíč, nebude schopen resolvovat žádná data. Druhým důležitým datem je 1. února 2019, kdy významní výrobci DNS softwaru, také historicky poprvé, přestanou podporovat servery, které porušují DNS standard

… více »
Ladislav Hagara | Komentářů: 5
včera 15:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 156. brněnský sraz, který proběhne v pátek 21. září od 18:00 v restauraci Na Purkyňce na adrese Purkyňova 80.

Ladislav Hagara | Komentářů: 0
včera 13:22 | Nová verze

Alan Griffiths z Canonicalu oznámil vydání verze 1.0.0 display serveru Mir (GitHub, Wikipedie). Mir byl představen v březnu 2013 jako náhrada X serveru a alternativa k Waylandu. Dnes Mir běží nad Waylandem a cílen je na internet věcí (IoT).

Ladislav Hagara | Komentářů: 0
20.9. 22:00 | Nasazení Linuxu
Stabilní aktualizace Chrome OS 69 (resp. Chromium OS), konkrétně 69.0.3497.95, přináší mj. podporu linuxových aplikací. Implementována je pomocí virtualizace, a proto je tato funkce také omezena na zařízení s dostatkem paměti a podporou hardwarové akcelerace, tudíž nejsou podporovány chromebooky s 32bitovými architekturami ARM, či Intel Bay Trail (tzn. bez Intel VT-x).
Fluttershy, yay! | Komentářů: 5
20.9. 21:32 | Zajímavý projekt
Došlo k uvolnění linuxové distribuce CLIP OS, vyvíjené francouzským úřadem pro kybernetickou bezpečnost ANSSI, jako open source. Vznikla za účelem nasazení v úřadech, kde je potřeba omezit přístup k důvěrným datům. Je založená na Gentoo.
Fluttershy, yay! | Komentářů: 1
20.9. 16:00 | Komerce

Zjistěte více o bezpečné a flexibilní architektuře v cloudu! IBM Cloud poskytuje bezpečné úložiště pro Vaše obchodní data s možností škálovatelnosti a flexibilitou ukládání dat. Zároveň nabízí prostředky pro jejich analýzu, vizualizaci, reporting a podporu rozhodování.

… více »
Fluttershy, yay! | Komentářů: 12
20.9. 12:22 | Nová verze

V dubnu letošního roku Mozilla představila webový prohlížeč pro rozšířenou a virtuální realitu Firefox Reality (GitHub). V úterý oznámila vydání verze 1.0. Ukázka na YouTube. Firefox Reality je k dispozici pro Viveport, Oculus a Daydream.

Ladislav Hagara | Komentářů: 2
20.9. 12:00 | Komunita

V srpnu loňského roku společnost Oracle oznámila, že Java EE (Enterprise Edition) bude uvolněna jako open source. O měsíc později bylo rozhodnuto, že tato open source Java EE bude přejmenována a předána Eclipse Foundation. Nové jméno bylo oznámeno v únoru letošního roku. Z Java EE se stala Jakarta EE. Eclipse Foundation včera oznámila dosažení dalšího milníku. Zdrojové kódy aplikačního serveru GlassFish jsou již k dispozici v git repozitářích Eclipse Foundation (GitHub).

Ladislav Hagara | Komentářů: 0
Na optické médium (CD, DVD, BD aj.) jsem naposledy vypaloval(a) data před méně než
 (13%)
 (14%)
 (21%)
 (23%)
 (25%)
 (4%)
 (1%)
Celkem 385 hlasů
 Komentářů: 33, poslední 16.9. 11:55
Rozcestník

Dotaz: shell, skript, rychlost.

10.12.2004 08:32 JaSel | skóre: 17 | blog: kseles
shell, skript, rychlost.
Přečteno: 424×
Zdravim, resim nasledujici problem. Jako vystup z mericiho pristroje (DMA) mam textovy soubor visco.dat, ktery v podstate obsahuje tri sloupce ciselnych dat. Je v nem zapsano celkem 285 skenu po 2048 radcich, oddelenych vzdycky 5 radky balastu. Velikost souboru je asi 20MiB.
bash-2.05b$ wc visco.dat
585105 1754175 19876543 visco.dat
Potreboval bych jako vystup soubor visco.txt, zbaveny toho balastu, aby v nem zbyly jenom ty cisla. Zaroven (pro jistotu, kdyby ten vysledek byl tak velky, ze by ho nasledne Octave neschroupla -- neznam limity Octave, takze jistota je jistota), bych chtel jako vystup rozdeleny do 285 souboru podle tech skenu. Napsal jsem si na to nasledujici skript: #!/bin/bash

# Sortovani viskozitnich dat z DMA
# vzdycky 5 radku srotu a 2048 radku dat;
# v souboru visco.dat, celkem 285x
rm c
declare -i a b c;
a=0;
until [ $a = 285 ]; do
echo $a
b=0;
until [ $b = 2048 ]; do
c=2053*a+b+6;
sed -ne "$c p" visco.dat >> visco.$a;
sed -ne "$c p" visco.dat >> visco.txt;
b=b+1;
done
a=a+1;
done
Skript jsem spustil vcera odpoledne a dneska rano jsem ocekaval vysledek. Prave ted je to nekde u 55. skenu, takze je hotova asi jedna petina. To se mi zda pomerne pomale (Athlon 750MHz, 320MiB RAM, Slackware 9.1, kernel 2.6.9, reiserfs). Podel top basti skript okolo 0.3 % CPU i RAM, sed mezi 2-20 % CPU a cca 5 % RAM. Predpokladam, ze podobnou ulohu budu resit casteji, tak bych se chtel zeptat, jestli nekoho nenapada, jak to trochu urychlit. DMA masina vychrli tenhle soubor dat asi po hodine mereni a to je jeden vzorek. Mozna by to chtelo postavit se k tomu problemu uplne jinak, ja jsem vychazel z toho, co uz znam (a toho neni v oblasti programovani a psani skriptu mnoho). Dik za rady, JS

Odpovědi

10.12.2004 09:56 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
To je fakt drsné řešení ;-) Navíc se děsím, co udělá řádek c=2053*a+b+6; (hint: shell nevyhodnocuje aritmetické výrazy ,jen tak`)

Jde to řešit různě, řešení asi ideově nejpodobnější tvému vypadá (nazvěme to v.sed):
#!/bin/sed -nf
1,2048 wvisco.1
2049,2052 wvisco.txt
2053,4100 wvisco.2
4101,4105 wvisco.txt
...
které použiješ
./v.sed <visco.dat
Samozřejmě, že v.sed je sám také generovatelný, což uděláš jednou nebo když se změní počty.
10.12.2004 10:24 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
Špatně jsem si přečetl zadání. No stejně to bylo kvadratické.
#!/usr/bin/python
import sys
                                      # Zdravím Leoše a děkuji mu za P tagy
base = 'visco'
nd = 2048
nt = 5
                                      # Zdravím Leoše a děkuji mu za P tagy
i = 0
for line sys.stdin:
    if i % (nd + nt) == 0:
        fi = file(base + ('.%03d' % (i/(nd + nt) + 1)), 'w')
    if i % (nd + nt) < nd:
        fi.write(line)
    i += 1
Spojit výsledky catem snad zvládneš.
10.12.2004 10:13 MOJE
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
smarja pano :-)
to bude mockrat projity soubor. Co zkusit misto sedu pouzit proste read a ten soubor tomu skriptu nacpat na standardni vstup. pak ten algoritmus bude vypadat priblizne takhle:
for((i=0;i<285;i++)); do
#nejdriv prectu balast
  for((j=0;j<5;j++)); do
     read radek;
  done 
#pak uzitecne radky
  for((j=0;j<2048;j++)); do
     read radek;
     echo $radek >>visco.$i
     echo $radek >>visco.txt
  done
done
Rekl bych, ze tohle to opravdu dokaze "trochu" urychlit
10.12.2004 10:23 MOJE
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
Jo a jen tak na otestovani na Athlon64 2800 to trvalo necele 2 minuty. Napsane v C by to bylo samozrejme daleko rychlejsi, ale to ma asi cenu tak od 10000 radku na mereni.
10.12.2004 12:00 JaSel | skóre: 17 | blog: kseles
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
Diky za napady.

Vezmu to poporade. Radek c=2053*a+b+6; jsem odzkousel, pocita mi cisla radku, ktere me zajimaji. Python vubec neznam (resp. vim, ze existuje), takze me to nenapadlo. Nejvice se mi libi to posledni reseni -- jeste jednou diky, vyzkousim.

JS
29.12.2004 04:56 Honza_S
Rozbalit Rozbalit vše Re: shell, skript, rychlost.
Kdysi jsem provadel filtrovani textu o velikosti cca 10-50MB textu. Vysledek na P3/950Mhz a 128MB RAM byl kolem 20-50 sekund v jazyce C. Pricemz jsem si vsimnul zajimave veci: texty jsem nechal default zkomprimovat pomoci gzipu - velikost pak byla 3x - 4x mensi, cas zpracovani se zmensil na cca 7-10 sekund (pochopitelne bez casu nutneho ke komprimaci) u puvodniho text. souboru o velikosti 30MB.

Z jineho soudku: na svem serveru mam v provozu php stranku, kde je moznost zobrazeni datoveho provozu za posledni 3 dny (Asi 1000 poslednich radku textoveho logu). Doba zpracovani v bash-i trva asi 7 sekund (generovani grafu), pro prepsani do C tato operace je temer okamzite <0.1s.

Doporucuji u takovychto "silovych" operaci jazyk C, pripadne pouziti zlib, pokud je nutnost opakovaho filtrovani - i pro usporu mista.

Honza

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.