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 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 2
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 20
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 7
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 17
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 65
    26.8. 12:11 | Nová verze

    Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Dotaz: rozdilne prelozene programy na jinak shodnych systemech

    15.12.2015 18:52 Pavel Kozisek
    rozdilne prelozene programy na jinak shodnych systemech
    Přečteno: 528×
    provadim backup mezi servry a soucasti zalohy jsou i adresare, ve kterych se nachazeji aplikace na servru provozovana vcetne vsech zdrojaku , make apod. Oba systemy jsou Centos 5.11 nainstalovane standardne pres repositare. YUM vypise na obou systemech stejny stav. Servry pouzivaji jine hardware (maly server - celeron, velky server - i5).

    Kdyz prelozim make-em nejakou soucast aplikace (v nejakem adresari) , tak vzniknou desitky souboru '.o' a i nekolik executable a knihoven ('.a'). Na druhem servru udelam to same. Kdyz nyni porovnan vznikle kompilaty, tak je 99% identickych , ale vzdy se nekolik prelozenych souboru lisi. To mne trochu znervoznuje. Rsyncem totiz pretahuji soubory vznikle na i5 na ten celeron a ten maly server by v pripade havarie velkeho servru mel fungovat jako nahrada - a mne by se lepe spalo, kdyby ty soubory byly nachlup stejne :-)

    Nevi nekdo, zda je to normalni? Co je pricinou, ze se tech nekolik souboru lisi. (velikost je ale kupodivu stejna - jen obsah je jiny)?

    Odpovědi

    15.12.2015 19:40 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    Normální věc.

    Optimalizace - jiný HW tak přeložené programy budou jiné.

    Musel by jsi to překládat s uplně stejnými volbami bez optimalizací pro CPU atd.....
    xxxs avatar 15.12.2015 20:26 xxxs | skóre: 25 | blog: vetvicky
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    ja neporadim, ale asi by si sem mal hodit s akymi modifikatormi kompilujes. a asi aj verziu make.
    15.12.2015 22:30 Pavel Kozisek
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    diky za nazory, taky jsem si nejdrive myslel, ze to bude mit neco spolecneho s hardware, ale pak jsem to zavrhl, protoze by jinak binarni soubory nebyly vpodstate prenositelne - tedy si myslim.

    Srovnaval jsem pomoci cmp -b ty binarni soubory a narazil jsem na jednu vec u statickych knihoven:

    tam je v hlavicce unix timestamp a to je samozrejme ruzne podle okamziku kompilace. Pomoci ar -D se tomu da zabranit, coz jsem dodneska nevedel - clovek se uci porad.

    U dvou objektovych souuboru jsme take nasel proc to je - je tam radka :

    fprintf(stdout, "This is program version %s.\n", __DATE__);

    ten program je stary 20 let - uprimne receno bych rekl, ze to neni dobra myslenka?

    jinak se to preklada nasledovne:

    gcc -Wall -Wno-pointer-sign -g -c -o parse_language_file.o parse_language_file.c

    to jsem myslel ze je bez optimalizace - kvuli debuggu ??
    16.12.2015 07:40 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    diky za nazory, taky jsem si nejdrive myslel, ze to bude mit neco spolecneho s hardware, ale pak jsem to zavrhl, protoze by jinak binarni soubory nebyly vpodstate prenositelne - tedy si myslim.

    U gcc je potřeba rozlišit dva parametry ovlivňující výsledný kód ve smyslu optimalizace pro konkrétní třídu procesorů. První je "-march", který definuje, jaká instrukční sada se použije; tam skutečně může dojít k tomu, že zvolím-li modernější model, využijí se instrukce, které na starších procesorech mohou chybět a kód tam nepoběží. Druhou je "-mtune", která pouze ovlivní to, jak překladač bude optimalizovat využití registrů a řazení instrukcí podle zvoleného modelu procesoru; na jiném může být výsledný kód o něco méně efektivní než kód optimalizovaný přímo pro něj, ale poběží.

    U obou jde použít hodnotu "native" a pak se použije instrukční sada resp. optimalizace podle procesoru, na kterém je spuštěn překladač. To je ale také jediný případ, kdy výsledný kód závisí na tom, kde se překládalo. Může to být výhodné, když počítáte s tím, že se program bude spoouštět právě jen na tomto počítači (nebo na jiných se stejným modelem procesoru); v jakémkoli jiném je lepší použít nějaké konkrétní hodnoty.

    fprintf(stdout, "This is program version %s.\n", __DATE__);

    ten program je stary 20 let - uprimne receno bych rekl, ze to neni dobra myslenka?

    Není to dobrá myšlenka, ale bohužel se s tím člověk pořád občas potká.

    to jsem myslel ze je bez optimalizace - kvuli debuggu ??

    Těžko říct. Absence optimalizace sice tu a tam může při debugování trochu pomoci, ale rozhodně to není důvod ji vypínat předem.

    16.12.2015 14:25 Zdenda_S
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    fprintf(stdout, "This is program version %s.\n", __DATE__)

    Co je na tom obecne spatne ? pouzivam neco velice podobneho pri vypsani helpu ci verze jen tam pouzivam misto data odkaz na gitovy commit a datum kompilace jen jako version of GCC VERSION at _DATE a popripade i hostname stroje na kterem to bylo prelozeno ...
    16.12.2015 14:42 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech

    Kdyby tam bylo datum toho příslušného commitu (a build byl vždy ze stejné větve), tak by to za určitých okolností smysl mít mohlo. Ale označovat datum buildu za verzi, je naprostý nesmysl, protože když si udělám checkout tři roky staré verze a přeložím ji, bude se vydávat za novější než ta, kterou jsem přeložil včera z aktuálních zdrojáků.

    Dávat do binárky datum buildu, build host, verzi překladače a kdoví co všechno sice na první pohled vypadá strašně cool, ale za dvacet let, co se s Linuxem potýkám, si nevzpomínám, že by mi tento typ informací byl (v binárce samotné) k něčemu užitečný. V prostředí jako OBS už je to pak vysloveně škodlivý zlozvyk, protože to zbytečně vynucuje nové a nové rebuildy, ke kterým by jinak nebyl žádný důvod. Proto třeba OBS při zjištění, že se něco takového děje, hlásí warning.

    17.12.2015 12:23 Zdenda_S
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    No vetsinou pouzivam ten commit stroj a verzi gcc jsem pridaval jen obcas kdyz sem ladil nejaký experiment který chodil na lunuxu a osx pod stejnou archtekturou a tisknul jsem to v protokolu kterej byl timto programem generován.
    16.12.2015 16:20 Xerces
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    Tohle (časový razítka v binárce) je myslím jeden z problémů, který se řeší v Debianu v rámci reprodukovatelných buildů. https://wiki.debian.org/ReproducibleBuilds Já to sice nesleduju jak to chlapci řeší ale tuším, že se to snaží ze zdrojáků vykosit.

    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.