Byla vydána verze 5.30 dnes již open source operačního systému RISC OS (Wikipedie).
V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …
Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.
Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.
Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.
Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.
Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.
Milá Sally,
ve škole jsem vžycky dával pozor, ale teď se mi stalo něco, s čím si nevím rady.
Při práci na disertaci pracuju s modelem radiativního transferu DART. Pro radu asi není důležité jak model funguje a co uvnitř dělá.
Stručně: model je to program, který dostane na vstupu vstupní data (makety), pak s nimi počítá (je to několik hodin operací s čísly v plovoucí řádové čárce) a nakonec vysype malý snímek - obrázek.
A kde je ten problém: při výpočtech používám kapacit superpočítačového centra CESNETu, a výpočty můžu směřovat na různé stroje. Když jsem poslal výpočty na počítače s Xeonem a s Opteronem, dostal jsem různé výsledky pro stejná vstupní data.
Nenapadá tě, jak se to může stát? Vždycky jsem si myslel, že když pošlu do dvou počítačů stejná data, dostanu stejné výsledky.
S pozdravem
Tvůj věrný čtenář V.
Pro zajímavost přikládám náhled vypočtených dat - data mají vyrovnaný histogram, pro zpracování použití se to nedělá, pro náhled je to pohodlnější.
Tiskni Sdílej:
Existují na to dokonce řídící registry, kde se to nastavuje.A funkce v glibc. Co mi ale přijde divné, je, že by ten algoritmus byl takhle citlivý na zaoukrouhlovací chyby. Tohle je, BTW, také výstižné:
Many programmers like to believe that they can understand the semantics of a program and prove that it will work correctly without reference to the compiler that compiles it or the computer that runs it. In many ways, supporting this belief is a worthwhile goal for the designers of computer systems and programming languages. Unfortunately, when it comes to floating-point arithmetic, the goal is virtually impossible to achieve. The authors of the IEEE standards knew that, and they didn't attempt to achieve it. As a result, despite nearly universal conformance to (most of) the IEEE 754 standard throughout the computer industry, programmers of portable software will have to continue to cope with unpredictable floating-point arithmetic for the foreseeable future.(zdroj)
Když zkompiluješ Linux (opravdu pouze kernel) s flagem pro Pentium II a spustíš ho na procesoru Cyrix 686, spadné ESP Ghostscript jako domeček z karet kvůli underflow. (=> Pak to vůbec netiskne...) S flagem Pentium-Pro funguje bez potíží. Paradoxní je, že nebylo nutné překompilovat samotný Ghostscript. (Ten byl v obou případech z binárního balíčku s flagem Pentium-Pro.)
Takže můj intuitivní úsudek je: Ano, může se to stát.
temp1 = y*x
temp2 = x*y (ale na pořadí samozřejmě nezáleží)
imag_slozka = temp1-temp2
což by byla skutečně ryzí nula, nýbrž jako
temp1 = y*x
imag_slozka = temp1 - x*y
Z hlediska vnesení zaokrouhlovacích chyb, mezi dvěma výše uvedenými kroky je samozřejmě výrazný rozdíl. V prvním případě jde o tři operace, a tak je zaokrouhlovací chyba vnesena třikrát. Ve druhém (FMA) případě je zaokrouhlování prováděno pouze dvakrát.
Že si nevymýšlím, je možné vidět na následujícím příkladě v Octave
octave:1> A = rand(3,3) + j*rand(3,3)
A =
0.20974 + 0.43455i 0.50108 + 0.38016i 0.24643 + 0.90169i
0.33751 + 0.39598i 0.22127 + 0.58548i 0.58724 + 0.88980i
0.84237 + 0.18959i 0.67795 + 0.99298i 0.33828 + 0.00156i
octave:2> C = rand(3,3) + j*rand(3,3)
C =
0.213787 + 0.961981i 0.469730 + 0.922373i 0.560915 + 0.462651i
0.930401 + 0.763539i 0.146290 + 0.423445i 0.015814 + 0.004987i
0.286520 + 0.579304i 0.581899 + 0.806029i 0.685377 + 0.171148i
octave:3> A = C'*C
A =
2.83744 - 0.00000i 2.08081 - 0.07856i 0.87902 - 0.79612i
2.08081 + 0.07856i 2.26041 + 0.00000i 1.23141 - 0.75886i
0.87902 + 0.79612i 1.23141 + 0.75886i 1.02798 - 0.00000i
octave:4> A - A'
ans =
0.00000 - 0.00000i 0.00000 + 0.00000i 0.00000 + 0.00000i
0.00000 + 0.00000i 0.00000 + 0.00000i 0.00000 + 0.00000i
0.00000 + 0.00000i 0.00000 + 0.00000i 0.00000 - 0.00000i
Na první pohled to možná vypadá, že jsme skutečně dostali nulu, ale nenechte se zmást:
octave:5> format hex
octave:6> A - A'
ans =
Columns 1 and 2:
0000000000000000 bc91200000000000i 0000000000000000 3c90000000000000i
0000000000000000 3c90000000000000i 0000000000000000 3c70800000000000i
0000000000000000 0000000000000000i 0000000000000000 0000000000000000i
Column 3:
0000000000000000 0000000000000000i
0000000000000000 0000000000000000i
0000000000000000 bc8a000000000000i
Shrnutí: při srovnávání výsledků numerických výpočtů na různých platformách je nutné dnes brát i v úvahu přítomnost či absenci, povolení či zakázání některých novějších technologií jako například FMA (a možná i jiné, nevím, nejsem expert).