01:03:48 woah. complete bootstrap with the new consets. 01:17:21 -!- scymtym [~user@2001:638:504:2093:21a:a0ff:fe34:2d7d] has quit [Remote host closed the connection] 01:18:08 scymtym [~user@2001:638:504:2093:21a:a0ff:fe34:2d7d] has joined #sbcl 01:24:53 -!- gor[e] [~svr@195.110.46.34] has quit [Ping timeout: 240 seconds] 01:42:12 -!- Quadrescence [~quad@unaffiliated/quadrescence] has left #sbcl 02:01:59 and smart consets are orders of magnitude faster on our bad cases 02:02:10 but somewhat slower on regular code 02:03:07 I'll try and go with a dynamic switch over 03:29:04 -!- homie [~levent.gu@xdsl-78-35-146-102.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:21:30 -!- slyrus [~chatzilla@99-27-204-74.lightspeed.irvnca.sbcglobal.net] has quit [Ping timeout: 255 seconds] 04:42:09 gor[e] [~svr@195.110.46.34] has joined #sbcl 06:12:41 -!- cmm [~cmm@109.67.199.173] has quit [Ping timeout: 240 seconds] 06:47:16 nikodemus [~nikodemus@cs181063174.pp.htv.fi] has joined #sbcl 06:47:16 -!- ChanServ has set mode +o nikodemus 06:51:08 -!- gor[e] [~svr@195.110.46.34] has quit [Quit: Lost terminal] 07:01:51 cmm [~cmm@109.67.199.173] has joined #sbcl 07:13:59 -!- nikodemus [~nikodemus@cs181063174.pp.htv.fi] has quit [Quit: This computer has gone to sleep] 07:21:18 nikodemus [~nikodemus@cs181063174.pp.htv.fi] has joined #sbcl 07:21:18 -!- ChanServ has set mode +o nikodemus 07:32:19 -!- nikodemus [~nikodemus@cs181063174.pp.htv.fi] has quit [Quit: This computer has gone to sleep] 07:38:09 nikodemus [~nikodemus@cs181063174.pp.htv.fi] has joined #sbcl 07:38:09 -!- ChanServ has set mode +o nikodemus 08:20:49 -!- nikodemus [~nikodemus@cs181063174.pp.htv.fi] has quit [Disconnected by services] 08:20:50 nikodemus_ [~nikodemus@cs181058025.pp.htv.fi] has joined #sbcl 08:21:16 nikodemus [~nikodemus@cs181063174.pp.htv.fi] has joined #sbcl 08:21:16 -!- ChanServ has set mode +o nikodemus 09:35:37 pchrist [~spirit@gentoo/developer/pchrist] has joined #sbcl 10:06:50 hlavaty [~user@91-65-223-81-dynip.superkabel.de] has joined #sbcl 10:20:00 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 10:34:40 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Quit: leaving] 11:03:04 homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has joined #sbcl 11:28:48 antgreen [~user@CPE00222d6c4710-CM00222d6c470d.cpe.net.cable.rogers.com] has joined #sbcl 11:44:51 -!- homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 12:00:57 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Read error: Connection reset by peer] 12:02:58 -!- redline6561 [~user@c-66-56-55-169.hsd1.ga.comcast.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 12:13:01 homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has joined #sbcl 13:15:54 tsuru [~charlie@adsl-74-179-198-44.bna.bellsouth.net] has joined #sbcl 13:34:44 redline6561-work [~redline65@66.6.146.58] has joined #sbcl 15:23:35 -!- homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has quit [Remote host closed the connection] 15:24:32 homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has joined #sbcl 15:27:04 -!- homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has quit [Client Quit] 15:32:51 nikodemus: start and tabby tags; how about just removing them? 15:33:54 homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has joined #sbcl 15:38:12 tabby's a nice event to have 15:39:18 when you do one of the code visualizations based on rcs history, you get a kind of explosion at that point. 15:42:31 for those following at home, smarter consets got the really bad compile times down from dozens/hundreds of seconds to < second 15:42:54 but add ~30% to bootstrap time 15:50:29 that's a minute on newer machines? (: 15:51:00 yes. 15:51:14 a bit more than a minute 15:51:18 bit harsh 15:51:30 but if other stuff compiles faster with it... 15:51:38 I don't know that other stuff compiles faster 15:51:52 only functions on which we currently fail hard. 15:52:00 There's one last thing I want to try 15:52:06 doing the stupid thing smart. 15:53:05 so keep duplicating constraints across equivalent variables, but index constraints by variable. 16:08:24 pdlogan [~patrick@174-25-37-137.ptld.qwest.net] has joined #sbcl 16:17:04 pkhuong: how about testing with a bunch of stuff from quicklisp? 16:18:31 I'll try an settle on 2-3 forks that could be tested 16:19:17 (as a comparison, using ssets as consets, and switching to linear probing and improving the hash-table a bit does self-build in about the same time as current tree, and doesn't have the horrible behaviour -- but i haven't benchmarked that extensively either) 16:19:41 I have new ssets and smarter find-constraint 16:20:02 have you looked at where the cost in self-build comes from? 16:20:10 which help a lot on some of our bad cases, and slightly improves self build (~3%) 16:20:16 the host-part can run under sb-sprof pretty well 16:20:38 they're just more complicated 16:20:52 so constant factor goes up? 16:20:55 yeah. 16:21:19 switching between new ssets and new consets seems to work well enough, though. 16:21:58 have you considered switching representations? eg. keep really small sets as plain old lists, and convert to better rep at some cutoff point? 16:22:01 I'll see if slightly smarter consets work better than ssets as consets. 16:22:22 It's hard to translate between the two conset representation 16:22:36 my plan is to switch to new consets when the constraint universe blows up 16:22:52 which should be a sign that we have a shitload of eql lambda-vars 16:23:08 ok 16:23:33 that's currently working. 16:25:13 i just remembered: bunch of stuff in fd-streams.lisp easily spends 20% of time in find-constraint -- if you want to measure the effect your new find has. i'm not sure if it was make-fd-stream or what. (not that it's hard to find things for which cp takes 20% of time, but that's one place i remember) 16:25:36 find-constraint works a lot better now 16:25:40 that's independent of consets 16:26:19 excellent, looking forward to seeing the code :) 16:26:20 pretty much the only bad case is for typep, < and > constraints: we can't portably hash on ctypes 16:27:11 not for all, but for many we can 16:27:24 is there a nice way to tell? 16:27:31 I'm currently hashing on the class-info 16:28:50 wait, we have type-hash-value, don't we? 16:29:15 yeah... is that correct for type= or for EQ? 16:29:27 oh, blech, eq 16:30:30 but if it we took care to intern all types that eg have a 1:1 correspondence to a primitive type, and -- say -- all ones that CL specifies a symbol for, that would get us pretty far 16:31:15 then make it type-interned-p tell you if that's the case 16:31:55 doesn't seem to be an issue so far. 16:32:00 yeah 16:32:41 how do I push branches on sf? 16:33:02 push origin localbranch:sfbranch 16:34:20 pushed on sf 16:34:58 with all the development crud... 16:38:34 frito [~user@cpc2-sotn4-0-0-cust13.15-1.cable.virginmedia.com] has joined #sbcl 16:38:55 cmm- [~cmm@bzq-79-177-199-45.red.bezeqint.net] has joined #sbcl 16:39:18 pkhuong: can you make it use :initial-element 0? much faster array initialization that with nil 16:41:44 -!- cmm [~cmm@109.67.199.173] has quit [Ping timeout: 250 seconds] 16:42:54 rpg [~rpg@mpls.sift.info] has joined #sbcl 16:47:24 you might also want to inline make-eqv-class as a micro-optimization -- gets rid of keyword parsing at runtime... not that it probably matter much :) 16:47:43 (and make-var-info, etc) 16:47:53 %make-var-info, even 16:50:54 but ... very nifty looking! 16:51:09 yeah, I guess, re :i-e 16:51:37 just finished page-downing through it 17:12:41 rmarynch [~roman@88.135.194.233] has joined #sbcl 17:19:16 -!- frito [~user@cpc2-sotn4-0-0-cust13.15-1.cable.virginmedia.com] has quit [Ping timeout: 258 seconds] 17:41:11 I have investigated how many code can be put into compiler/x86-common (it is aimed to contain the code which is the same in compiler/x86 and compiler/x86-64 now). It looks like there are only 20-30% in common (exact match or with 1-2 differences per function/macro). The large files, like insts and floats, are very different. However, I still think that x86-common is a good idea... 17:46:09 lots of the insts should be shareable as well -- but sharing may require a fair bit of rewriting 17:46:38 Krystof: well, the current tabby tag causes (minor) pain; I have to remove it every time after pulling changes before pushing to my mirror, since it rejects that tag as being invalid (because of the date I guess). 17:46:55 I can keep doing that forever, but it seems kinda funny. :) 17:47:19 i'll add a cvs-tabby tag with the proper date at some point this week, and delete tabby 17:48:31 (it's actually the insts i'm nost interested in sharing, but of course anything that can be shared without messing the files up with reader conditionals would be nice to share) 17:49:30 because i'd rather see sse2 defs restructured so that they can be shared, rather than copy-paste-adjust for x86 17:50:25 nikodemus_: it depends on how many #+x86 #-x86 etc we use in x86-common (it can be a mess in this case, so we shouldn't). I think of x86-common as of the _really_ common code. Or it should go beyond that? 17:50:40 really common 17:51:30 in this case, I believe that we can move these 25% there, and let the other files stay as they are, right? 17:52:23 but i suspect for eg. instruction definitions we should be able to share most of the basic stuff and sse2 -- but it will require refactoring, because now there are arch assumptions baked in at places 17:52:44 -!- redline6561-work [~redline65@66.6.146.58] has quit [Read error: Connection reset by peer] 17:53:43 well, the most differences are connected with the 64-bit registers names, how can we refactor this without #+-x86/-64? 17:55:42 as for now, I am going to deal with the easy part, then we will look at the other stuff. I just wanted to know that we have the similar vision of x86-common 17:56:06 most insts on x86 are actually generic across a range of register widths 17:59:01 rmarynch: by cleverness, and possibly adding (:x86-64-only ...) style stuff to various macros 18:01:29 in case macros will be clever enough to pick edi vs rdi, we can do more 18:07:09 redline6561 [~redline65@li69-162.members.linode.com] has joined #sbcl 18:16:39 insts should be almsot the same, really. It's just that there's some stuff we never backported from x86-64 to x86 18:19:27 also x87 stuff that doesn't exist on x86-64. 18:24:25 I have already started with the small files, like sanctify.lisp :) Will see how it goes... 18:27:29 -!- rmarynch [~roman@88.135.194.233] has quit [Quit: Leaving] 18:43:05 -!- hlavaty [~user@91-65-223-81-dynip.superkabel.de] has quit [Ping timeout: 260 seconds] 18:53:14 -!- nikodemus [~nikodemus@cs181063174.pp.htv.fi] has quit [Quit: Leaving] 19:10:06 rmarynch [~roman@88.135.194.233] has joined #sbcl 19:17:56 hrm. Is there any way to go backwards from an sbcl version number to a commit? 19:18:29 like, how do I say in git "tag X, PLUS 40 commits" 19:18:41 I know how to say minus, but not plus. 19:22:32 oh, duh, that's what the hash at the end is for. 19:22:34 *foom* feels stupid 19:29:48 does anybody have the up to date SBCL mirror on github? I have just realized that Anton's fork has some changes in x86 and x86-64 dirs - so my patches can conflict with the main tree at the end 19:30:46 rmarynch: Think antifuchs was looking at that last...had talked to github folks about setting up github.com/sbcl for that. 19:46:01 on the other hand, Anton's fork should be merged into the upstream in the near future - thus, I think I may stick with my current repository :) 19:52:13 -!- homie [~levent.gu@xdsl-78-35-133-93.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 19:58:01 yeah, I was going to, but forgot to do that (: 20:06:18 -!- rmarynch [~roman@88.135.194.233] has quit [Quit: Leaving] 20:19:48 <_8david> antifuchs: so, are still going to do it? 20:20:05 <_8david> I'd offer to set up a cronjob for mirroring otherwise. 20:20:28 I'd like to, but I can't tell when I have the time to do it 20:20:40 so go ahead and set up a mirror. are you on github? 20:20:54 (I'll give you admin privs on /sbcl if so 20:22:01 <_8david> user name lichtblau 20:24:26 tcr1 [~tcr@155-dom-3.acn.waw.pl] has joined #sbcl 20:26:53 still struggling with the github user management interface from hell 20:28:05 alright! you should be on the team 20:28:11 (wtf who designed this) 20:31:08 tunes [~Fare@ita4fw1.itasoftware.com] has joined #sbcl 20:34:46 antifuchs: is it worse than SourceForge? 20:34:58 I haven't added people to an sf.net project yet 20:35:09 but github's member management is pretty ... opaque 20:35:30 basically, you can not add members directly, you have to add them to a "team". 20:35:42 that there's a link between members and teams in any form can only be an accident 20:35:51 (otherwise I would never have found out how to do this) 20:36:22 go team! 20:36:41 hah, I wasn't even aware that there's a "Owners" team on every org 20:36:55 so, yeah, please let's draw&quarter the person who made this (: 20:38:12 tcr2 [~tcr@155-dom-3.acn.waw.pl] has joined #sbcl 20:38:12 -!- tcr1 [~tcr@155-dom-3.acn.waw.pl] has quit [Read error: Connection reset by peer] 20:43:59 <_8david> this stuff is all easier said than done 20:44:11 <_8david> --mirror pushed remotes, which I don't want. --all doesn't push tags. -all --tags says: 20:44:12 <_8david> error: --all and --tags are incompatible 20:44:25 <_8david> do I really have to push --all and -tags in separate steps? 20:44:37 yes 20:45:14 as I found out trying to mirrori my stuff to gitorious and github :( 20:45:14 <_8david> ...OK 20:45:40 you want git push --mirror 20:49:27 <_8david> hmm, I want to push refs/heads and refs/tags, but --mirror also tries to push refs/remotes. Do I really want that? It certainly gives weird output about "new branch"es every time. 20:50:23 -!- tcr2 [~tcr@155-dom-3.acn.waw.pl] has quit [Quit: Leaving.] 20:50:47 tcr1 [~tcr@155-dom-3.acn.waw.pl] has joined #sbcl 20:59:45 you shouldn't have any refs/remotes in the first place 20:59:52 git clone --mirror doesn't make any 21:01:38 the script should be something like git clone --mirror sfneturl; loop forever: git fetch -q -p; git push -q --mirror githuburl 21:01:40 <_8david> aha, I should have added the _target_ remotes using --mirror, too 21:04:11 <_8david> thanks, that's better 21:05:46 <_8david> anyone who needs/wants admin access to the github or gitorious mirror projects, please let me know 21:05:54 _8david: please post the command 21:09:28 <_8david> see http://paste.lisp.org/display/122609#1 if you'd like to review it, but the trick I had been missing was the --mirror in "git remote add --mirror github ..." 21:14:10 tcr2 [~tcr@155-dom-3.acn.waw.pl] has joined #sbcl 21:14:11 -!- tcr1 [~tcr@155-dom-3.acn.waw.pl] has quit [Read error: Connection reset by peer] 21:21:37 -!- slyrus_ [~chatzilla@99-27-204-74.lightspeed.irvnca.sbcglobal.net] has quit [Ping timeout: 260 seconds] 21:49:40 _8david: thanks 22:14:40 -!- rpg [~rpg@mpls.sift.info] has quit [Quit: rpg] 22:19:59 -!- tcr2 [~tcr@155-dom-3.acn.waw.pl] has quit [Read error: Connection reset by peer] 22:20:04 tcr1 [~tcr@155-dom-3.acn.waw.pl] has joined #sbcl 22:52:31 -!- tcr1 [~tcr@155-dom-3.acn.waw.pl] has quit [Quit: Leaving.] 23:26:54 -!- tunes [~Fare@ita4fw1.itasoftware.com] has quit [Quit: Leaving] 23:40:01 -!- pdlogan [~patrick@174-25-37-137.ptld.qwest.net] has left #sbcl 23:40:03 pchrist [~spirit@gentoo/developer/pchrist] has joined #sbcl