Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2014-08-03

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
07:58 xstill jo no
07:58 xstill akorát že se mi nějak seknul screen nebo co
07:59 xstill hm, load 152
08:09 xstill jo už to má 8M stavů
08:37 xstill no blbé je, že nemůžeme najít livelocky, jako třeba ten bug co jsem opravil v csdr
08:59 mornfall livelock se definuje hrozně blbě
09:00 xstill no ale bohužel je to strašně častej problém
09:00 mornfall jako neprogresivní cyklus, ale potřebuješ nějakou metriku
09:00 mornfall zas tak strašně běžný to není :-)
09:00 mornfall v divinu snad, ale normálně to jen tak nepotkáš
09:03 mornfall navíc teda pokud máš fairness tak to není nutně tak velkej problém najít, i když jsem o tom teda zas tak moc neuvažoval
09:03 xstill no vyskytuje se to dost často když máš lock-free věci
09:03 mornfall (jen teda v tomto případě ta fairness bude muset fungovat asi trochu jinak)
09:04 mornfall když je tam livelock tak to nemůže být lockfree ;-)
09:04 xstill no tak lockfree je blbej pojem
09:05 xstill protože se tím dost často myslí, že tam nemáš systémovej mutex
09:06 mornfall to je skutečně mizerná definice :-)
09:06 mornfall nic, bbiab
09:25 mornfall jediný co mi přijde jako možnost jak to detekovat je labelovat hrany jako neprogresivní a hledat férový cykly s jen neprogresivníma hranama
09:25 mornfall jen se to rozsype v momentě když jedno vlákno dělá něco složitějšího než jen se točí na spinlocku
09:35 xstill musím si zjistit co je férovej cyklus
09:39 mornfall no, když na něm táhne každý vlákno (pokud může)
09:42 xstill aha, a jak určíš co jsou progresivní hrany? Ty co něco mění v datech stavu?
09:45 mornfall no, můžeš je explicitně popsat
09:46 mornfall žádná univerzální heuristika na to asi neexistuje
10:01 xstill hele, portuješ na ten bricks, nebo to mám udělat?
10:11 mornfall jo, portuju
10:11 mornfall jen se nemůžu rozumně zbavit unused warning na fce v anonymním namespace
10:11 mornfall a na webu jsem zatím nic nevyčetl :-)
10:13 mornfall asi jedině -Wno-unneeded-internal-declaration
10:13 mornfall a to taky nic nedělá... tak nevim :-)
10:16 mornfall musí se tam dát -Wno-unused-function ... nevim jestli to chceme?
10:18 mornfall nebo __attribute__((unused)) ale to je dost hnusný
10:18 mornfall (u každý fce v anonymním namespace která není inline)
10:24 mornfall xstill: přijde mi, žes ty includy zorganizoval obráceně ... normálně se includuje od nejspecifičtějšího k nejobecnějšímu, abys poznal když ten specifickej header neincluduje něco co by měl
10:26 mornfall (když v tom teda chceš mít nějakej systém)
10:27 mornfall ne že by to nějak extra pomáhalo :-)
10:28 mornfall možná by šlo nějakou cmake magií vyrobit ke každýmu .h .cpp který includuje jen ten .h a zkusí se přeložit
10:28 mornfall jen tak do zálohy...
10:31 mornfall (na druhý straně, pokud headery používaj using namespace tak by rozhodně měly být poslední :-)
10:33 mornfall já bych celej ten C preprocesor zakázal :D
11:32 xstill no tak organizace je motivovaný tím, že pokud se ti náhodou překrývají makra, tak je chceš překrývat specifičtějšími
11:33 mornfall překrývání maker nechceš nikdy, doufám
11:33 mornfall už using namespace v headeru je dost evil
11:33 xstill to už by snad bylo lepší ty funkce deklarovat jako static, i když potom to možná taky bude nadávat
11:33 mornfall bude
11:34 xstill chceš, miniálně assert se ti může stát dost lehce
11:34 mornfall nechceš :-))
11:34 mornfall proto se to taky už v bricks nejmenuje assert
11:34 xstill no dobře, nechceš, ale stát se může
11:35 mornfall může, ale aspoň je na to warning
11:35 xstill to jo
11:37 mornfall ono na tom zas tak moc nesejde
11:37 mornfall spíš mi vadí to že máme často nekompletní #include sekce v hlavičkách
11:38 mornfall ale na to je fakt nejlepší to nějak zkusit přeložit po jednom
11:46 mornfall http://clang.llvm.org/docs/Modules.html
12:13 mornfall taky ty patche moc netestuješ co? ;P nejdou přeložit unit testy, nejde přeložit gui... :-)
12:14 mornfall so zvědavej co ještě řekne hydra
12:25 xstill jo tak to jsem neotestoval, opravím
12:25 xstill aha tak už nic koukám
12:25 xstill dík
12:29 mornfall to je zase počasí...
12:30 xstill no tady taky
12:34 xstill tak ještě by to chtělo fifo, mám to udělat?
12:56 mornfall můžeš, já jdu jíst :-)
14:37 mornfall Attribute (maxmemory) does not pass the type constraint because: Validation failed for 'Int' with value undef at reader DSched::CGroup::maxmemory (defined at /nix/store/jnsp6azw496bz8zy91f691kza2wb3gkd-perl-dsched-0.2/lib/perl5/site_perl/DSched/CGroup.pm line 72) line 8.
14:37 mornfall xstill: měnil jsi něco v dschedu?
14:38 mornfall nejde se přihlásit na žádnou pheme...
14:38 xstill ne
14:38 xstill no protože tam chybí dsched grupa
14:39 xstill nevím jak se to teda stalo ale není tam
14:39 mornfall přitom cgconfig je active exited
14:39 xstill on nemá běžet myslím
14:39 xstill jen se spusti a nastavit to
14:39 mornfall však jo, chci říct že není failed
14:39 mornfall už to funguje
14:40 mornfall ale ten error není zrovna intuitivní :-)
14:40 mornfall restart cgconfig tomu pomohl
20:24 xstill uf, tak už jen nechat doběhnout testy a snad jsem nad tím zvítězil
20:44 mornfall nad čím? :) podle času bych řekl že to nebylo jen fifo :-)
20:46 xstill tak v podstatě celej toolkit + jsem dodělal ty patche na model divine do takového stavu abych ti je mohl poslat
20:52 xstill krom toho otestovat si vždycky, že sem něco nerozkopal špatně trvá, vlášť když to občas špatně je :-D
21:05 xstill prošlo všech 42 testů :-D
21:39 xstill jinak ten divine na auře už vygeneroval 15M stavů a komprese se celkem chytla
21:39 xstill tau redukuje i přes call?
22:19 mornfall jo

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary