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 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 7
    včera 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 3
    včera 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    30.12. 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    30.12. 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    30.12. 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    NUKE GAZA! 🎆 | Komentářů: 14
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    NUKE GAZA! 🎆 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    NUKE GAZA! 🎆 | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (29%)
     (1%)
     (28%)
     (1%)
     (1%)
     (1%)
     (10%)
     (10%)
     (18%)
    Celkem 224 hlasů
     Komentářů: 22, poslední včera 15:34
    Rozcestník

    Dotaz: strojove epsilon a 32bit OS vs. 64bit OS

    7.3.2006 13:10 oxymoron
    strojove epsilon a 32bit OS vs. 64bit OS
    Přečteno: 737×
    zaujimalo by ma cim to je ze ked skomilujem a spustim toto :
    #include <float.h>
    #include <stdio.h>
    
    int main(int argc, char* argv[])
    {
    
    
            double eps=1.0;
            while(1) {
                    eps=eps/2.0;
                    if( (1.0 + (eps/2.0)) == 1.0 ) break;
            }
            printf("vypocitane eps= %.67f\n",eps);
            printf("konstanta DBL = %.67f\n",DBL_EPSILON);
            
            return 0;
    }
    
    pod gentoo 32bit vysledok je :
    32bit Linux OS
    0.00000000000000000010842021724855044340074528008699417114257812500     -vypocitane eps
    0.00000000000000022204460492503130808472633361816406250000000000000     -konstanta DBL_EPSILON
    
    a pod gentoo 64bit vysledok je :
    0.00000000000000022204460492503130808472633361816406250000000000000     -vypocitane eps
    0.00000000000000022204460492503130808472633361816406250000000000000     -konstanta DBL_EPSILON
    
    nemalo by byt pod 64bit strojove epsilon mensie ako pod 32bit?

    Odpovědi

    7.3.2006 16:21 Lubos
    Rozbalit Rozbalit vše Re: strojove epsilon a 32bit OS vs. 64bit OS
    Proc je tam ten rozdil nereknu, ale jde o double precision floating point operaci, na delce integer registru cpu tim padem kulovy zalezi. Takze jde o implementaci knihoven pro double, tudiz ask your c libraries author :)
    7.3.2006 16:26 Lubos
    Rozbalit Rozbalit vše Re: strojove epsilon a 32bit OS vs. 64bit OS
    Mozna bych to radeji zkusil zapsat takto:
    
    double eps=1.0;
    double jedna=1.0;
    double dva=2.0;
    while(1)
     {
      eps=eps/dva;
      if( (jedna + (eps/dva)) == jedna ) break;
     }
    
    Schvalne, co to spocita takhle.
    7.3.2006 19:04 oxymoron
    Rozbalit Rozbalit vše Re: strojove epsilon a 32bit OS vs. 64bit OS
    je to to iste :)
    7.3.2006 21:57 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: strojove epsilon a 32bit OS vs. 64bit OS
    Zkuste se podívat na výsledný kód (použijte -S). Zatímco 32-bitová verze používá registry koprocesoru a nechává koprocesor provést i porovnání, 64-bitová pracuje s registry %xmm0 a spol. Problém je pravděpodobně v tom, že koprocesor interně pracuje s vyšší přesností, než jakou následně prezentuje ven (pokud si dobře vzpomínám, interně koprocesor pracuje s 96-bitovými hodnotami, zatímco typ long double je pouze 64-bitový). Tomu by nasvědčovala i skutečnost, že pokud si výraz (1.0 + (eps/2.0)) necháte uložit do proměnné a tu porovnáte s jedničkou, vyjde vám to na obou platformách stejně.

    Aneb další příklad na známý poznatek, že porovnávat reálná čísla na rovnost znamená koledovat si o naprosto nedeterministické chování programu.

    7.3.2006 22:02 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: strojove epsilon a 32bit OS vs. 64bit OS
    Oprava, mělo tam být "…zatímco typ double je pouze 64-bitový", což je pravda (pro gcc 4.0.2) ve 32-bitové i 64-bitové verzi. Typ long double je různý: s -m32 96-bitový a s -m64 128-bitový.

    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.