00:03:17 and all i wanted to do is to port (typep y '(mod x)) optimizations to ppc 00:05:14 I think I'll re-implement the flow sensitive type stuff as extra annotations on cblocks. 00:06:15 something like an alist of ref -> ctype. The combination hack is too hacky. 00:07:09 pkhuong: can the reverse be derived as well? i.e. (declare ((mod 10) x)) (typep x '(mod 20)), and typep is folded to T? 00:07:24 yes. 00:08:13 because otherwise i had to add this https://github.com/stassats/sbcl/commit/1583d2d6339728dd95f15fa4b90bafa8e861c1ca#L3R128 00:08:27 I pushed one stab on github. 00:09:16 when the annotation is incompatible with derived types, it's converted into a special dead-code combination, and IF nodes simplify into progns. 00:21:03 so, ppc, mips and sparc all have stack growing downward 00:24:02 and on alpha 00:24:09 so, where does it grow upward? 00:25:34 maybe pa-risc? 00:26:32 shouldn't the feature be alien-stack-grows-upward then, since it's rare? 00:28:30 and on none does the stack grow sideways 00:29:25 the feature is control stack grows downward not upward 00:30:56 that's for the control stack 00:35:20 you mean a new feature. 00:35:30 I'd rather have two features to die hard when neither is defined. 00:35:35 but that's me. 00:35:55 that's what glibc does 00:36:37 I'd rather have the two features as well, and I WROTE the bit that dies hard when there's mutually incompatible features set. 00:37:52 why do we care where the c stack is? maybe just let pthread_create decide where to put it? 00:38:21 though, handling the guard page faults would be harder then 00:38:34 the c stack and the number stack are the same. 00:39:05 we could have separate c stack and number stack, but that's multiplatform surgery, and makes threads use even more (address) space. 00:42:12 does lisp have to know which way the alien stack grows? 00:46:12 if it's also used as the number stack. 00:50:26 and we it's target-dependent, so in theory doesn't need a feature 00:51:11 s/we// 00:51:56 i'm thinking maybe C_STACK_GOES_THAT_WAY should only be a C-side feature 00:55:05 stassats [~stassats@wikipedia/stassats] has joined #sbcl 01:00:14 -!- stassats [~stassats@wikipedia/stassats] has quit [Remote host closed the connection] 01:58:26 -!- scymtym_ [~user@ip-5-147-122-209.unitymediagroup.de] has quit [Ping timeout: 264 seconds] 02:08:35 echo-area [~user@182.92.247.2] has joined #sbcl 02:25:46 rpg [~rpg@216.243.156.16.real-time.com] has joined #sbcl 02:29:38 pranavrc [~pranavrc@unaffiliated/pranavrc] has joined #sbcl 02:34:27 -!- nyef [~nyef@pool-70-109-145-126.cncdnh.east.myfairpoint.net] has quit [Quit: G'night all.] 02:38:25 -!- christoph_debian [~christoph@ppp-93-104-181-102.dynamic.mnet-online.de] has quit [Ping timeout: 246 seconds] 02:43:25 Bike_ [~Glossina@wl-nat100.it.wsu.edu] has joined #sbcl 02:44:02 -!- Bike [~Glossina@wl-nat100.it.wsu.edu] has quit [Ping timeout: 264 seconds] 02:46:57 -!- Bike_ is now known as Bike 02:52:04 christoph_debian [~christoph@ppp-188-174-24-212.dynamic.mnet-online.de] has joined #sbcl 03:04:06 milosn_ [~milosn@user-5af501bb.broadband.tesco.net] has joined #sbcl 03:04:53 -!- milosn [~milosn@user-5af507e0.broadband.tesco.net] has quit [Read error: Operation timed out] 03:42:54 zulu_inuoe_ [~quassel@184.89.111.53] has joined #sbcl 03:48:06 -!- zulu_inuoe_ [~quassel@184.89.111.53] has quit [Remote host closed the connection] 03:55:29 momo-reina [~user@acl1-1557bts.gw.smartbro.net] has joined #sbcl 03:55:31 -!- rpg [~rpg@216.243.156.16.real-time.com] has quit [Quit: rpg] 03:59:55 -!- slyrus [~chatzilla@107.200.11.156] has quit [Ping timeout: 264 seconds] 04:08:51 -!- momo-reina [~user@acl1-1557bts.gw.smartbro.net] has left #sbcl 04:26:16 slyrus [~chatzilla@107.200.11.156] has joined #sbcl 04:49:55 edgar-rft [~GOD@HSI-KBW-149-172-63-75.hsi13.kabel-badenwuerttemberg.de] has joined #sbcl 05:14:09 sdemarre [~serge@70.122-64-87.adsl-dyn.isp.belgacom.be] has joined #sbcl 05:25:21 -!- sdemarre [~serge@70.122-64-87.adsl-dyn.isp.belgacom.be] has quit [Ping timeout: 256 seconds] 05:43:23 -!- yacks [~py@103.6.158.105] has quit [Quit: Leaving] 05:57:42 instead of doing LEA REG, [#xFIXUP-ADDRESS] doing MOV REG, #xFIXUP-ADDRESS saves 2 bytes, and the core becomes 65K smaller 05:57:57 though disassemble is now not annotated 06:48:24 lurch_ [~lurch_@d54C0761D.access.telenet.be] has joined #sbcl 07:09:28 lurch__ [~lurch_@d54C0761D.access.telenet.be] has joined #sbcl 07:11:23 -!- lurch_ [~lurch_@d54C0761D.access.telenet.be] has quit [Ping timeout: 240 seconds] 07:11:24 -!- lurch__ is now known as lurch_ 07:13:28 lurch__ [~lurch_@d54C0761D.access.telenet.be] has joined #sbcl 07:15:51 -!- lurch_ [~lurch_@d54C0761D.access.telenet.be] has quit [Ping timeout: 256 seconds] 07:15:52 -!- lurch__ is now known as lurch_ 07:19:33 -!- ASau` is now known as ASau 07:19:58 -!- lurch_ [~lurch_@d54C0761D.access.telenet.be] has quit [Quit: lurch_] 07:30:43 Odyessus [~odyessus@089144192036.atnat0001.highway.a1.net] has joined #sbcl 07:48:46 -!- Odyessus [~odyessus@089144192036.atnat0001.highway.a1.net] has quit [Quit: Colloquy for iPad - http://colloquy.mobi] 08:28:15 the disassembler seems to be the most arcane piece of code 08:28:26 i have not the slightest idea what's going on 08:40:07 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has quit [Remote host closed the connection] 08:41:38 yacks [~py@103.6.158.105] has joined #sbcl 08:56:05 attila_lendvai [~attila_le@BC9D175C.mobile.pool.telekom.hu] has joined #sbcl 08:56:05 -!- attila_lendvai [~attila_le@BC9D175C.mobile.pool.telekom.hu] has quit [Changing host] 08:56:05 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 08:56:28 so many levels of indirection 09:26:27 _danlentz [~danlentz@c-68-37-70-235.hsd1.nj.comcast.net] has joined #sbcl 09:31:56 _danlentz_ [~danlentz@32.139.73.221] has joined #sbcl 09:34:05 -!- pranavrc [~pranavrc@unaffiliated/pranavrc] has quit [Quit: Ping timeout: ] 09:34:24 -!- _danlentz [~danlentz@c-68-37-70-235.hsd1.nj.comcast.net] has quit [Ping timeout: 276 seconds] 09:37:45 -!- _danlentz_ [~danlentz@32.139.73.221] has quit [Quit: Colloquy for iPhone - http://colloquy.mobi] 10:32:59 echo-are` [~user@182.92.247.2] has joined #sbcl 10:35:30 milosn [~milosn@user-5af501bb.broadband.tesco.net] has joined #sbcl 10:36:05 pchrist_ [~spirit@gentoo/developer/pchrist] has joined #sbcl 10:37:08 -!- echo-are` [~user@182.92.247.2] has quit [Remote host closed the connection] 10:40:33 -!- milosn_ [~milosn@user-5af501bb.broadband.tesco.net] has quit [*.net *.split] 10:40:33 -!- echo-area [~user@182.92.247.2] has quit [*.net *.split] 10:40:34 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [*.net *.split] 10:40:35 -!- redline6561 [~redline65@li69-162.members.linode.com] has quit [*.net *.split] 10:41:08 redline6561 [~redline65@li69-162.members.linode.com] has joined #sbcl 11:29:49 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 11:42:33 ASau` [~user@p4FF9682C.dip0.t-ipconnect.de] has joined #sbcl 11:46:13 -!- ASau [~user@p5797EA21.dip0.t-ipconnect.de] has quit [Ping timeout: 248 seconds] 12:19:30 pranavrc [~pranavrc@unaffiliated/pranavrc] has joined #sbcl 13:17:20 segv- [~mb@95-91-243-229-dynip.superkabel.de] has joined #sbcl 13:20:02 -!- psilord [~psilord@c-69-180-173-249.hsd1.mn.comcast.net] has quit [Quit: Leaving.] 13:29:05 abarch's implementation of iterative coloring/spilling reduces the number of non-register normal TNs from 6% to 1-2% depending on parameterisation. 13:38:24 not sure what the test cases are like yet 13:38:25 -!- yacks [~py@103.6.158.105] has quit [Read error: Operation timed out] 14:05:30 -!- stassats` [~stassats@wikipedia/stassats] has quit [Ping timeout: 264 seconds] 14:11:19 stassats [~stassats@wikipedia/stassats] has joined #sbcl 14:11:44 pkhuong: i have used this script for statistics calculation http://paste.lisp.org/display/138447 14:15:10 i'm not sure how good would it be to speculatively label immediates as being addresses for static symbols, but without it LEA R11, [#x20200040] => MOV R11D, #x20200040 doesn't look very nice in the disassemble output 14:16:00 maybe tracking that it's later jumped to/called would be better, but the diassembler gives me a headache 14:16:09 stassats: try to find a hit, and emit a comment 14:16:15 worst case, it might still be a useful comment. 14:17:18 that's what i'm planning to, if it's an actual static symbol, annotate, maybe with "possible" or some other uncertain adjective 14:19:26 *stassats* suspects there are possibilities for space savings for disassemble definitions, once i manage to unravel things 14:49:01 psilord [~pkeller@23-25-144-217-static.hfc.comcastbusiness.net] has joined #sbcl 14:49:50 -!- segv- [~mb@95-91-243-229-dynip.superkabel.de] has quit [Remote host closed the connection] 15:22:52 yacks [~py@103.6.159.100] has joined #sbcl 15:25:17 stassats: I have a few plots measuring the differences between the various versions of %length-list 15:25:51 (I'm not sure you recall, it's about pkhuong ticket on changing the behaviour of length on circular lists) 15:26:04 how could I share them? 15:26:56 you can share them over the internet 15:28:19 davazp [~user@31.200.168.64] has joined #sbcl 15:33:24 -!- ASau` is now known as ASau 15:36:22 segv- [~mb@95-91-243-229-dynip.superkabel.de] has joined #sbcl 15:47:24 -!- segv- [~mb@95-91-243-229-dynip.superkabel.de] has quit [Remote host closed the connection] 15:49:08 segv- [~mb@95-91-243-229-dynip.superkabel.de] has joined #sbcl 15:59:16 -!- segv- [~mb@95-91-243-229-dynip.superkabel.de] has quit [Remote host closed the connection] 15:59:34 http://postimg.org/image/t4a542vzv/ 15:59:56 http://postimg.org/image/v8p9fl6f1/ 15:59:59 that's it 16:01:21 pkhuong: do you think it would make sense to change the calculation of TN spill-costs? 16:01:31 those are mixed shuffled and in order lists 16:02:02 my original plan was a bit different, but I couldn't dump the data on a database 16:02:17 in a* 16:04:37 teggi [~teggi@123.20.106.65] has joined #sbcl 16:09:55 abarch`: probably. I don't know that it's a priority. It's a nicely modularised bit of code, and can be tinkered with later. 16:11:25 segv- [~mb@95-91-243-229-dynip.superkabel.de] has joined #sbcl 16:11:37 Blkt: I tend to just append to a plain text file and select awk at it. 16:11:47 s/select// 16:12:16 Blkt: what's are vanilla, non-static and static? 16:12:26 vanilla is 1.1.10 16:12:43 non-static is without define-static-fun on %length-list 16:12:48 static is the opposite 16:13:08 Blkt: i can't make heads or tails out of it, mostly because of overlapping 16:13:59 and why is there a concentration around 0 cycles? 16:14:07 pkhuong: what do you think about splitting the life range of the TNs at the point when they would receive the save-penalty 16:15:27 Blkt: it's overplotted, but looks promising. If you have time to separate shuffled and linear lists, and to gather some statistics (e.g. a five number summary), things will probably be clearer. 16:15:49 I'll do that during this week 16:16:01 I'll be on holiday 16:16:02 abarch`: iirc, spill/load insertion logic is already pretty clever, so I'm not sure there's a big gain to be had. 16:17:04 we do not yet exploit moveable function attribute? so that functions could be moved around avoiding register saving around full calls 16:17:17 stassats: I'll write down the code tomorrow 16:17:18 movable 16:17:26 gnome 3 refuses to let me use the mouse now 16:17:32 and I have to go 16:17:38 cya later 16:21:58 pkhuong: ok, then i will leave the current version of cost calculation. however instead of packing the normal TNs with negative costs in the register, i would reschedule them for stack? 16:32:40 abarch`: sounds good to me. Of course, only macrobenchmarks can tell us if that has an adverse effect on real code. 16:37:13 pkhuong: is there anything particularly suitable that i could use as a benchmark? 16:37:51 self build times are a classic (be sure to disable contribs, or at least their tests). 16:38:22 otherwise, there's https://github.com/antifuchs/autobench 16:39:21 ok! 16:39:58 another question, i was thinking about approaching the problem of visualization. but there are so many TNs that a visualization would be hardly informative. 16:42:45 well, even if it only works for small toy functions, that can still be useful. Maybe there's some graph classification software out there that can let us determine what percentage of interference graphs are perfect, chordal, etc. that could help us adapt the iterative colouring heuristic. 16:46:17 so visualisation is good if only for sanity checking/pedagogical purposes. Graph structure output can also be useful to understand better the structure of our interference graphs (which may well have different characteristics than typical imperative code, or than code that's gone through SSA). 16:51:42 you mean that one could analyse the structure of the IG, and in certain special cases we use a simpler packing procedure? 16:54:33 well, I don't think that classifying the IG during normal compilation is a good idea. But we can always adapt the heuristic to the IG class we expect to work on. IIRC, Brigg's is tuned for some sort of perfect graph. 17:02:13 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 268 seconds] 17:07:43 -!- slyrus [~chatzilla@107.200.11.156] has quit [Ping timeout: 264 seconds] 17:08:44 -!- psilord [~pkeller@23-25-144-217-static.hfc.comcastbusiness.net] has quit [Quit: Leaving.] 17:09:14 and is there any software of the kind for graph analysis? 17:11:29 a quick google doesn't reveal anything. I'll ask around; I know one researcher who spent a lot of time on MAXCLIQUE. 17:11:46 :) 17:27:54 -!- segv- [~mb@95-91-243-229-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 17:30:22 segv- [~mb@95-91-243-229-dynip.superkabel.de] has joined #sbcl 17:33:31 -!- teggi [~teggi@123.20.106.65] has quit [Remote host closed the connection] 17:57:02 -!- edgar-rft [~GOD@HSI-KBW-149-172-63-75.hsi13.kabel-badenwuerttemberg.de] has left #sbcl 18:07:24 -!- pranavrc [~pranavrc@unaffiliated/pranavrc] has quit [Quit: Ping timeout: ] 18:22:54 edgar-rft [~GOD@HSI-KBW-149-172-63-75.hsi13.kabel-badenwuerttemberg.de] has joined #sbcl 18:36:34 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 18:37:41 -!- edgar-rft [~GOD@HSI-KBW-149-172-63-75.hsi13.kabel-badenwuerttemberg.de] has quit [Quit: activity ended because computer sucks] 18:42:50 psilord [~psilord@c-69-180-173-249.hsd1.mn.comcast.net] has joined #sbcl 18:59:54 -!- slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has quit [Ping timeout: 264 seconds] 19:02:23 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 19:07:07 -!- slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has quit [Ping timeout: 264 seconds] 19:08:08 sdemarre [~serge@109.134.134.48] has joined #sbcl 19:47:43 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #sbcl 19:52:57 -!- sdemarre [~serge@109.134.134.48] has quit [Ping timeout: 264 seconds] 20:05:34 scymtym_ [~user@ip-5-147-122-209.unitymediagroup.de] has joined #sbcl 21:11:01 -!- davazp [~user@31.200.168.64] has quit [Remote host closed the connection] 22:03:36 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 23:40:26 -!- segv- [~mb@95-91-243-229-dynip.superkabel.de] has quit [Remote host closed the connection] 23:51:09 -!- slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has quit [Ping timeout: 264 seconds] 23:55:00 kludge` [~comet@unaffiliated/espiral] has joined #sbcl 23:56:24 Bike_ [~Glossina@wl-nat100.it.wsu.edu] has joined #sbcl 23:56:46 -!- Bike [~Glossina@wl-nat100.it.wsu.edu] has quit [Read error: Connection reset by peer] 23:58:06 -!- Bike_ is now known as Bike