V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »
Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.
Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o
… více »Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.
Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).
Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.
Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).
Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.
Byly publikovány novinky z vývoje GIMPu. Pracuje se na novém formátu souborů. Stávající binární XCF bude nahrazen "zazipovaným XML". XCF zůstane plně podporován pouze pro načítání starých souborů.
Programming stuff. And stuff.
Jak jsem byl zmlsán callgrindem a kcachegrindem z Linuxu, dlouho jsem se snažil najít něco podobného taky pro Windows. Už jen najít nějaký schopný profiler pro Windows bylo celkem těžké. Zkoušeli jsme jich asi šest, jediný který alespoň s velmi specifickým nastavením fungoval (a něco naměřil), byl IBM/Rational Quantify, ale jeho schopnosti grafování oproti kcachegrindu byly značně slabé (plus instrumentace všech dll měřené aplikace mu zabrala tak půl hodiny).
Pak jsme objevili profiler VerySleepy (open source), který fungoval až podezřele dobře. Nepotřebuje dělat instrumentaci (je sample-based), prostě se připojí k procesu/vláknu a je to. Jediná podmínka je, že program musí být přeložen Visual Studiem (gcc/mingw neumějí vytvořit debugovací informace v .pdb formátu), jinak některé funkce vůbec neuvidíte ve výsledném měření.
Jediná chybička na kráse VerySleepy je, že VerySleepy nevidí do knihoven, které byly načteny přes LoadLibrary (windowsí obdoba dlopen). Dá se to obejít tím, že je dočasně natvrdo přilinkujete k měřené binárce.
Googlení pro vizualizaci měření *.sleepy souborů z VerySleepy ukázalo, že nejspíš nic takové není, tak jsem se rozhodl udělat nějaké sám. Nejjednodušší by bylo převést sleepy soubory do calltree formátu (používá je kcachegrind), dokonce prý jde přeložit kcachegrind pod Cygwinem, jenom kcachegrind závisí na velké části KDE.
S heslem "kcachegrind - náš vzor" jsem za pár víkendů napsal SleepyGraph, který má zásadní vlastnost kcachegrindu, vizualizace grafů volání. Je to napsáno v Pythonu využitím XDot, PyGTK a graphvizu. Lepší než popis budou dva screenshoty (klikněte pro plnou velikost):
Graf jednoduchého programu s rekurzívním voláním
Částečný graf běhu velké aplikace (nastavena velká hloubka DFS)
Stránku projektu SleepyGraph naleznete na http://sleepygraph.sourceforge.net . Snad se to hodí taky někomu jinému.
Je to pořád v alpha stavu, ale mé výsledky jsem porovnával s VerySleepy, čímž jsem taky narazil na jeden bug s počítáním ceny volaných/volajících při rekurzi ve VerySleepy 0.5 (patch jsem zaslal autorovi, ale chvíli to potrvá než se k tomu dostane).
Taky by nebylo špatné se podívat profilerem na SleepyGraph (mám pocit že načítání sleepy souborů mu trvá nějak dlouho). Je pravděpodobné, že se k tomu nějakou dobu nedostanu, protože delší čas teď nebudu kódit v C++.
Tiskni
Sdílej:
diky za tip. Pekne. Neco takove jsem shanel uz dele.
Patch zpusobi, ze se spravne zobrazi caller cost (ze nebude vic nez cena celeho programu), jenze pak procenta muzou vypadat "divne" pri hlubokych rekurzivnich volanich. Tak nejak zavisi co ocekavate ze je "spravne" zobrazeni.