Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.
Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.
Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.
Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou
… více »Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).
Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.
U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.
Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.
Současný vývojový kernel má označení 4.7-rc7, vydán byl 19. června.
Já vím, že si čtenáři stěžovali, že jsou překlady pozadu, ale realitu byste předbíhat nemuseli. :-) Verze 4.7-rc7 ještě nevyšla, 19.6. vyšla -rc4.
Zásobník se nachází v přímo mapované paměti jádra, takže musí být fyzicky souvislý. Tento požadavek může být problematický sám o sobě, protože jak dochází k fragmentaci paměti, může být nalezení dvou nebo čtyř fyzicky souvislých stránek složité.To je teda navrhovali dost špatně :-/. Resp se to jeví jako pěknej hack, když to při přechodu na vícestránkové stacky neudělali robustně.
V důsledku neexistuje přímá indikace v případě, že k přetečení dojde.Znamenám si, pokud někdy vymyslím CPU architekturu, tak přidám range check registry
.
Paměť mapovaná do rozsahu vmalloc má jedno specifické omezení: nedá se jednoduše použít pro I/O s přímým přístupem k paměti (DMA). To proto, že I/O očekává paměť fyzicky souvislou, a proto, že funkce mapování virtuálních adres na fyzické neočekávají adresy v tomto rozsahu.Jo když byli v Intel tak hloupí (nebo naopak marketingově vychcaní), že při přechodu na PCI neudělali nějakou scatter gather DMA engine jednotku ...
Jo když byli v Intel tak hloupí (nebo naopak marketingově vychcaní), že při přechodu na PCI neudělali nějakou scatter gather DMA engine jednotku ...Ono nejde jen o Intel, ale i o ostatní architektury, na kterých Linux běhá.![]()
(to se tu tuším jednou Ponkrác rozčiloval, že DMA umí každej, ale bez ní to je ta pravá inženýřina). Minimálně to měly Sun workstationy se SPARCem (jedna PCI karta od nich to vyžaduje, bez DMA enginu to jede přes PCI tak maximálně 1MBps). Dokonce i blbej microblaze může mít DMA engine
.
).
Jde o to, že některé PCI zařízení busmaster nemají (není povinný) a tak do nich musíš hezky cpát data byte po bajtu přes CPU.
Mám dva x86 "počítače" spojené PCI mostem. Ten sice umí na obou stranách bus master, ale jen jako reakci na zápis/čtení z druhé strany.A v cem je problem? Na jedne strane poslu blok dat, na strane druhe prijmu, pres PCI bus-master DMA.
Veškeré přenosy musí tedy obstarávat CPU.Snad jen kontrolovat, vetsina toku by mela jit mimo CPU.
Na SPARCu ale byla speciální jednotka, která umožňovala zahájit přenos z jedné adresy na jinou.Tim mate na mysli konkretne co? Sbus, ktery byl nakonec nahrazen PCI? IMHO, SPARC DMA engine standardne pripojeny na Sbus neumel scatter/gather transfery.
Neříkám, že by to musela být ISA implementace (to fakt ne, omezení na 0-16MB v RAM apod.), ale i na blbé memcpy by se taková jednotka hodila.A proc? Na male bloky dat je optimalizovane memcpy (treba nad AVX2) vetsinou lepsi nez DMA, uz jen proto ze operuje nad cim dale vetsimi CPU cache a ne nad pomalou DDR a nemusite se starat o cache coherence. Velke datove transfery jsou zalezitosti I/O na PCIe se zabudovanym radicem, a pokud nekdo potrebuje kopirovat velke bloky v pameti beze zmeny pres CPU, ma nejspise hloupe navrzenou aplikaci.
A v cem je problem? Na jedne strane poslu blok dat, na strane druhe prijmu, pres PCI bus-master DMA.Ten bridge je jen pasivní překlad z jedné domény do druhé (žádné sdružování do bloků apod.). Procesor neumí vygenerovat přenos bloku dat, ale zapisuje jen slovo po slově. Takže místo třeba 1x 256B bloku se provede 64x 32bit transakcí. Transakce 32bit slova po slově dosáhne tak stěží 2MBps dohromady v obou směrech. S univerzálním DMA enginem by se posílaly bloky bezproblému.
Snad jen kontrolovat, vetsina toku by mela jit mimo CPU.To by byla DMA, když je to memcpy na x86, tak je to prostě kopírovací smyčka, kde to dělá CPU.
Volani po dedikovanem DMA zarizeni ...Tak ten DMA engine by klidně mohl bejt v čipsetu jako PCI device. Vtip je prostě v tom, že jediné zařízení, co neumí blokovej busmaster je CPU (s vyjímkami jako cache linka do RAM, ale to vlastně není PCI). Jj I/OAT, ale to je až v Xeonech, PCI bylo už v posledních 486 (SiS496/7 umí obsáhnout celej 4GB prostor).
Tim mate na mysli konkretne co? Sbus, ktery byl nakonec nahrazen PCI? IMHO, SPARC DMA engine standardne pripojeny na Sbus neumel scatter/gather transfery.Hele tak to přesně nevím, ale ta karta je SunPCI II a měla do toho Sunu přidávat podporu pro Windowsy
. Je to normální PCI 64bit karta a funguje teda i na x86 kompu. Akorát ty přenosy jsou příšerně pomalý, pokud se maj posílat třeba komunikační pakety. Povrchně jsem zkoumal původní SPARC platformu a prej to mělo DMA engine, co prostě mohla říct sem do RAM zkopíruj 64kB dat z tohodle PCI regionu. To, že by to fungovalo i na PCI je pak logický předpoklad, aby ta karta vůbec mohla efektivně komunikovat.
A proc? Na male bloky dat je optimalizovane memcpy (treba nad AVX2) vetsinou lepsi nez DMA, uz jen proto ze operuje nad cim dale vetsimi CPU cache a ne nad pomalou DDR a nemusite se starat o cache coherence.To je pravda, ale neznamená to, že to nejde udělat lépe. Mě teda přišlo, že se třeba pakety kopírujou v kernelu všude možně.
a pokud nekdo potrebuje kopirovat velke bloky v pameti beze zmeny pres CPU, ma nejspise hloupe navrzenou aplikaci.No právě, že s inteligentním DMA přenosem můžeš třeba transponovat matici
(proto furt nadávám na PXA Xscale, protože tam ani nešlo pootočit obraz na LCD o 90 stupňů - leda pixel po pixelu přes CPU).
Ten bridge je jen pasivní překlad z jedné domény do druhé (žádné sdružování do bloků apod.). Procesor neumí vygenerovat přenos bloku dat, ale zapisuje jen slovo po slově. Takže místo třeba 1x 256B bloku se provede 64x 32bit transakcí. Transakce 32bit slova po slově dosáhne tak stěží 2MBps dohromady v obou směrech.Vam stale nedochazi, ze problem je na strane PCI zarizeni, ktere potrebuje prenaset velke bloky dat a pritom podporuje jen 32 bitovy prenos, ktery ma velkou rezii, a implementuje zlomek toho, co je mozne implementovat nad PCI a co zvlada i nejhloupejsi sitova karta za 10 dolaru. Soude podle toho, co popisujete, je lepsi propojit vase PC kabelem pres dve sitove karty a vas PCI bridge odnest do recyklacniho centra.
S univerzálním DMA enginem by se posílaly bloky bezproblému.CPU jadro je velmi univerzalni, flexibilni a plne programovatelny DMA engine a jejich pocet v soucasnych procesorech utesene roste.
Mě teda přišlo, že se třeba pakety kopírujou v kernelu všude možně.A mne prijde, ze se kopirovani snazi omezit.
No právě, že s inteligentním DMA přenosem můžeš třeba transponovat maticiPsal jsem:
Volani po dedikovanem DMA zarizeni je ozivovani konceptu, ktery se moc neosvedcil mimo specialisovane architektury.a transponovat matici behem DMA prenosu je pomerne specializovana vec a opet bych to na PC hodil na AVX, pripadne na GPU. Pouzivam programovatelne DMA enginy na TI platformach jiz deset let, takze tusim co to prinasi v praxi, a proto jsem spise proti tomu, aby se to davalo do univerzalniho PC jako genericky blok. To ze ani Intel neni schopen v kernelu udrzovat dlohodobe plne funkcni podporu I/OAT me obavy jen potvrzuje.
Vam stale nedochazi, ze problem je na strane PCI zarizeni, ktere potrebuje prenaset velke bloky dat a pritom podporuje jen 32 bitovy prenos, ktery ma velkou rezii, a implementuje zlomek toho, co je mozne implementovat nad PCI a co zvlada i nejhloupejsi sitova karta za 10 dolaru.Tak já bych taky radši, kdyby měl ten bridge vlastní buffer a busmasteroval si bloky. Ale už to, že existuje (a další verze implementoval dokonce Intel) ukazuje, že má PCI nedostatky.
Soude podle toho, co popisujete, je lepsi propojit vase PC kabelem pres dve sitove karty a vas PCI bridge odnest do recyklacniho centra.Přesně tak, taky to bylo ze začátku o řád rychlejší
. Bohužel ten bridge je velmi rozšířený a je skoro všude.
CPU jadro je velmi univerzalni, flexibilni a plne programovatelny DMA engine a jejich pocet v soucasnych procesorech utesene roste.Bohužel stále ne na x86 desktopu/notebooku
.
A mne prijde, ze se kopirovani snazi omezit.Nedostatečně
.
a transponovat matici behem DMA prenosu je pomerne specializovana vec a opet bych to na PC hodil na AVX, pripadne na GPU.V případě RAM→GPU je AVX plýtvání procesorového času. A GPU s rotací bitmapy je lepší mít rozdělenou na dva modulární HW.
Tiskni
Sdílej: