Tuesday, 2020-05-26

*** tpb has joined #yosys00:00
*** emeb has quit IRC00:15
*** emeb_mac has joined #yosys00:23
*** N2TOH_ is now known as N2TOH00:23
*** BinaryLust has joined #yosys00:47
*** emeb_mac has quit IRC01:14
*** emeb_mac has joined #yosys01:17
*** Degi has quit IRC03:01
*** Degi has joined #yosys03:02
*** rlee287 has quit IRC03:12
*** bouliiii has quit IRC03:19
*** heijligen has quit IRC04:23
*** heijligen has joined #yosys04:24
cr1901_moderndaveshah: I made a mistake with my PR. Quelle surprise. https://github.com/SymbiFlow/prjtrellis/pull/14204:31
tpbTitle: Update environment.sh by cr1901 · Pull Request #142 · SymbiFlow/prjtrellis · GitHub (at github.com)04:31
*** dys has quit IRC06:05
*** citypw has joined #yosys06:24
*** parport0 has quit IRC06:26
*** emeb_mac has quit IRC06:29
*** parport0 has joined #yosys06:29
*** dys has joined #yosys06:55
*** jakobwenzel has joined #yosys07:27
*** bouliiii has joined #yosys07:58
*** kraiskil has joined #yosys07:59
*** Asu has joined #yosys08:18
*** jakobwenzel has quit IRC08:53
*** BinaryLust has quit IRC09:03
*** vidbina has joined #yosys09:09
*** bouliiii has quit IRC09:14
*** jakobwenzel has joined #yosys09:17
*** vidbina has quit IRC09:31
*** kgugala has quit IRC10:19
*** kgugala_ has joined #yosys10:20
*** vidbina has joined #yosys11:47
*** az0re has quit IRC11:52
ZirconiumXecho 'REEBE: NOP qverpgbel vf n ut jbexvat pbcl! Erzbir nop/ naq er-eha "znxr".' | tr 'A-Za-z' 'N-ZA-Mn-za-m'12:06
ZirconiumXClaire has a sense of humour, it seems12:06
daveshahThis is actually for a good reason12:07
daveshahIt's so "ERROR" doesn't appear when make echos the command, unless there actually is an error12:07
ZirconiumXMmm12:07
ZirconiumXBut you can equally get Make to not echo the command, so12:08
daveshahI remember this being discussed before, but I can't remember where12:08
ZirconiumX(@ prefix)12:09
daveshahYosys uses this, but it is disabled in verbose mode, iirc12:09
*** rswarbrick has joined #yosys12:14
*** X-Scale` has joined #yosys12:18
*** anticw has quit IRC12:18
*** X-Scale has quit IRC12:18
*** X-Scale` is now known as X-Scale12:19
*** anticw has joined #yosys12:19
*** Asu has quit IRC12:43
*** Asu has joined #yosys12:43
*** Asu has quit IRC12:51
*** Asu has joined #yosys12:52
*** anticw has quit IRC12:55
*** anticw has joined #yosys12:55
*** jakobwenzel has quit IRC13:05
*** anticw has quit IRC13:07
*** anticw has joined #yosys13:08
*** rswarbrick has quit IRC13:22
*** citypw has quit IRC13:47
*** emeb has joined #yosys13:56
*** anticw has quit IRC13:56
*** anticw has joined #yosys13:57
*** rswarbrick has joined #yosys14:17
*** jfcaron has joined #yosys14:36
*** anticw has quit IRC14:41
*** anticw has joined #yosys14:42
rswarbrickZirconiumX: Hi there! Can we follow up quickly on PR #2083 here?14:44
ZirconiumXSure14:45
rswarbrickCan you explain exactly what you measured? Those numbers definitely look worse with -DYOSYS_NO_IDS_REFCNT, but that seems slightly surprising to me (with or without the patch in the PR).14:46
ZirconiumXExecution time14:47
ZirconiumXUnfortunately I'm under WSL, so I can't run it under perf14:47
ZirconiumX(otherwise I would)14:47
rswarbrickThat's not what I meant. Did you compile the same code with and without the flag? And was that with or without the patch in the PR?14:47
ZirconiumXSame code with and without the flag14:48
ZirconiumXDidn't touch the patch, since I had a hunch it wasn't necessary14:48
ZirconiumXNumber of instructions has little correlation with speed14:48
rswarbrickOk, so I think you've just proved that this benchmark isn't affected by time spent refcounting.14:48
rswarbrickRe # insns / speed: Yes, until you get an icache miss. yosys is 8MB, so this is actually relevant, I thin14:49
rswarbrick*think14:49
ZirconiumX...no14:49
rswarbrickCan you explain what the "...no" is in answer to?14:50
ZirconiumXIf instruction count had any relation to speed then Rust code would not be competitive with C, for example14:50
ZirconiumXBut because we live in a world with superscalar out of order execution, giant caches and latency hiding, I really don't see it as a problem14:51
*** anticw has quit IRC14:51
ZirconiumXThe entirety of the Yosys executable could fit in my processor's cache14:51
ZirconiumXAnd it won't all be used at once14:51
*** anticw has joined #yosys14:52
rswarbrickOh, so you have an 8MB L1 icache and then a separate dcache? That's quite a bit bigger than my laptop.14:52
ZirconiumXIt doesn't need to all fit in L114:52
rswarbrick... but if it doesn't then you get cache misses. Which cost time.14:52
ZirconiumXI feel like you're arguing on what you *think* the problem is14:53
rswarbrickI think you're arguing about what you think I'm trying to improve :-D14:53
ZirconiumXThe SNES core is a pretty major workout for Yosys14:54
ZirconiumXAt 19.4k LUT4s14:54
ZirconiumXIf reference counting had any significant effect on the performance of Yosys, that would surely amplify it14:55
ZirconiumXBut nothing changes14:55
rswarbrickWait a sec...14:55
ZirconiumX27.2k cells, all of which need names (strings!)14:55
rswarbrickMy motivation here is that the code does less stuff with the patch. This may or may not improve wall-clock times today, but it definitely won't hurt, and makes things simpler over time. You're right that wall-clock times are the right thing to balance against "should we make the code more complicated".14:55
ZirconiumXRegardless of my own feelings on the patch, it'll still get vetoed by Claire14:56
rswarbrickI would argue that your benchmarking shows that we should never use YOSYS_NO_IDS_REFCNT (for safety, since the performance cost is tiny) and that we may as well pass the smart pointers by reference to avoid +1 -1 round-trips.14:56
rswarbrickOk. In which case, I hope she can weigh in on what she thinks the right approach is between do nothing / do something clever. I agree that the patch at the PR at the moment is neither of the two!14:57
ZirconiumXIf it was my own code, I would probably merge your patch, tbh14:57
rswarbrickThanks for your vote of confidence on the PR :-p14:58
ZirconiumXThough I'd be even more in favour of "use less IdStrings" over this15:00
*** anticw has quit IRC15:01
*** anticw has joined #yosys15:01
rswarbrickYeah. I guess I understand the value of interning stuff into a symbol table, though, so I'm not completely sure.15:02
ZirconiumXThe main aim is to speed up equality tests15:02
rswarbrickI've worked on a compiler in the past: I do understand what a symbol table does! :-)15:03
rswarbrickYou also get a total ordering on symbols (operator<), which can be handy.15:03
rswarbricke.g. you can compare sets of symbols for equality by first sorting (by the cheap integer comparison) and then ticking them off one-by-one.15:04
rswarbrickIn a very different world, Maxima (a computer algebra system) uses this as a trick for efficiently representing multivariate polynomials!15:04
ZirconiumXIn my own world - chess - we use sequential probability ratio tests to decide if something is better or not, but I haven't quite got the infrastructure to do that for FPGAs15:06
rswarbrickHmm, that's a new phrase to me. /me goes googling...15:08
sorearoh you worked on maxima?  need15:08
rswarbricksorear: Not recently, but I spent quite a bit of time on it 10 years ago or so.15:09
*** anticw has quit IRC15:46
*** anticw has joined #yosys15:46
*** vidbina has quit IRC15:54
*** anticw has quit IRC15:58
*** kraiskil has quit IRC15:59
*** anticw has joined #yosys15:59
*** dys has quit IRC16:06
*** emeb_mac has joined #yosys16:08
*** kraiskil has joined #yosys16:10
*** anticw has quit IRC16:15
*** anticw has joined #yosys16:15
*** anticw has quit IRC16:22
*** anticw has joined #yosys16:23
*** jakobwenzel has joined #yosys16:40
*** marex-cloud has quit IRC16:50
*** kraiskil has quit IRC16:50
*** rjeli has quit IRC16:50
*** emilazy has quit IRC16:55
*** kraiskil has joined #yosys16:55
*** mithro has quit IRC16:57
*** bubble_buster has quit IRC17:00
*** emilazy has joined #yosys17:00
*** bubble_buster has joined #yosys17:02
*** rswarbrick has quit IRC17:03
*** mithro has joined #yosys17:03
*** anticw has quit IRC17:06
*** anticw has joined #yosys17:07
*** emilazy has quit IRC17:07
*** bubble_buster has quit IRC17:10
*** az0re has joined #yosys17:17
*** mithro has quit IRC17:17
*** bubble_buster has joined #yosys17:21
*** emilazy has joined #yosys17:21
*** rjeli has joined #yosys17:22
*** anticw has quit IRC17:23
*** mithro has joined #yosys17:23
*** anticw has joined #yosys17:24
*** kraiskil has quit IRC17:56
*** anticw has quit IRC18:13
*** anticw has joined #yosys18:15
*** jfcaron has quit IRC18:18
*** jfcaron has joined #yosys18:18
*** BinaryLust has joined #yosys18:36
*** mirage335 has quit IRC18:41
*** mirage335 has joined #yosys18:54
*** mirage335 has quit IRC20:18
*** DaKnig has quit IRC20:39
*** daknig has joined #yosys20:45
*** daknig is now known as DaKnig20:46
*** strobokopp has joined #yosys20:48
*** mirage335 has joined #yosys21:03
*** jakobwenzel has quit IRC21:04
*** simeonm has quit IRC22:01
*** BinaryLust has quit IRC22:12
*** simeonm has joined #yosys22:22
*** Asu has quit IRC22:48
*** jfcaron has quit IRC23:15
*** emeb has left #yosys23:27

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!