Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.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 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
S QEMU zkušenosti máme, například emulaci PCI SJA1000 (CAN bus) jsem kromě x86 připojoval i na Versatile
qemu-system-arm -cpu arm1176 -m 256 -M versatilepb \ -kernel kernel-qemu-arm1176-versatilepb \ -initrd ramdisk.cpio \ -hda rpi-wheezy-overlay \ -append "root=/dev/ram console=ttyAMA0" \ -device kvaser_pci,canbus=canbus0,host=can0 \ -virtfs local,path=shareddir,security_model=none,mount_tag=shareddir \ -nographic
Pro otestování by bylo dobré vyzkoušet emulaci na big-endian MIPS architektuře. To asi bude čekat mého studenta, pana Charváta, který implementuje emulaci CTU CAN FD (vývojový GIT na FEL, odesílání již chodí).
Co se týče předmětu APO, tak studenti mohou v laboratoři zkompilovat C a ASM kód překladačem mips-linux-gnu-gcc
a pustit ho stejně jako nativní programy na PC s využitím qemu-mips
/qemu-mips-static
. Pokud použijí náš zjednodušený startup kód nebo kompilují proti musl libc tak mohou jednoduché programy bez přístupu k hardwarovým registrům využívající několik QtMIPS podporovaných systémových volání (open, read, write atd.) tak mohou shodnou MIPS binárku spouštět v "plné" rychlosti s příkazové řádky Linuxu stejně jako v simulátoru QtMIPS.
Ale zde mají jak domácí úkol tak i nástroje na přípravu vlastních cvičných úloh. Připadá mi celkem smutné, že neuronová síť tvora, který se cítí na vrcholu vývojového řetězce prohlašuje za nadměrný výkon postavit se jednoduchému logickému algoritmu, který zvládá několik řádek kódu v jazyce Python.Na jednu stranu chápu, že chtít po lidech, aby mysleli sami, to se málokdy setká s úspěchem. Na druhou stranu mnoho vyučujících si ve svých požadavcích neuvědomuje, že studenti studují víc předmětů současně. Když tak koukám na studijní plán, tak mi to vychází nějakých 20 hodin čistého studijního času týdně. Pokud vezmeme osmihodinovou pracovní dobu jako etalon rozumné zatížitelnosti člověka, tak i se započítáním nějakého nutného času na odpočinek (a přechody mezi učebnami), zbývají na každý předmět nějaké 2.5 hodiny za týden. Počítáte s tím při zadávání domácích úloh a očekávání, že student bude připravovat vlastní cvičné úlohy?
Například v autonomním vozidle zbytečně plně zatížený systém Nvidia Drive PX2 spotřebuje 250W.Není tahle věc v podstatě přerostlá grafárna? 250W mi v takovém případě přijde ještě dobré...
Na jednu stranu chápu, že chtít po lidech, aby mysleli sami, to se málokdy setká s úspěchem. Na druhou stranu mnoho vyučujících si ve svých požadavcích neuvědomuje, že studenti studují víc předmětů současně. Když tak koukám na studijní plán, tak mi to vychází nějakých 20 hodin čistého studijního času týdně. Pokud vezmeme osmihodinovou pracovní dobu jako etalon rozumné zatížitelnosti člověka, tak i se započítáním nějakého nutného času na odpočinek (a přechody mezi učebnami), zbývají na každý předmět nějaké 2.5 hodiny za týden. Počítáte s tím při zadávání domácích úloh a očekávání, že student bude připravovat vlastní cvičné úlohy?
Souhlasím s tím, že zátěž studentů je velká. Zároveň jsem přesvědčený, že teoretické předměty, matematika, teorie řízení atd. jsou pro trénink mozku důležitější a potřebují více vedení.
Ale je vysloveně škoda, že svůj a náš čas často na cvičeních nevyužijí. Když dostanou jednoduché cvičné úkoly, tak existuje nezanedbatelná část studentů, někdy i většina, která nemá zájem se do cvičení zapojit. Přitom se jim v podstatě snažíme ukázat, že se jedná o zajímavou hru.
Další je problém komunikace. V hodnocení z mých cvičení si studenti stěžovali, že se ptám na věci, co ještě neprobírali a jsem nespokojený, že se nikdo nezapojí, mlčí. ve skutečnosti se často ptám přímo nebo na důsledky faktů, které se na přednášce objevily. Ovšem velká část studentů na přednášky nechodí. Nezlobí mě však to, že znalosti nemají a že neumí odpovědět správně. Naopak o co mám největší zájem je, aby zkusili na základě znalostí a představ o tom, jak daná věc pracuje, hledat sami odpověď na otázku a třeba i zkoušeli na věc přijít jen odhadem, zkoušeli se sami na základě již dosažených znalostí stát návrháři procesorů, technik atd. Na cvičení mi v takovém případě vůbec nevadí, pokud odpověď nebude správná a i pokud půjde nesprávným směrem, tak to nevadí. Pokusím se nabídnout další fakta, korekci atd. Pokud potom studenti přijdou na řešení sami, tak věřím, že je to okamžik, kdy si znalost nejlépe osvojí, porozumí jí, ne se ji jen naučí.
Jenže pokud člověk zůstává stát v tichu proti mlčícím stínům, tak není jak úvahu směrovat, rozvést. Znamená to často prozrazovat rovnou pointu a vlastně studenty připravit o to nejhezčí, objevování světa, které člověka těší třeba i v horách, když jde někam, kde již i jiní byli.
Například v autonomním vozidle zbytečně plně zatížený systém Nvidia Drive PX2 spotřebuje 250W.Není tahle věc v podstatě přerostlá grafárna? 250W mi v takovém případě přijde ještě dobré...
protože jsem v roce 2016 odmítl NDA se společností NVIDIA podepsat, tak se na specifikace přímo nepodívám, ale z diskuzí a dostupných informací je to kolo těch 250 až 300 Wattů. Jinak ano, jedna se především o GPU využívané v aplikacích pro počítání hlubokých neuronových sítí. Ale přece jenom embedded nechce integrované topné radiátory, to by se Vám zbortila palubní deska. Hodilo by se to jen v zimě k vytápění v době kdy parkujete a motor je vypnutý. takže je snaha udržet spotřebu na uzdě. Otázka je, kolik nakonec takových systémů bude muset v automobilu být a pokus se proprietární výrobci jednotek a algoritmů nedohodnou mezi sebou a budou se o know how strachovat, tak je dost možné, že jich bude hodně. Alternativa je, že opět vývoj od subdodavatelů převezmou samotné automobilky a začnou vyvíjet SW cestou spolupráce.
Ale i toto nemožné se může stát, peklo zmrzlo a Microsoft přešel s veškerým vývojem na GIT a Volkswagen nechává svého špičkové vývojáře a autora SocketCANu z Volksawagen Research učit celou firmu, jak spolupracovat s komunitou
https://www.volkswagenag.com/en/news/stories/2019/11/the-open-source-missioner.htmlV hodnocení z mých cvičení si studenti stěžovali, že se ptám na věci, co ještě neprobírali a jsem nespokojený, že se nikdo nezapojí, mlčí. ve skutečnosti se často ptám přímo nebo na důsledky faktů, které se na přednášce objevily. Ovšem velká část studentů na přednášky nechodí. Nezlobí mě však to, že znalosti nemají a že neumí odpovědět správně. Naopak o co mám největší zájem je, aby zkusili na základě znalostí a představ o tom, jak daná věc pracuje, hledat sami odpověď na otázku a třeba i zkoušeli na věc přijít jen odhadem, zkoušeli se sami na základě již dosažených znalostí stát návrháři procesorů, technik atd. Na cvičení mi v takovém případě vůbec nevadí, pokud odpověď nebude správná a i pokud půjde nesprávným směrem, tak to nevadí. Pokusím se nabídnout další fakta, korekci atd. Pokud potom studenti přijdou na řešení sami, tak věřím, že je to okamžik, kdy si znalost nejlépe osvojí, porozumí jí, ne se ji jen naučí.
Když jsem chodil na teorii míry, měl přednášející zásadu, že na jedničku by měl student být schopen něco vymyslet sám. Takže když student vypadal, že by si tu jedničku mohl zasloužit, dal mu nějaký dokázat nějaké jednoduché tvrzení, nic složitého, ale bylo to něco, co se přímo na přednášce neukazovalo. Prý bylo docela dost studentů, kteří to ani nechtěli zkusit a rovnou prohlásili, že jim dvojka stačí.
ve skutečnosti se často ptám přímo nebo na důsledky faktů, které se na přednášce objevily. Ovšem velká část studentů na přednášky nechodí.Tohle chápu u předmětů, kde je přednáška úplně k ničemu - nezdravím např. toho šmoulu, co už dneska nejspíš bude na FITu a co nám v prvním semestru přednášel algoritmizaci, kde paměťovou náročnost algoritmu vyřešil slovy, že "paměť neřešíme, máme jí dost". Jestli v životě neviděl mikrokontrolér s 256B RAM... Ale aspoň co si pamatuju, tak tohle byly spíš výjimky a nejvíc se koncentrovaly do nižších ročníků, takže váš případ to nejspíš nebude. A lidi, co nechodili na normální přednášky a pak na cvičení netušili, jak něco řešit, přestože se to na přednášce bralo - což samozřejmě zdržovalo všechny ostatní - jsem většinou měl chuť nakopat...
protože jsem v roce 2016 odmítl NDA se společností NVIDIA podepsat, tak se na specifikace přímo nepodívám, ale z diskuzí a dostupných informací je to kolo těch 250 až 300 Wattů.Já jsem se spíš divil, že to považujete za příliš mnoho. Samozřejmě to málo není, zejména pro elektroauta, ale když si to porovnám s normálními grafikami do PC, kde si výkonnější desktopové kusy vezmou 100W jako nic (a tenhle udělátor asi bude trochu výkonnější než herní grafika), tak mi to zase nepřišlo tak strašné.
Ale zde mají jak domácí úkol tak i nástroje na přípravu vlastních cvičných úloh. Připadá mi celkem smutné, že neuronová síť tvora, který se cítí na vrcholu vývojového řetězce prohlašuje za nadměrný výkon postavit se jednoduchému logickému algoritmu, který zvládá několik řádek kódu v jazyce Python.
Mně zase připadá dost smutné, že někdo, kdo napíše write-only kód funkce s šesti do sebe různě vnořenými cykly (maximální vnoření 4) a následně opovrhuje studenty, že tomu nerozumí, učí na ČVUT...
V historickém okénku mi pak chybí, že prakticky totožný (dokonce i ta optimalizační úloha na cvičeních byla skoro totožná, akorát se místo konvoluční masky počítalo násobení matic) předmět - 36APS - se na FELu (Katedra počítačů) učil už před patnácti lety a přednášky Ing. Bečváře rozhodně patřily k tomu kvalitnějšímu, co se muselo absolvovat. Nejde tedy o žádnou zásadní změnu/novinku. Ale v tom bude předpokládám zase nějaká politika FIT versus FEL.
Volíš Andreje?
Protože tohle je to samé jako dotace/daňové úlevy pro Agrofert akorát v menšim... To, že mi vadí, že jsou veřejní činitelé (obecně z daní placení lidé a instituce) ve střetu zájmů nemá se závistí nic společného. Andrejovi jeho miliardy taky nezávidim, ale vadí mi, jak se k nim dostal...
Tak osobního je na tom akorát to, že jsem tu školu vystudoval. S katedrou řízení jsem se kromě laborek z elektronických systémů, které zajišťovala pro katedru počítačů (a to ještě probíhalo stylem, že "cvičící" doktorand prohlásil: "Měřte si co chcete, ale hlavně se mě neptejte, co máte dělat, já tomu taky nerozumim. My jsme tady jenom abyste nerozkradli přístroje") prakticky nepřišel do styku. S autorem textu pak vůbec. Nicméně pokuď nějaký pedagog ve vztahu ke svým studentům veřejně prohlašuje toto:
Studenti si stěžují na nedostatek materiálů a nedostatečnou přípravu ke zkouškové písemce. Ale zde mají jak domácí úkol tak i nástroje na přípravu vlastních cvičných úloh. Připadá mi celkem smutné, že neuronová síť tvora, který se cítí na vrcholu vývojového řetězce prohlašuje za nadměrný výkon postavit se jednoduchému logickému algoritmu, který zvládá několik řádek kódu v jazyce Python. Analýza vzájemné závislosti dvou instrukcí je vyřešená ve funkci depanalyze() na 13 řádkách kódu. Kompletní analýza sekvence instrukcí je bez použití přeposílání vyřešená ve funkci analyze() na 26 řádkách kódu. Pro případ s přeposíláním ale s latencí jeden cyklus mezi načtením a dostupností hodnoty čtené z paměti pak ve funkci analyze_stall_forward() pak vychází na 43 řádek kódu, ale pro tvora vybaveného přirozenou inteligencí je ještě jednodušší než předchozí případ.
aby se následně ještě ukázalo, že těch "pár řádků" je ve skutečnosti pěknej "guláš", tak to by asi nemělo úplně projít bez povšimnutí bez ohledu na to, jestli se jedná o mojí alma mater či nikoliv.
Co se týče těch "malejch domů", tak to už za doby mých studií bylo veřejným tajemstvím, že to takhle na některých katedrách funguje. Asi bych nad tím, zejména u lidí co pro školu skutečně něco dělají nad rámec průměru, byl ochotný přihmouřit oko, ale pokuď někdo nemá ani tolik sebereflexe, že to není úplně košer a přijde mu to tak samozřejmé, že se tím veřejně "chlubí" na blogu, tak to už prostě přejít nemůžu.
S katedrou řízení jsem se kromě laborek z elektronických systémů, které zajišťovala pro katedru počítačůJo, tak něco takového si taky pamatuju - že si katedra počítačů přistrčila naprosto zbytečný předmět (náplní se překrýval s jiným v následujícím semestru, kde byla problematika vysvětlena pořádně) do nepočítačových studijních programů, ani to nebyli schopní odcvičit, ale hlavně že shrábli prachy za studenty na přednáškách, na které skoro nikdo nechodil. Ale mám za to, že ta p...aní přednášející už odešla na FIT, takže hádám, že od ní a zbytečně zabitých 40 hodin života každého ze studentů už bude pokoj...
Tak přiznávám, že odkazovaný kód nebyl napsaný jako výukový. Je to celkem ve spěchu napsaný nástroj pro to, aby pokud možno žádné dva testy ani na jednom termínu nebyly shodné, kód umí perturbace sekvencí instrukcí, ty dostává ze sady okolo 8 sekvencí pro každý termín.
Omlouvám se za asi příliš ironické konstatování, které je především i výsledkem smutku, že pro některé studenty to, co děláme, stále nestačí. Prosím, podívejte se na slajdy 37 až 45 přednášky o zřetězeném zpracování. Dále na cvičení 6. Pipeline a hazardy a zkuste si kód v odkazovaném simulátoru bez pipeline, s pipeline s různými nastaveními jednotky ošetření hazardů. Přitom výklad odpovídá odkazované učebnici. Pomůžete nám a především dalším studentům, pokud si na výše uvedené uděláte čas a řeknete mi svůj dojem.
Odkazovaný cvičení je napsané pro kompilaci externím mips-elf-gcc kompilátorem, ale loňské přes prázdniny jsem dopsal iterovaný asembler, aby studenti již nemuseli nic kromě
binárky simulátoru instalovat. Nebo dokonce i toho jsou ušetřeni, pokud použijí online verzi. Interní assembler neinterpretuje #define, řádky s #define je potřeba vynechat a místo s0 atd psát $s0. Například addi $a0, $0, 12345
. Zatím změnit text na stránce nemohu, protože se jedná o archivní verzi předchozího běhu. Jak vytvoříme kopii pro přípravu nového běhu, tak to upravím.
Můj zápisek je motivovaný právě zájmem o zpětnou vazbu, poukázku na chyby a nápady jak dále lépe.
Co se týče vašeho silného tvrzení, že výroba kitů je malá domů, tak právě arbitra, aby z mojí firmy nebyla klasifikovaná jako obohacování potřebuji. Pokusím se Vám poslat podrobnější data k zadání a vyúčtování výroby přípravků a věřím, že provedete rozbor a napíšete, jak to vidíte z vaší strany. Nechci veškeré materiály, minimálně zatím, publikovat veřejně, protože bych pak neodpustil přidat některá vlastní silná tvrzení. A můj primární zájem je hledat tu pro studenty a jejich znalosti nejlepší cestu dále.
Hlavní důvod, proč chci pokračovat dále i přes značné problémy, je právě možnost studentům něco předat a to, že z těch asi 800 studnetů předmětu APO a stovky dalších v bývalých předmětech OSP a POS, vím minimálně o 20, u kterých jsem mohl alespoň nepatrně přispět k tomu, že jsou již mnohem lepší než já (návrh HW microtreadingu pro ESA, správa firmware a updatů Turris, vývoj do Linuxového jádra ve firmě Avast, atd..). Někteří z těch již lepších než jsem já, mi nyní přichází zpět do školy pomoci. Chci další generaci dát to nejlepší vedení na cvičeních, které mohu sehnat, a třeba i pokud bych na to již sám neměl, tak i ty nejlepší přednášející.
Různé RAW/WAW/WAR hazardy v pipeline jsem už řešil před 15 lety v 36APS u Ing. Bečváře a dnes nevidím moc důvod si to zopakovat . Je dobré vědět jak to přibližně funguje, ale potřebu jít takhle nízko jsem v praxi nikdy neměl a s narůstající "inteligencí" překladačů a mikrokódu CPU se ta šance každým rokem snižuje. Jestli ale chcete konstruktivní připomínku k předmětu, tak tam jednoznačně chybí paralelní architektury. Před těmi 15 lety byl pro nás multicore CPU SCI-FI, ale dneska je to hlavní směr ve zvyšování výkonu a předmět by to měl reflektovat. Těžko to ale můžete vmáčknout při stávajících nárocích do toho samého předmětu (netušim, jestli je teď na FELu nějaká analogie legendárních PARů, kde by se to probíralo).
Co se týče toho střetu zájmů, tak právě proto, aby nikdo nemusel ty zakázky kontrolovat a hodnotit, jestli je to předražený/výhodný nebo ne (podezření tu bude vždy), je to ve slušné společnosti paušálně zakázáno. Prakticky každá větší firma na to má vnitřní regule a u státu by to mělo platit dvojnásob. Chápu ale, že v zemi, kde premiér do správní rady dosadí manželku a tváří se, že tak nemá žádný vliv, se to těžko vysvětluje...
je to ve slušné společnosti paušálně zakázánoProtože je lepší místo toho, abych dal zakázku někomu, o kom vím, že ji udělá dobře, zadávat zakázky náhodným firmám a doufat... U zakázek za statisíce se tomu vyhnout nejde, ale tohle asi nebude ten případ...
Dobrý den, díky za názor. Předmět 36APS je v zásadě přes pana docenta Šnorka a Michala Štepanovského jedním předchůdců předmětu APO. Protože se jedná v podstatě o základy, tak je dost možné, že určitý překryv i v některých materiálech stále je (v pokročilých architekturách stále referenci na Ing. Bečváře asi na dvou místech uvádíme).
Výklad pipeliningu je ale kompletně nově zpracovaný Michalem Štepanovským. Obrázek procesoru je vlastní grafika podle výklady v knize CA. Grafika pro hazardy vychází přímo rozložením prvjů z knihy.
K muticore: Aktuální průchod studiem OI Povinné předměty programu. Tento průchod zahrnuje ve čtvrtém semestru předmět Paralelní a distribuované výpočty (B4B36PDV). Zároveň popis procesů a vláken je součástí předmětu Operační systémy.
Máte však pravdu, že by bylo dobré informace o více-jádrovém hardware přidat do předmětu APO. Něco málo jsem přidal dříve v přednášce o sítích (SIMD, ...), ten obecný pohled na sítě od WAN po multicore již v APO potřeba možná není, protože studenti mají na sítě jiný předmět. Ale v něm se spíše neuvažuje o tom, že PCI Express a multicore přes HyperTrasport je vlastně také síť a třeba pro PTP znamená větší jitter, než hardwarovým doplňováním a známkováním paketů vybavená Intel ETHERNETová karta.
Popis paralelizmu na úrovni dnešních procesorů a paměťových systémů přináší magisterský předmět B4M35PAP - Pokročilé architektury počítačů. Ani tento předmět jistě také dokonalý není.
Zvážím jak nějaké minimum i do kurzu APO přidat. Alespoň jako "hint" pro ty lepší studenty. Naopak do zkoušky nebo domácích úkolů takové požadavky přidávat vidím jako již zbytečnou zátěž pro již dost zatížené studenty.
Jinak souhlasím s tím, že pipelining je základ a je většinou zvládnutý na úrovni kompilátorů. Je však i určitá šance, že některý absolvent bude do vývoje kompilátoru nebo architektury procesoru přispívat. Hlavní je, aby většina měla spíš přehled, jak HW pracuje. Princip pipeliningu má ale i obecnější využití mezi procesy, uzly cloudu atd.
Dále by mě opravdu zajímalo, jak jako Vy i ostatní jako již profesionál v oboru zhodnotíte naše aktuální učební pomůcky, rád se na to i sejdu. Zaregistroval jsem na letošní https://installfest.cz/if20/ dvouhodinový workshop na téma výuka APO a QtMIPS a rád bych interaktivně zkusil nejlépe i s odborníky projít, co děláme a jaké jsou jejich názory. A rád bych hodně času věnoval otevřené diskuzi. Tak pokud wokshop projede hlasováním, tak rád Vás i ostatní uvidím a vyslechnu si názory a kritiku. Můžete jimi přispět budoucím studentů i těm z aktuálního běhu. Předpokládám, že i někteří z nich přijdou.
Připravuji e-mail s podstatnými informacemi k zhodnocení ceny kitů. Probíhá teď rozhodnutí o dalším nákupu, již za normální cenu, to je desetkrát větší než bylo původní prohlášení za kolik kity dodám aniž mi byl daný prostor k diskuzi, a minimálně o 50% vyšší než byla nakonec na popud kolegy z fakulty zaplacená částka za výrobu mému kolegovi. Možná i stovky hodin vývoje a i ladění s naší technikou nebyly mojí firmě zaplacené nikdy a vzhledem k možnému nařčení z konfliktu zájmu jsem o požadavku platby za vývoj neuvažoval minule ani nyní.
Měl jsem na mysli něco jako je ta druhá půlka B4M35PAP. To co je v B4B36PDV jsou v zásadě o topologie osekané staré PARy a bere se tam něco trochu jiného, než jak funguje moderní vícejádrový CPU. Ale pokuď ten předmět začíná u doplňkového kódu, tak dostat se až tak daleko je asi nereálné. I když některé další části budou asi taky dost "z rychlíku", protože jenom samotná reálná čísla by klidně mohly být na celý semestr...
Dále by mě opravdu zajímalo, jak jako Vy i ostatní jako již profesionál v oboru zhodnotíte naše aktuální učební pomůcky, rád se na to i sejdu.
Ty pomůcky by měli hodnotit především ti, pro které jsou určeny, a kteří s nimi tráví nejvíce času, tedy studenti.
Připravuji e-mail s podstatnými informacemi k zhodnocení ceny kitů. Probíhá teď rozhodnutí o dalším nákupu, již za normální cenu, to je desetkrát větší než bylo původní prohlášení za kolik kity dodám aniž mi byl daný prostor k diskuzi, a minimálně o 50% vyšší než byla nakonec na popud kolegy z fakulty zaplacená částka za výrobu mému kolegovi. Možná i stovky hodin vývoje a i ladění s naší technikou nebyly mojí firmě zaplacené nikdy a vzhledem k možnému nařčení z konfliktu zájmu jsem o požadavku platby za vývoj neuvažoval minule ani nyní.
Právě proto se principielně nedělá, že je někdo někde zaměstnaný a externě tam ještě odvádí další práci. Rozlišit co by mělo být jak placeno prakticky nelze a vždy vzniká obrovský prostor pro spekulace...
Dobrý den, děkuji za diskuzi. Data k posouzení jsem v pondělí poslal na e-mail, který si myslím, že Vám patří.
Souhlasím s tím, že cena je vysoká. Jak mít za daných požadavků použitelný HW za méně jsem nezvládl zařídit.
Stále dosluhují dotované Altera DE2, existují i relativně levné desky se SoC a FPGA, ovšem zadání bylo Xilinx a aby SBC odpovídal architekturou i velkým UltraScale, které jsem vybral a nakoupil pro projekt, který s lidmi odešel (z nichž jsem mnoho do týmu přivedl) z FEL (viz info) na CIIRC[*1]. Obecně pak komunita kolem MicroZed mi připadala silná a další kolegové již Zynq používali a měli znalosti. Jinak za sebe asi raději Quartus než Vivado. Ale s Xilinxem mám více zkušeností. Přitom ty malé education kity pro Linux a VxWorks, které byly požadované pro další předmět, většinou nejsou dobře použitelné.
Pokud máte další dotazy, tak se ozvěte na e-mail. Pokud posouzení provedete a máte zásadní výhrady, tak je můžeme diskutovat zde, nebo se ozvěte panu profesorovi Jiřímu Matasovi, který bude další nákup posuzovat a můžete místo mě jednat s firmou Evermax o ceně dodávky desek a o ceně oživení a kompletace s Ing Petrem Porazilem. Stejně jako minule, se PiKRON účastní pouze nepřímo a pro mě se jendná jen o práci a starosti (+ potěšení z toho, že něco pěkného vznikne pro projekty a studnety) a know how, které stejně převážně vzniklo a vzniká mimo školu, třeba někdy použiji i ve firmě.
[*1]Jak probíhalo vyučování a vyrovnání na úrovni FEL a CIIRC při přesunu projektu nevím a vlastně mě ani nezajímá. Stále mě ještě trochu zajímá, jak je to s právy ke kódům ostatních projektů - často (často se jednalo o DP, do kterých jsem sehnal studenty, vedl je a ve skupině přispíval). S DP v použitelné podobě, ale kvůli (sice neexkluzivním vztahům a obchodování) s průmyslovými partnery v použitelné podobě publikované být po rozhodnutí doktora Michala Sojky a pana profesora Zdeňka Hanzálka nemohly. Když jsem je chtěl nabídnout jiné univerzitě, čekalo jen mlčení a nejspíš již skončily v zamknutém šuplíku včetně praktických výsledků vědeckých prací a demonstrátorů pro firmy, které vznikly na FEL a sloužuïly k propagaci skupiny. Ale cena roků investovaných do těchto prací klesá a nejspíš rozpadnou se stejně v prach, jako mnoho jiného, co jsem pro skupinu dodal, přinesl.
Jinak aby bylo jasno, já si samozřejmě taky myslim, že kvalita dnešních studentů strukturovaného studia je tragická (stejně jako si to o nás myslela ta generace, která ještě musela dělal souborné zkoušky...), ale je diametrální rozdíl jestli to veřejně prezentuje vysokoškolský pedagog o svých studentech v polooficiálním popisu předmětu, nebo já tady v diskuzi...
kvalita dnešních studentů strukturovaného studia je tragickáJenže takové prohlášení je samo o sobě docela k ničemu. Ti studenti za to sami nemůžou, může za to systém studia, který od nich něco (ne)vyžaduje a něco po nich (ne)chce. A jsou profesoři, kteří nad tím jen mávnou rukou a hodí to na studenty a jsou profesoři, kteří se rozhodnout tomu pomoci. Třeba já jsem vystudoval fyziku prezenčně, ale spoustu věcí jsem pochopil a dal si do souvislostí až ze záznamů přednášek profesora Kulhánka, který hned v první hodině prohlásí: zapomeňte na všechno co víte, uděláme to celé znovu od nuly. A udělá to. Stejný přístup někde prezentoval i profesor Putna (v úplně jiném oboru), že nechce být stejný jako ostatní vyučující, ale že on to ty studenty prostě naučí bez ohledu na to, co už mají umět před nástupem do jeho kurzu. A tento přístup je podle velmi správný. Místo rezignovaného "njn, to jsou dnešní studenti" se pokusit s tím něco udělat.
Však ten bohorovnej přístup: "já to dělám dokonale, to jenom ti studenti jsou neschopný" je to, co mě v tom původnim příspěvku tak vytočilo. Protože si stále ještě z doby svých studií pamatuju, že často tomu tak fakt nebylo. Někteří vyučující si ale odmítali byť jenom připustit, že důvod, proč nikdo nechodí na jejich přednášky není, že by na to studenti tak kašlali ale tragická úroveň těch přednášek.
Na druhou stranu k tomu aby si studenty něco naučil tam musíš mít lidi co jsou schopný a ochotný se něco o dané složitosti naučit. Procento těch chytrých/odhodlaných bude v čase +/- stejný, takže pokuď si dáš za cíl zvýšit počet absolventů jako je trend v posledních letech, vede to automaticky na snížení nároků nebo na kolizi s realitou u vyučujících. Ty čtyry společný semestry vyhazovacích předmětů co za nás byly sice nepřinesly moc praktického užitku ale způsobily to, že s moc neschopnejma lidma se tam člověk potom nepotkával.
Takže ten problém není ani tak o kvalitě ale o množství. Těch použitelnejch lidí tam dneska bude stejně jako před 50 lety, ale k nim tam máš i masu dalších, co by tam před 50 lety nebyli (včetně mě). A ty už prostě tím, že půjdeš ve výuce důsledně znovu od základů, "nepořešíš".
Nelze si prostě myslet, že se někam posunemA kam by ses chtěl posunout a proč tomu vadí počty studentů?
Pokusy realizovat populistické heslo "zvýšíme procento vysokoškolsky vzdělaného obyvatelstva" ve výsledku nevedou ke vzdělanější populaciTo asi záleží co se tím myslí a co kdo chtěl za výsledek. Přijde mi zvláštní, pokud by se se zvýšeným počtem studentů na nich přece jen neulpěla nějaká myšlenka nebo znalost. Vlastně moc (možná naivně) nevěřím tomu, že by se do určité kritické masy nedalo nahustit vůbec nic. Viz třeba legendární díl Ano Šéfe S6E02 - Učiliště Trmice, kde i s deckama, nad kterými i ředitel zlomil hůl, dokázal něco udělat a několika z nich změnit kariéru, kterou by jim škola s vyhořelým ředitelem ani omylem nedala.
ke snižování nároků a devalvaci toho, co takové "vysokoškolské vzdělání" znamená.Jasně, ten papír má mnohem nižší hodnotu. Na druhou stranu, pokud někdo chce přikládat váhu papíru, tak asi dělá něco špatně. Já svůj titul nepoužívám, někde po mě chtěli přinést diplom, protože to nemám v občance, tak jsem s tím přestal šermovat.
třeba legendární díl Ano Šéfe
jojo slavný hrníčkový elpaso babičina zlatýho řetízku :D :D :D :D videjko
Ad trmice ... to je nahodou krasna ukazka schopnyho vs neschonyho "ucitele". Vem si, ze se to toci par dnu, zkus si predstavit, ze by si je vzal do parady na par mesicu. A co vic, ono by je to (casto prave ty "odepsany") zacalo i bavit.Ano, přesně z tohoto důvodu jsem to sem dal. A krásný díl je i "Návraty", kde se ukazuje, že ředitel té školy nemá nejmenší páru co tím chtěl Zdeněk vlastně říct. Hlavně že furt blábolí cosi o studijních předpokladech a o tom, proč s výučním listem na kuchaře vlastně nemají umět ani zapnout konvektomat (což je Poly naučil za 5 minut).
A kam by ses chtěl posunout a proč tomu vadí počty studentů?
Směrem k vyspělým (nebo lépe řečeno bohatším) západním státům. V zásadě je toto dnes mainstreamový politický názor, že západ doženeme jenom zvýšením vysokoškolsky vzdělané populace. Já ale dlouhodobě pozoruju, že rozhodující je kvalita, ne kvantita. Pokuď z FELu polezou kvanta programátorů mobilních/webových appek, nikdy nebudeme tou zemí, kde probíhá ten state-of-the-art vývoj, který si můžeš nechat draze zaplatit (protože ho nikdo jiný vůbec nedokáže). Počty pak vadí v tom, že samozřejmě rozmělňujou zdroje (peníze a čas kvalitních pedagogů) vynaložitelné do vzdělání těch "kvalitních" lidí.
Celé to má samozřejmě spoustu otázek, jako například kde je ta hranice "kvalitních" lidí, co s těmi ostatními, případně jak to implementovat (Německý model Univerzita/Fachhochschule?).
Směrem k vyspělým (nebo lépe řečeno bohatším) západním státům.Tomu rozumím, ale nerozumím, proč tomu vadí počty studentů. Česká věda se potýká s úplně jinými problémy, přidělování grantů, publikuj nebo zemři, politická (ne)podpora, vůbec to, jak se ve veřejném prostoru o vědě mluví apod. Tohle nemá s počty nic společného. A přijde mi, že počet studentů je oblíbený zástupný problém uváděný těmi, kdo by stejně tu špičkovou vědu ani nedělali. Jinými slovy, kdybychom nějak snížili počty studentů, tak se na straně jedné sníží dostupnost vzdělání, a na druhé straně se nestane vůbec nic. Protože špičkové týmy na světové úrovni tu máme i dnes a potýkají se s úplně jinými problémy, než je tento.
Pokuď z FELu polezou kvanta programátorů mobilních/webových appek, nikdy nebudeme tou zemí, kde probíhá ten state-of-the-art vývoj, který si můžeš nechat draze zaplatit (protože ho nikdo jiný vůbec nedokáže).Viz výše. Je klidně možné, že ti lidé objektivně na více nemají, takže je lepší, pokud z nich budou alespoň vývojáři webových appek, než nikoliv. A v praxi vidím (na kamarádech i kolezích v práci apod.), že je lepší mít třeba jen rok nedokončeného studia informatiky než ho nemít. Protože už v tom prvním roce narazí na algoritmy a složitosti, na cvičení si uvědomí, že je velký rozdíl mezi O(log(n)) a O(n^2) a alespoň trochu se jim to vleje do mozku. Naopak lidi, kteří tvrdí "já jsem z učnáku s maturitou a na rozdíl od tebe jsem zbytečně neztrácel čas na škole" tohle jen těžko chápou a je jim to vlastně jedno. Takže i webvývojář z FELu je ta lepší varianta.
Celé to má samozřejmě spoustu otázek, jako například kde je ta hranice "kvalitních" lidíAsi tak. Dneska mi YT nabídl tohle video, podle všech studijních předpokladů měl být autoklempířem, dneska místo toho raději učí na Oxfordu. Jsem velmi zvědav, jak tohle někdo zvládne odfiltrovat (ještě před vysokou) a vědět, co je pro koho dobré.
Je klidně možné, že ti lidé objektivně na více nemají, takže je lepší, pokud z nich budou alespoň vývojáři webových appek, než nikoliv.Na to ale nepotřebují vysokou školu, bohatě by stačil jeden nebo dva předměty na vhodně zaměřené průmyslovce.
Procento těch chytrých/odhodlaných bude v čase +/- stejný, takže pokuď si dáš za cíl zvýšit počet absolventů jako je trend v posledních letech, vede to automaticky na snížení nároků nebo na kolizi s realitou u vyučujících.Mě tohle nevadí. Osobně si myslím, že možnost studovat by měl mít vlastně každý a je dobře, pokud co nejvíc lidí alespoň zažije tu zkušenost, to prostředí, ten přístup ke znalostem apod. A taky nikdo dopředu nemůže vědět, na co kdo má a na co nemá, takže nějaká předběžná segregace není dobrý nápad. Ostatně je super, že některé univerzity už i v Česku začínají přednášky natáčet (takže Kulhánek, který to dělá od roku 2003 už není moc sám) a je to tedy přístupné všem. (Jinak přednášky jsou samozřejmě veřejné, ale málokdo tam skutečně chodí, já si vlastně nepamatuju, že by k nám na nějakou přednášku přišla "veřejnost".) Jinak si myslím, že tohle (počty studentů) není téma. Dobrý učitel tohle chápe a ví, že ze všech odborníky stejně neudělá a že jestli z ročníku bude alespoň jeden, kdo výrazně přeroste, tak je to vlastně úspěch. A tohle mnoho odborníků říká svými slovy taky (slyšel jsem to od Grygara, Kulhánka, tuším i Podolského a je spousta lidí, kteří se k tomu pochopitelně nemají potřebu vyjadřovat a jen to tak dělají).
Ideální by bylo, aby si studium mohl vyzkoušet každý a ideálně v takovém kolektivu, ve kterém by byli všichni ostatní jen o něco málo lepší než uvažovaný adept a zároveň aby měl někoho, kdo je zase o něco horší, aby měl důvod mu látku vysvětlovat a tím si naučené znalosti převáděl na pochopené principy.Musím říct, že mě zaráží, že se tohle nedělá (konkrétně mám na mysli základní a střední školy, kde je minimálně ve městech vždy několik tříd v ročníku, takže by to šlo normálně setřídit a rozdělit, a přitom rozdělení bývá maximálně u jazyků), a naopak v současnosti probíraná „inkluze“ jde úplně proti tomu.
Pořád mám sice neodbytný pocit, že počet studentů jsi začal řešit až ty, zatímco ti před tebou mluvili o negativním dopadu snah zvýšit počet absolventů. Snahy zvýšit počet studentů mi až tak moc nevadí, aspoň pokud se to udrží v rozumných mezích.
Ale proč ne, dovolím si rýpnout trochu i do tohoto tématu. Kdo si někdy zkusil přednášet, dobře ví, že kvalita komunikace klesá s počtem posluchačů. Podle mé zkušenosti se to nezastaví u toho, že oborová přednáška pro deset (ale třeba i třicet) lidí je úplně něco jiného než plenární přednáška pro stovku v prvím ročníku. Dvakrát jsem něco přezentoval pro ~300 lidí (globální konference) a jsem přesvědčen, že při takovém počtu už je jakákoli interakce s publikem v podstatě vyloučená (ne, nemyslím obligátní dotazy na konci). Podobně se vyjadřovali spolužáci, kteří současně s matfyzem (v ročníku nás v prváku bylo asi 120, takže na "velkých" přednáškách mohlo být tak 80-100 lidí) studovali VŠE (což byl v té době uznávaný průkopník přístupu "masovostí za rekordy"), také měli pocit, že počty ve stovkách nevyhnutelně vedou k anonymitě, jejímž výsledkem je, že - když to trochu přeženu - přednáška má oproti skriptům nějakou výraznou hodntou jen pro ty, kdo neumějí číst.
Takže si dovolím tvrdit, že i výrazný nárůst počtu studentů může mít negativní vliv na kvalitu výuky. (Což říkám při plném vědomí toho, že takový názor je v dnešní době velmi nepopulární a jde proti tomu, co "se ví".)
Takže si dovolím tvrdit, že i výrazný nárůst počtu studentů může mít negativní vliv na kvalitu výuky.Ja bych byl jeste prisnejsi. Jakou uroven muze mit cviceni, kde to realne zajima 2 lidi z 20? Jakou muze mit uroven skola, kde je hlavni ideou "jenom to zkusit"? Ono se to samozrejme odrazi i v zamereni samotnych studijnich programu, ktere vede k tomu, ze se skola snazi suplovat prakticke kurzy, nebo to co by si mohli zamestnavatele resit sami. Takze po trech letech ti z Bc. vypadne absolvent, ktery toho umi stejne, jak nekdo po roce v praci. Masovost jde proti kvalite, ale tezko s tim bojovat v dobe, kdy kazdy ma pravo na vsechno.
Tak pro QtMIPS vychází délka souborů na serveru
qtmips_gui.html 2.8K qtmips_gui.js 294K qtmips_gui.svg 15K qtmips_gui.wasm 12M
Nativní program pro x86_64 Gnu/Linux pak
text data bss dec hex filename 1344321 56712 25888 1426921 15c5e9 qtmips_gui
To je 1.5 MB, ale sdílené knihovny Qt5 zabírají asi 21 MB. Statický build teď po ruce nemám.
Těch 12 MB nakonec při uvažování zakompilování celých Qt5 (tedy vlastně jen Core, DBus, Gui, PrintSupport, Widgets, a XcbQpa + libelf + libpcre + musl libc) není až tak moc. Na druhou stranu v Kathmandu na slabé síti se to stahovalo snad 10, 20 minut.
Potíž jsou zatím v našem emulátoru grafické artefakty v canvasu. Jestli za ně mohu já, Qt nebo implementace WebGL v některých prohlížečích zatím nevím.
Moderní hipsterský programátor, pro kterého není problém aplikace v Elektronu co na textový chat potřebuje 1GB RAM, se bez těch znalostí samozřejmě obejde, ale od inženýra bych alespoň základní znalost toho, jak moderní processor funguje očekával... Prakticky takové optimalizace možná bude dneska řešit jeden člověk z ročníku, ale pokuď si ty ostatní odnesou alespoň to, že existuje něco jako profiler a je dobré se do něj občas podívat (i když v praxi zjistí, že bottleneck téměř nikdy není někde takhle nízko), tak mi to jako ztráta času nepřijde.
teda presne do okamziku, kdyz pracovaly s nejakou poloprazdnou demodatabaziJsem si vzpomněl na video o novém webu pro jednu takovou firmu. Něco jako Bell, nebo Cell, nebo tak nějak
80% lidí v IT dělá spíš nevývojářskou činnost, ať už je to byrokraticie s psaním dokumentů, dokumentace či manuální testováníI mezi lidmi co na to vystudovali high-endovou školu? Fakt? A pokud ano, není to blbě?
Ve skutecnosti nejde o to, co umi/znaji ITci, ale o to, co zada trh. Prijde mi naprosto padly na hlavu napriklad vyucovat obory/predmety zaobirajici se trebas tvorbou CPU ... protoze to ani ten jeden z toho rocniku delat nebude, jednoduse proto, ze nema jak se k tomu dostat.
Překonat D1 není žádná sranda, ale legendy vyprávějí, že se to některým povedlo. Dokonce jsem i zaslechl, že se v Brně dá trvale žít... Codasip
Do CODASIP se dvěma studenty z minulého běhu předmětu zítra jedu. Dále jedou kolegové, kteří budou cvičit, a Michal Štepanovský z FIT. Připravujeme tým pro switch předmětu na RISC-v.
Jeden z externích cvičících na letošní běh je i Roman Bartosinski, před lety můj diplomant. Kód svojí diplomky stále používá, z několika firem, kde i tento kód používají, byly i nějaké další jeho práce po ukončení studia placené a se mnou pro mojí firmu také jeden čas na větších projektech pracoval. Přesto, že se jednalo o čistě komerční projekt a my žádné dotace nedostali, tak ten zásadní kód, který za peníze psal, měl k dispozici i pro své případné projekty mimo firmu (viz licence). Před časem, když jsem vytvořil pro firmu skupinu na GitLabu, tak jsem i kód, nyní spíš již jen jako archivní, v přidal https://gitlab.com/pikron/sw-base/suitk.
Ve své vlastní firmě ze pak zabývá zpracováním obrazu na FPGA a také pro Evropskou vesmírnou agenturu vyvíjel rozšíření architektury SPARC o microthreading, viz kniha UTLEON3: Exploring Fine-Grain Multi-Threading in FPGAs.
S Jiřím Gaislerem (autorem SPARC Leonu) se zná a sám jsem se s ním také "potkal" v e-mailech při diskutování ohledně RTEMSu.
Takže i přímo pro vývoj architektur se znalosti hodí i pro ty co zůstali v Čechách. Někteří se ale vypraví i za hranice, další můj diplomant u mě pracoval na FPGA a potom jsem mu psal doporučení na zelenou kartu do USA, kde nejdříve u Intelu a potom u Apple navrhoval zpracování obrazu určené pro implementaci v na míru navržených čipech se zaintegrovanou ARM architekturou.
A i pokud vysloveně pipelining nebo low level nepotřebujete ani k té představě, jak počítače chodí, tak minimálně je to hezká a milá rozcvička alespoň trošky paralelizmu a sekvenčního chování. V realitě toto může být u clodových technologií a dalších frameworků na pochopení mnohem složitější a často mnohem hůře dokumentovaný stavový automat, než ten maličký a elegantní RISCový CPU.
Electron framework sám neznám, ale hned v popisu na Wikipedii There is the "browser" process and several "renderer" processes, aha takže fronty požadavků a paralelizmus a třeba i něco jako pipelining, aby busyness logika nebyl trvale brzděná renderingem. Hmm, není to podobné problémům se zparcováním instrukcí. Most of Electron's APIs are written in C++ or Objective-C and then exposed directly to the application code through JS bindings. Hmm, nebude při ladění a třeba někdy i při vývoji potřeba nakonec nahlédnout do zdrojových kódů v jazyce C? Při průchodu dokumentací, to je na dlouhé čtení, opět, kdo nedokáže přečíst pár stránek třeba o pipeliningu, nebude mít starosti i s takto velkým systémem. OK, když bude jen kopírovat a skládat cizí příklady, tak možná nebude dokumentaci muset číst nikdy.
Co se týče velikostí aplikací, tak právě s výše uvedeným kolegou jsme to SuiTk psali jako grafickou knihovnu (včetně signal slotů) pro infúzní pumpy, kam jsme si netroufli v té době dát GNU/Linux. I včetně OS RTEMS byl pak firmware celé pumpy asi v 5 MB kódu, přitom velkou část zabírají zakompilované předrenderované fonty. Jádro knihovny pak zvládá signály a událostmi řízený objektový model i na jiných zařízeních s 64 kB RAM, kam se musí ještě vejít časový program LPC520. Takže věřte, že o kompromisech mezi místem, použitými knihovnami a prostředky jsme se něco naučili.
A ano, dnes pro mnoho zařízení je možné použít třeba Qt a GNU/Linux a je to mnohem jednodušší a graficky povedenější. nebo i tu webovou aplikaci. Na druhou stranu, pokud je potřeba dostat grafiku do vypínače světel, tak se opět z důvodu ceny řeší, jak použít DMA na LPC pro alespoň trochu akceleraci na procesoru s 64 kB RAM a jsou firmy, které takové optimalizace na Embedded Wordu předvádí a nabízí.
PS: Všiml jsem si, že jsem včera večer nadělal překlepů mnohem více než obvykle. Weekend jsem trávil na Tolkienconu a trochu jsem se nechal unést posloucháním koncertování v Roklince a moc se nevyspal. Ale stálo to za to.
Odkaz na pumpu jsem dal špatně, ta odkazovaná má ekvivalent textových turbovisions napsaný v assembleru na 80552 (8051), to je z doby, kdy jsme nemohli slušný procesor pro vyskou cenu do zařízení použít, zdrojový kód té staré pumpy je zde https://gitlab.com/pikron/projects/sw51-pbproj/blob/master/lp2/lp.asm a zde https://gitlab.com/pikron/projects/sw51-pbproj/tree/master/pblib, počáteční verze kódu první pumpy a detektoru LCD4000 https://gitlab.com/pikron/projects/sw51-pbproj/tree/master/sf, pochází z doby, kdy jsem studoval první a druhý ročník na FEL, takže to vlastně odpovídá věku studnetů, které teď sám učím.
Fotka přístroje s LPC1768 a grafickou knihovnou SuiTk je zde http://pikron.com/pages/products/hplc/lcp_5024.html.
Podle mne je především zásadně pochybená už sama představa, že studium na vysoké škole by mělo obsahovat výhradně to, co student následně přímo použije v praxi.A jakým způsobem bys teda určil, co by se mělo a nemělo učit na škole? (Tím tvůj komentář nechci rozporovat, jenom mi to z toho není jasný.)
U vysokých škol bych to nechal z velké části na nich. (S tím, že samozřejmě pořád musí existovat nějaký akreditační proces jako dohled, jestli se někdo nesnaží provozovat samoobsluhu na tituly.)
Můj komentář byl míněn především jako kritika takového toho tvrdě praktického přístupu ve stylu "je nesmysl učit všechny céčko, protože většina v céčku programovat nebude", který se tu občas objevuje. Takový pohled považuju za zhoubný i na technice (která má z podstaty věci k praxi trochu blíž), natož na škole typu MFF UK.
Přitom největší nezájem o předmět vnímám právě u studentů, kteří se vidí jako budoucí významní programátoři mobilních a webových aplikací a cloudových technologií. Neumím si představit, jak chtějí tito, často na svoje schopnosti až příliš spoléhající, programátoři takovéto aplikace navrhovat.Zkuste si nekdy takovou aplikaci naprogramovat. Zkuste si udelat treba nejakou malou appku pro Android, ktera bude pristupovat k nejake cloudove sluzbe. Mozna budete prekvapeny, jak neuveritelne daleko jste od skutecneho hardware a jak odlisne znalosti potrebujete. V takovem prostredi se neda moc uvazovat o cache a poradi instrukci procesoru (a pokud to nekdo dela, je to obvykle spatne). Dtto informacni systemy v jave, webove aplikace v php, cloudove aplikace v pythonu. Co si budem nalhavat, programovani v C, C++ na te nejnizsi urovni je domenou stale mensiho mnozstvi programatoru (i kdyz chapu, ze na CVUT to muzete vnimat jinak). Myslim, ze by tomu sluselo rozdeleni na dva predmety -- to opravdove minimum, ktere by meli znat opravdu vsichni programatori a pak pokrocilejsi partie pro ty, kteri se budou venovat nizkourovnovemu programovani.
programovani v C, C++ na te nejnizsi urovni
Pro zajímavost: aktuální topic našeho IRC kanálu zní
If C is a low level language to you then you have no idea how deep this rabbit hole really goes.
:-)
If C is a low level language to you then you have no idea how deep this rabbit hole really goes.To moc dobre vim, ... teda tusim.
programovani v C, C++ na te nejnizsi urovniDovysvetlim. Byla tim myslena podmnozina programovani, kde clovek opravdu musi resi vlastnosti hardware, cache, atp. Takove programatory taky potrebujeme, ale je dobre, ze vetsina programatoru takove veci uz resit nemusi (ehm, electron, je druhy extrem).
V první řadě děkuji všem za zájem o předchozí zápisek ...Um,... ten je kde?
hele ;D
Druhý úkol je zaměřený na optimalizaci/minimalizaci počtu výpadků vyrovnávací paměti při realizaci algoritmu ostření obrázku. (...) a aby absolventi díky znalostem chování procesorů, vyrovnávacích pamětí i vstupně výstupních subsytémů programovali aplikace s větší propustností, menšími nároky na pamět, energii (baterie) atd.Proč má ten předmět takovej důraz na psaní optimalizovaných programů? Není právě od tohohle předmět Algoritmizace, Pokročilá algoritmizace a podobně?
Do budoucna máme zájem kurz aktualizovat a pro výuku využívat otevřenou procesorovou architekturu RISC-V.Co si myslíš např. o této kritice RISC-V? Můj dojem je, že suverénně hlavní důvod propagace RISC-V je otevřenost a vlastním návrhem se zabývá velmi málo lidí, případně často prosazují dogma o dobrém RISCu a špatném CISCu. Tím nechci říct, že RISC-V je špatná volba. Já tý platformě taky fandim, i přes případné problémy. Že by se s tim ale student setkal později v praxi považuju spíše za nepravděpodobný. O tomhle ale zřejmě víte, vzhledem k tomu, že v úkolech vidím práci s x86.
Nejvíce mě pak zajímají názory těch, kdo již měli možnost znalosti využít v praxi.Tohle je tak obecná otázka, že na to IMO nemůžeš dostat moc dobrou odpověď, resp. dostaneš odpověď podle zaměření daného člověka. Někdo, kdo píše operační systém nebo něco těžce algoritmickýho nebo podobně ti řekne, že to je super, případně, že bys měl ještě přitvrdit. Kdo vyvíjí mobilní aplikace, řekne ti, že zatěžuješ studenty věcma, který nebudou potřebovat. Kdo vyvíjí backend služeb, řekne, že řešit výpadky cache je sice cool, ale reálně potřebuje člověk řešit správně zvolené schéma databáze, správně napsané queries, správně vytvořené indexy a podobně. Osobně pracuju v oblasti, kde low-level věci potřebuju občas řešit (třeba tady jsem potřeboval znalost arm assembly a další příbuzné věci), ale nemam to na každodenním pořádku. Takže ano, věci, které učíš, využiju, ale obecně nevim, co poradit, protože to zaměření je pak v praxi hrozně různé a jiný lidi dělají různými směry diametrálně odlišnou práci. Taky nesouhlasim úplně s tím, že ty znalosti jsou tak hodně přenositelný a že i aplikace v Electronu řeší stejné problémy. Principielně a na velmi obecný úrovni by se dalo asi říct, že jo, ale ty detaily a technologie jsou jiný. Navíc mi to řešení výkonu programů do předmětu 'Architektura počítačů' zapadá jen okrajově. Tam bych viděl spíš jako důležitý principy fungování, s tím, že případný benefit v rychlosti software může být příjemný vedlější efekt. V praxi IMO stejně rychlost softwaru je daná především tím, co je zaměstnavatel programátora ochoten zaplatit / jak moc velkou priroritu je ochoten tomu dát, spíš než tím co se student naučil v druháku na bakaláři.
Druhý úkol je zaměřený na optimalizaci/minimalizaci počtu výpadků vyrovnávací paměti při realizaci algoritmu ostření obrázku. (...) a aby absolventi díky znalostem chování procesorů, vyrovnávacích pamětí i vstupně výstupních subsytémů programovali aplikace s větší propustností, menšími nároky na pamět, energii (baterie) atd.Proč má ten předmět takovej důraz na psaní optimalizovaných programů? Není právě od tohohle předmět Algoritmizace, Pokročilá algoritmizace a podobně?
Sohlasím s dalším, že hlavní smysl je porozumění. Co se týče cache, tak myslím, ta demonstrace za živého sezení z Linuxdays 2019 na úrovni sčítání dvou osmi položkových vektorů je (snad) správnou snahou ukázat problém na mikroúrovni a pak podobný nechat studenty řešit na úrovni aplikační a mohlo by to (snad) prospět k propojování znalostí a uvědomění si té spojitosti.
Do budoucna máme zájem kurz aktualizovat a pro výuku využívat otevřenou procesorovou architekturu RISC-V.Co si myslíš např. o této kritice RISC-V? Můj dojem je, že suverénně hlavní důvod propagace RISC-V je otevřenost a vlastním návrhem se zabývá velmi málo lidí, případně často prosazují dogma o dobrém RISCu a špatném CISCu. Tím nechci říct, že RISC-V je špatná volba. Já tý platformě taky fandim, i přes případné problémy. Že by se s tim ale student setkal později v praxi považuju spíše za nepravděpodobný. O tomhle ale zřejmě víte, vzhledem k tomu, že v úkolech vidím práci s x86.
Když jsem se o RISC-V bavil s Tomasem Gleixnerem, tak měl k jeho paměťovému modelu také výhrady. Něco se trochu mezi verzemi specifikace změnilo, minimálně je prostor pro to nastavovat typ operace s hlediska paměťového modelu. Ale posoudit to komplexně nedokáži.
S tím, že indexace (adresování register + registr ideálně s posunem) chybí, souhlasím. Ale není to tak velký problém, jak je to ukazované. Na ARM/AArch64 to budou dvě 32-bitů dlouhé operace. Přitom u AArch64 o něčem jako Thumb nepřemýšleli a již to nejspíš nejde přidat (volný bit v kódování nečekám). A i ARM32 Thumb je s granularitou celé funkce/bloku. RISC-V přístup jde o hodně dál. Na většině implementací RISC-V (C je většinou počítané) vyjde sekvence nejspíš na 1x 32-bitů a 3x 16-bitů, to není o tolik delší. Stejně tak postinkrement a predekrement, chybí, ale kombinace obyčejného 16-bit kódovaného LW/SW a 16-bit přičtení je OK. Přitom opravdu vyjde dekodér jednodušší a SW pak nemá tři a nebo dokonce víc vstupních závislostí. Takže z hlediska kompromisu, bych celkem věřil, že volby RISC-V jsou v pořádku. Ale jasně, je to jen pocit a ani žádná analýza těch chytřejších, než jsem já, vše nepodchytí. Opravdu to ukáže až čas. A tam je zase problém, že často je technické ohodnocení pokřivené finanční stránkou.
Nejvíce mě pak zajímají názory těch, kdo již měli možnost znalosti využít v praxi.Tohle je tak obecná otázka, že na to IMO nemůžeš dostat moc dobrou odpověď,
jasně, jednu určitě ne, ale vzniká nějaký přehled názorů a ten je důležitý jak pro mě, tak třeba i pro studenty. Ano, jsem si vědom toho, že zde, na ABClinuxu spíš asi ovlivněný ve prospěch předmětu. Ale já nevím, kde jinde se moc zeptat. Znám ROOT, ABClinuxu a pak LWN. Do předloňska jsem na firmu kupoval Chip, abych měl takový ten přehled, co se se zrovna nabízí lidem, spíše ze světa Windows a her, jako zajímavé. Ale přestal jsem mít čas a i chuť se tím probírat. Zaujalo mě tam toho málo.
V praxi IMO stejně rychlost softwaru je daná především tím, co je zaměstnavatel programátora ochoten zaplatit / jak moc velkou priroritu je ochoten tomu dát, spíš než tím co se student naučil v druháku na bakaláři.
V zásadě souhlasím, ale s lidmi bez znalostí a schopnosti znalosti hledat a učit se, to dobře nedopadne.
Pro zájemce o problematiku procesorů, výuky, embedded systémů a RT řízení upozorňuji, že na letošním InstallFestu můžeme v debatě o výuce a našem přístupu pokračovat na wokshopu QtMIPS Hands on Session to Understand Computer Architectures and Discuss Its Teaching, který bude probíhat přímo v počítačové učebně, kde předmět vyučujeme.
Dále povedu workshop Embedded Linux, FPGA and Motion Control Hands-On, kde si budete moct vyzkoušet vývojové kyty MZ_APO. Představuji si, že si z nuly v C napíšeme řízení DC motoru z userspace přes mmap() periferií (něco na způsob mého článku na Rootu na podobné téma pro experimenty s Raspberry Pi). Možná pro IRC napíšeme driver. Dále si budete mít možnost na 16 kitech se Zynqem a budiči DC motorů vyzkoušet high level grafický návrh regulátoru s využitím Matlab/Simulink targetu. Předvedu i jak za běhu Linuxu rekonfigurovat s mainline+RT patch jádrem FPGA design a zavést drivery. Pár desek si i propojím CAN sběrnicí a vyzkoušíme CTU CAN FD open-hardware IP core a příslušné drivery.
Na host počítačích bude Debian Bullseye, na Zynq Buster logn term 4.19-rt jádro, vše z Diskless infrastruktury K13135.
K poslední plánované přednášce o vývoji architektur jsem doplnil odkaz na její přednesení v rámci konference InstallFest21. Vzhledem k výpadku dvou týdnů výuky v letním semestru akademického roku 2019/2020 se již do přednášek v rámci semestru nevměstnala.
Prezentace k přednášce Vývoj architektur procesorů na příkladech inovací od i4004 k Apple M1 a příštím generacím RISC-V jsou k dispozici ve formátu PDF.
Záznam prezentace je pak k dispozici zde na YouTube https://youtu.be/v2vHgf83E-0.
O vlastní samostatné práci na přípravcích MZ_APo a jejich rozšíření o další funkce užitečné k výuce přednesli příspěvek i naši studenti, (viz zprávička na webu IO Studenti OI přednášeli na konferenci InstallFest 2021)
Studenti minulého běhu také připravili propojení zkratek používaných v oboru s našimi prezentacemi a Wikipedií (Abbreviations for Computer Architectures)
V letošním běhu pak přidal videa se zkráceným výkladem pan doktor Petr Štěpán (YouTube kanál). Snahou je soustředit se především na základy nutné pro zvládnutí domácích úloh a práce v semestru a obecně nabídnout výklad vedený někým jiným, který může někomu vyhovova lée než moje snaha předávat především i širší souvislosti.
V tuto chvíli pak připravujeme pro naše studenty virtuální laboratoř pro práci s reálným hardwarem. Koncept byl testovaný v rámci workshopu Distance Hands on Session with Real Embedded Linux, FPGA and Motion Control Systems na konferenci InstallFest21 (YT, PDF). Pár fotek z provozu virtuální/reálné/vzdálené laboratoře je k dispozici na Rajčeti.
Tiskni
Sdílej: