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í
×

    dnes 15:22 | Humor

    Je tu opět apríl. Společnost Razer představila holící myš Razer Razer. Vědci z CERNu navrhují 25hodinový den. Společnost Elgato představila kolekci Elgato Home. Společnost Nothing Beer (5.1%). Další aprílové novinky například na April Fools' Day On The Web.

    Ladislav Hagara | Komentářů: 0
    dnes 12:55 | Komunita

    Před 25 lety byl uvolněn zdrojový kód balíku aplikací Netscape Communicator jako open source (např. dobová zpráva CNET), z čehož vzešel projekt Mozilla – ten si výročí nyní připomíná.

    Fluttershy, yay! | Komentářů: 1
    včera 17:11 | Zajímavý software

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Deep Sky Derelicts.

    Ladislav Hagara | Komentářů: 4
    včera 14:22 | Nová verze

    Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.5.0. Přináší podporu platformy Mediatek mt8188 nebo nový audio modul ARIA (Automatic Regressive Input Amplifier Module).

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Nová verze

    Byla vydána nová verze 5.8 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu. Ke stažení budou oficiální binární balíčky pro Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, CentOS 7, Amazon Linux 2 a Red Hat Universal Base Image 9.

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

    Byla vydána nová verze 1.77 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.77 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 6
    včera 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 23.04 s kódovým názvem Lunar Lobster. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 23.04 mělo vyjít 20. dubna 2023.

    Ladislav Hagara | Komentářů: 0
    30.3. 17:44 | Nová verze

    Linuxová distribuce OpenMandriva byla vydána ve verzi ROME 23.03. Název ROME říká, že se jedná se o průběžně aktualizovanou (rolling) edici. Stabilní edice nese název Rock, aktuálně OpenMandriva Lx 4.3 Dysprosium.

    Ladislav Hagara | Komentářů: 4
    30.3. 17:33 | Pozvánky

    Tento pátek od 14:00 proběhne v Brně na FI MUNI konference DevConf Mini. Na programu je celá řada zajímavých přednášek od testování releasů Fedory, přes super počítače nebo Big Data, až po závody autonomních aut. Konferenci bude možné sledovat i na online streamu.

    joejoe | Komentářů: 0
    30.3. 15:00 | Zajímavý článek

    Minulý týden proběhla hackerská soutěž Pwn2Own Vancouver 2023. Adobe Reader, Microsoft SharePoint, Oracle VirtualBox, Tesla, Ubuntu Desktop, Windows 11, macOS, Microsoft Teams, VMWare Workstation. Vše hacknuto. Synacktiv získal 530 000 dolarů a Teslu Model 3.

    Ladislav Hagara | Komentářů: 17
    Chodí vám kočka nebo jiné domácí zvíře po klávesnici?
     (56%)
     (11%)
     (6%)
     (11%)
     (17%)
    Celkem 18 hlasů
     Komentářů: 1, poslední dnes 16:04
    Rozcestník


    Dotaz: c, rychlost cteni

    16.5.2010 15:31 O_x
    c, rychlost cteni
    Přečteno: 712×
    Zdravim, mam program v c a potreboval bych nejakym zpusobem zmerit propustnost v Mb/s cteni z disku.

    Řešení dotazu:


    Odpovědi

    16.5.2010 16:09 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Gratulujeme. A ... problém je v čom?
    16.5.2010 16:12 O_x
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    no nevim jakym zpusobem to zmerit
    16.5.2010 18:58 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Použiješ funkciu

    int gettimeofday(struct timeval *tv, struct timezone *tz);

    zavoláš ju pred začiatkom čítania a po skončení čítania a tie hodnoty odčítaš. Pokiaľ sa čítanie robí po malých kúskoch a je roztrúsené na mnohých veciach, tak to bude zložitejšie. Možno by som využiť profiler. Na druhej strane ak ťa zaujíma skutočne len rýchlosť prenosu dát a nie to ako rýchlo ich dokážeš spracovať, tak by mohol stačiť hdparm, nie?
    Jardík avatar 28.5.2010 16:12 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    To si děláte srandu ... uživatel změní čas a dostane špatný výsledek.
    Věřím v jednoho Boha.
    28.5.2010 20:16 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Myslíš, že v situácii popísanej v otázke je pravdepodobné, že počas merania nejaký užívateľ zmení čas?
    Jardík avatar 28.5.2010 20:48 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ano. Nebo např. dojde k přestupné sekundě a za sekundu se pár megabajtů přečte a celkový výsledek to znatelně ovlivní.
    Věřím v jednoho Boha.
    28.5.2010 21:44 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Hľadáš problém za každú cenu. Priestupná sekunda sa vyskytuje raz, za niekoľko rokov a uberá/vkladá sa o polnoci a nepovažujem za pravdepodobné, že by sa ono meranie konalo práve vtedy. Btw, to už si si radšej mohol spomenúť na zimný/letný čas.

    Keď ťa to uspokojí, tak áno, technicky máš pravdu. Z praktického hľadiska je, ale mnou navrhnutý spôsob celkom použiteľný a o opaku ma môže presvedčiť len autor pôvodnej otázky.
    29.5.2010 00:15 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Navrhni řešení nezávislé na změně času.
    Jardík avatar 29.5.2010 00:38 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ve Windows je funkcička GetTickCount64() s rozlišením +- 10ms, přetejká ale po pěti miliónech letech, to je pravda.
    V Linuxu je něco podobného
    #include <sys/times.h>
    
    clock_t times(struct tms *buf);
    
    Návratová hodnota v linuxu je počet ticků od bootu. Pomocí sysconf(_SC_CLK_TCK) vydělit a máme čas. Bohužel v Linuxu dochází častěji k přetejkání této hodnoty, obzvláště na 32bit systému.
    Věřím v jednoho Boha.
    29.5.2010 14:08 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ano, pro měření od-do se to hodí, v jiffech se v proc udává třeba i čas strávený úlohou v různých stavech (user, system, idle etc.), akorát "počet tiků od bootu" bych tomu neříkal, je to prostě časovač.
    michich avatar 29.5.2010 14:37 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: c, rychlost cteni

    times udává čas CPU procesem spotřebovaný. Pro měření doby čtení z disku je to nepoužitelný údaj, protože CPU se během toho čtení většinou nudí.

    Možná jsi měl na mysli funkci time. Ta ale vrací čas jenom s přeností na celé sekundy, a navíc je stejně zase implementovaná pomocí gettimeofday, která se ti nelíbí.

    Pro čas s vysokým rozlišením a neovlivněný přestupnými sekundami lze použít clock_gettime(CLOCK_MONOTONIC, ...).

    michich avatar 29.5.2010 14:42 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: c, rychlost cteni

    times udává čas CPU procesem spotřebovaný. Pro měření doby čtení z disku je to nepoužitelný údaj, protože CPU se během toho čtení většinou nudí.

    Seknul jsem se. Tohle times sice udává, ale navíc vrací i tu hodnotu, o které psal Jardík. Takže v zásadě použitelná je. I tak je ale lepší použít CLOCK_MONOTONIC
    Jardík avatar 29.5.2010 14:50 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Tak než jsem to dopsal, tak sis toho všiml. BTW clock_gettime je taky dobrý, o tom jsem nevěděl.
    Věřím v jednoho Boha.
    Jardík avatar 29.5.2010 14:47 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Blbost.
    The function times returns the number of clock ticks that have elapsed since an arbitrary point in the past. For Linux this point is the moment the system was booted. This return value may overflow the pos- sible range of type clock_t. On error, (clock_t) -1 is returned, and errno is set appropriately.
    Pokud to pak vydělíš např. počtem ticků za jednotku času, dostaneš čas.
    Věřím v jednoho Boha.
    29.5.2010 21:19 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Blbost by to byla, kdyby se psal rok 2002, ze kterého je ten odkazovaný manuál.

    Ríkám to pořád, nevěřte všemu, co se píše v manuálu a na internetu už vůbec ne. Nikdy nevíte, kdo na vás vytáhne lepší, větší a novější manuál, nebo nedej bože automat. A co teprve takový experiment! ;)
    29.5.2010 21:55 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ten experiment mi vychází jen přibližně, pokud by to bylo jak se píše v mém manuálu:
    On  Linux,  the  "arbitrary point in the past" from which the return value of times()
    is measured has varied across kernel versions.  On Linux 2.4 and earlier this point is the
    moment the system was  booted.   Since  Linux  2.6,  this  point  is
    (2^32/HZ)  -  300 (i.e., about 429 million) seconds before system boot time.
    
    $ uptime
     21:45:02 up 1 day,  4:07,  2 users,  load average: 0.00, 0.03, 0.06
    $ ./a.out
    1441655586, jiffy: 100, HZ: 300
    bash$ bc -l <<<"(1441655586/100-2^32/300+300)/60/60"
    27.86061296296296296296
    Ale mělo by to být 28 hodin a něco, ne 27. Navíc těch manuálových 429 milionů je také divné, to by museli mít HZ 10 a ne obvyklých 100 (dnes spíš i víc). Holt ty manuély... :)
    29.5.2010 22:02 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ups, to jste nereagoval na mne ale na komentář podemnou :) Ano souhlasím že se to dá použít jako časovač (ve smyslu že vrací číslo "since an arbitrary point in the past") a lze to doufejme použít pro měření intervalu, ale čas od bootu to nebude.

    Každopádně bych celkově víc věřil té funkci clock_gettime kterou tu michich zmínil.
    Řešení 1× (Messa)
    Jardík avatar 29.5.2010 23:58 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Ano, clock_gettime vypadá lépe, uznávám. Tak abychom teda odpověděli zadavateli otázky:
    clock_gettime před čtením, čtení X desítek MB dat z disku, clock_gettime po čtení, spočítat rozdíl časů a tím vydělit počet přečtených MB a máme výsledek.
    Věřím v jednoho Boha.
    Josef Kufner avatar 17.5.2010 01:28 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Hello world ! Segmentation fault (core dumped)
    17.5.2010 12:59 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    nebo pv
    17.5.2010 14:26 faha
    Rozbalit Rozbalit vše Re: c, rychlost cteni

    Nebo pokud mate jadro >= 2.6.20 tak lze pouzit utilitky iotop

    http://guichaz.free.fr/iotop/

    17.5.2010 17:38 O_x
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Jo iotop je v pohode. Problem je v tom, ze na tom pc na kterem potrebuji provest mereni nemam prava abych jej mohl nainstalovat.
    17.5.2010 17:23 Ivan
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    sys_times
    28.5.2010 18:21 lok
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Precte par mega:
    int fd = open("/dev/hda", O_RDONLY);
    char buffer[2048];
    int i;
    for(int i = 0; i < 1024 * 50; i++) {
    read(fd, buffer, 2048);
    }
    close(fd);
    
    A potom bud dodelat praci s casem (t1, cteni, t2 = now - t1) anebo to cele zmerit timem a dopocitat si to podle objemu prenesenych dat rucne...
    Jardík avatar 28.5.2010 20:50 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    2 MB? Z toho žádný výsledek vyvodit nemůže, obyč HDD vám dá pár desítek mega za sekundu.
    Věřím v jednoho Boha.
    28.5.2010 21:46 mich | skóre: 16
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    je tam krát 50...ale to je stejně pořád málo.
    je to teď v módě, na žive o tom furt píšou
    Jardík avatar 28.5.2010 23:41 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: c, rychlost cteni
    Jó, tu 50ku jsem přehlédl.
    Věřím v jednoho Boha.

    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.