Show enters and exits. Hide enters and exits.
| 05:23:23 | dbussink | evan: ping? |
| 05:24:11 | dbussink | evan: i know antonio cangiano is doing a new ruby shootout, maybe you want to run it yourself too |
| 05:24:26 | dbussink | and see if there are like easy big pain points to fix |
| 05:28:27 | postmodern | dbussink, speaking of ruby shootout |
| 05:28:37 | postmodern | dbussink, i have those profiler graphs for Bundler.setup |
| 05:39:36 | dbussink | postmodern: do they show anything specific? |
| 05:39:50 | postmodern | dbussink, not really |
| 05:40:46 | postmodern | dbussink, http://fpaste.org/Tfhv/ and http://fpaste.org/dJCu/ |
| 07:09:51 | dbussink | cremes: you're right that datamapper should work fine with rbx |
| 07:10:09 | dbussink | looks like pjb3 has some weird extension compiled that breaks things |
| 07:10:26 | dbussink | i know that can be an issue on gentoo, because it strips some library symbols by default |
| 17:38:33 | dbussink | evening :) |
| 17:53:56 | dbussink | sbryant`: not much going yet i guess :P |
| 17:56:02 | evan | dbussink: :) |
| 17:56:08 | evan | brixen and I are in SF |
| 17:56:14 | dbussink | evan: ah, at the ey office? |
| 17:56:18 | evan | so we're talking in the main channel, ie, in person. |
| 17:56:19 | evan | yep. |
| 17:56:21 | dbussink | evan: saw my messages from this morning? |
| 17:56:28 | evan | nope |
| 17:56:40 | dbussink | ah, antonio is publishing a new shootout shortly |
| 17:56:47 | evan | ok |
| 17:56:49 | evan | on linux? |
| 17:56:51 | dbussink | yeah |
| 17:57:09 | dbussink | he did a windows and os x one (no rbx on os x, but it will be included in the linux one) |
| 17:57:44 | evan | wtf. |
| 17:57:48 | evan | why not rbx on OS X? |
| 17:58:12 | evan | i don't see a new OS X one posted |
| 17:58:15 | evan | did you talk to him? |
| 17:58:26 | dbussink | nah, it was more focussed on comparing macruby with 1.8 / 19 |
| 17:58:27 | dbussink | 1.9 |
| 17:58:37 | dbussink | or did you see that one? |
| 17:58:47 | evan | no |
| 17:58:48 | evan | where is it? |
| 17:58:54 | dbussink | http://programmingzen.com/2010/06/28/the-great-ruby-shootout-windows-edition/ |
| 17:58:58 | dbussink | it has a link to the macruby one |
| 17:59:31 | evan | oh, that one |
| 17:59:32 | dbussink | also announces the upcoming linux one |
| 17:59:33 | evan | yeah, ok |
| 17:59:35 | evan | that was just macruby |
| 17:59:36 | evan | gotcha. |
| 17:59:54 | evan | I wish RBS had better actual benchmarks |
| 18:00:01 | evan | oh well. |
| 18:00:19 | dbussink | well, people do read it |
| 18:00:40 | dbussink | it's not so much showing off great in this, but more maybe trying to prevent some fud |
| 18:00:44 | dbussink | but that's hard :P |
| 18:02:11 | evan | well, the scope of certain RBS benchmarks is quite wrong |
| 18:02:18 | evan | which doesn't matter so much for outside viewers |
| 18:02:23 | evan | but does matter to me. |
| 18:02:39 | evan | by scope i mean there are eval benchmarks in the micro-benchmarks directory |
| 18:04:33 | dbussink | evan: i guess eval is used in a micro usage for a lot of ruby people ;) |
| 18:04:39 | dbussink | evan: look at rspec for example :P |
| 18:06:30 | evan | *eyeroll* |
| 18:08:22 | dbussink | evan: did you bench the difference in just running empty specs before and after the changes to caller / write barrier etc? |
| 18:09:34 | evan | caller, yes. wb, no. |
| 18:09:41 | evan | it improved with the caller change |
| 18:09:45 | evan | but it's still about 2x slower. |
| 18:09:50 | evan | i improved dup too |
| 18:09:55 | evan | which should make a minor difference |
| 18:17:13 | dbussink | ah, i can try how fast a full datamapper run now is |
| 18:17:19 | dbussink | to see if that makes a difference |
| 18:32:56 | evan | k |
| 21:22:31 | toulmean | hey guys |
| 21:30:41 | toulmean | ok I got a bug for rubinius to report and then vanity should be much better. |
| 21:33:24 | toulmean | http://github.com/evanphx/rubinius/issues/issue/394 |
| 21:34:34 | toulmean | I can help fix it by implementing to_str as an alias of to_s ? |
| 21:34:45 | toulmean | or changing the code of unlink. |
| 21:48:29 | brixen | toulmean: #unlink needs to be fixed |
| 21:51:16 | brixen | toulmean: I take it back |
| 21:51:56 | brixen | toulmean: http://gist.github.com/460619 |
| 21:53:05 | toulmean | brixen: so you mean... |
| 21:53:30 | comron | Hey, can anyone help me with "Unable to find 'iconv_open' (FFI::NotFoundError) |
| 21:53:58 | evan | comron: you've got a iconv from macports |
| 21:54:00 | comron | I feel like I've built rbx wrong. I've tried both with rvm and from a git clone. |
| 21:54:08 | comron | Yeah, I probably do. |
| 21:54:14 | brixen | comron: what is your LD_LIBRARY_PATH set to? |
| 21:54:15 | comron | So, install from source? |
| 21:54:29 | evan | macports, for some bizarre reason, installs a libiconv that has libiconv_open |
| 21:54:33 | comron | /opt/local/lib:/usr/local/lib:/usr/lib: |
| 21:54:40 | brixen | comron: that's your problem |
| 21:54:49 | brixen | comron: are you on OS X? |
| 21:54:49 | comron | so, swap opt/local out to the end |
| 21:54:54 | evan | yeah, try that. |
| 21:54:55 | comron | yes OS X |
| 21:54:58 | comron | Ok. |
| 21:54:59 | brixen | comron: yes, swap that |
| 21:55:05 | evan | we need to deal with this in lib/iconv.rb so people don't have to do this. |
| 21:55:10 | comron | evan, do you have any of your slides from the rubinius talk at rails conf around? |
| 21:55:11 | slava | sounds like an easy workaround |
| 21:55:17 | comron | I'm giving a summary presentation to my team. |
| 21:55:28 | evan | comron: ah ok! |
| 21:55:33 | evan | sure, let me get them up. |
| 21:55:36 | comron | Thanks. |
| 21:55:42 | toulmean | brixen: I didn't catch your meaning earlier. |
| 21:56:06 | brixen | toulmean: I think I'm running the same code in your ticket under MRI and getting an exception |
| 21:56:10 | comron | evan: I think the slide I have of String#+ vs. MRI rb_str_plus sums it up nicely though :) |
| 21:56:26 | brixen | toulmean: I cannot see in 1.8 or 1.9 that passing a File instance to File.unlink should work |
| 21:56:38 | evan | comron: which slide is that? |
| 21:57:19 | brixen | toulmean: did you catch that? |
| 21:57:31 | comron | I just went and grabbed the two implementations of String#+ from rbx and mri, just as one of my slides summerizing rbx :) |
| 21:57:36 | toulmean | brixen: all clear now. |
| 21:57:45 | toulmean | ok so will work on why a file object is passed. |
| 21:58:09 | comron | also, I saw in some old materials a reference to 'rbx describe foo' |
| 21:58:09 | brixen | toulmean: okie |
| 21:58:16 | comron | does rbx describe still exist in some form? |
| 21:58:19 | brixen | comron: that's old |
| 21:58:25 | brixen | comron: see rbx compile -h |
| 21:58:28 | comron | k |
| 21:58:41 | brixen | comron: in particular, rbx compile -BS file.rb |
| 21:58:58 | comron | brixen: thanks |
| 21:59:00 | brixen | comron: that will give you sexp and bytecode output, which is what describe used to do |
| 21:59:09 | brixen | comron: also, you can read from STDIN with - |
| 21:59:19 | evan | comron: ah ah! yes. |
| 21:59:46 | comron | brixen: prefect |
| 22:00:13 | brixen | comron: also note the -N option, very nice for a big file where you just want to inspect one method :) |
| 22:00:15 | comron | by the way, this is easily the fastest response I've gotten from an irc channel regarding something technical in a long long time. |
| 22:00:22 | brixen | woot! :) |
| 22:01:03 | comron | evan got me fired up about rbx at RailsConf, whats the best way to get my feet wet contributing? |
| 22:01:49 | brixen | comron: run your code |
| 22:02:00 | brixen | comron: also, you can check doc/contributing.txt for ideas |
| 22:02:14 | evan | yes, running your code and seeing what doesn't work is the best way. |
| 22:02:38 | parndt | what's the best way for tracing where in my application is taking time when using rubinius? or do I use a tool like newrelic instead? |
| 22:02:49 | parndt | (web app on rails) |
| 22:03:07 | comron | OK, I've found one gem we use thats causing a problem, I started to try and fix it at RailsConf, heard of blockenspiel? |
| 22:04:09 | comron | Need an rbx equivelent for: http://github.com/dazuma/blockenspiel/blob/master/ext/blockenspiel/unmixer_mri.c |
| 22:04:25 | comron | oh, looks like hes updated it |
| 22:04:28 | comron | nevermind :) |
| 22:06:35 | comron | evan, brixen: thanks for the help. I'll stick around to see if you get those slides up later, evan. |
| 22:07:14 | evan | i'll put them up now |
| 22:07:16 | evan | one sec. |
| 22:08:08 | ribrdb | brixen: do you have a url for that peg grammar for ruby you mentioned at rails conf? |
| 22:08:31 | brixen | ribrdb: the one written in scheme? |
| 22:09:02 | ribrdb | could be, I don't remember |
| 22:09:04 | brixen | parndt: we don't know if newrelic works with rbx |
| 22:09:31 | ribrdb | brixen: I think you said it was written by someone at university of utah |
| 22:09:39 | brixen | ribrdb: yep, that's the one |
| 22:09:49 | brixen | the guy usually hangs out in #rubyspec but he's away right now |
| 22:11:46 | brixen | parndt: so one option is to run your app with -Xprofile |
| 22:12:18 | toulmean | brixen: the code from vanity does use the exact File.open, File.unlink sequence we have seen did not work. |
| 22:12:27 | toulmean | brixen: he must be using 1.9.2 |
| 22:12:47 | toulmean | any chance this might be possible with some cutting edge version of MRI ? |
| 22:12:51 | evan | comron: http://www.slideshare.net/evanphx/rubinius-10-and-more |
| 22:12:58 | brixen | toulmean: hum, we checked the code on 1.9.2 |
| 22:13:02 | brixen | toulmean: I'll run a test... |
| 22:13:09 | toulmean | sorry for the trouble. |
| 22:13:17 | brixen | parndt: you could also do something like this in your code http://gist.github.com/460644 |
| 22:13:29 | brixen | parndt: see the kernel/delta/profiler.rb code in rbx |
| 22:13:52 | ribrdb | brixen: what's his nick? |
| 22:15:51 | parndt | brixen: awesome thanks Brian |
| 22:15:55 | brixen | toulmean: yes, it works on 1.9.2 |
| 22:16:02 | brixen | toulmean: but we are 1.8.7 :) |
| 22:16:28 | brixen | toulmean: File.unlink f.path should be cross version |
| 22:16:29 | toulmean | brixen: it's up to you to support this. |
| 22:16:37 | brixen | toulmean: how so? |
| 22:16:37 | toulmean | ... I know.... |
| 22:16:40 | evan | huh? |
| 22:16:40 | evan | no |
| 22:16:46 | evan | we're not 1.9 |
| 22:16:50 | toulmean | well you are in charge, you decide guys. |
| 22:16:51 | brixen | ribrdb: jonrafkind |
| 22:17:00 | toulmean | don't get me wrong. |
| 22:17:00 | evan | toulmean: we can't run vanity |
| 22:17:04 | evan | it only runs on 1.9 |
| 22:17:08 | toulmean | then you can't indeed. |
| 22:17:15 | toulmean | I didn't know. |
| 22:17:24 | evan | vanity doesn't run on MRI 1.8 or jruby either. |
| 22:17:25 | evan | then. |
| 22:17:32 | toulmean | the tests at least yes. |
| 22:17:33 | evan | it's not a Rubinius specific problem. |
| 22:17:41 | toulmean | yes, that's clear to me now. |
| 22:18:01 | toulmean | Sorry. If you want, keep my issue for when you shoot for 1.9 compat. |
| 22:18:13 | toulmean | I use this as a learning experience. |
| 22:18:48 | evan | well, thats not a place for 1.9 compat stuff |
| 22:18:50 | brixen | toulmean: we have specs for 1.9 compact |
| 22:18:51 | evan | issues isn't. |
| 22:19:01 | brixen | er compat |
| 22:19:20 | toulmean | ok. |
| 22:19:42 | toulmean | here is what I'll do |
| 22:19:52 | toulmean | send a nice email to Assaf to tell him about it |
| 22:19:59 | toulmean | see if he's ok changing that. |
| 22:20:03 | brixen | toulmean: tell him to run vanity on 1.8.7 |
| 22:20:06 | evan | toulmean: ok |
| 22:20:09 | brixen | once that passes, we'll be happy to run it |
| 22:20:19 | toulmean | then if that happens, I'll run the tests and we can do profiling. |
| 22:20:30 | toulmean | since apparently that was a complain. |
| 22:20:35 | brixen | sounds good |
| 22:20:36 | toulmean | k with you guys ? |
| 22:20:45 | brixen | sure, we're happy to look at any issue |
| 22:21:09 | evan | toulmean: sounds great |
| 22:21:14 | evan | thanks for working on this |
| 22:21:17 | toulmean | ok. Happy to help. |
| 22:32:46 | toulmean | brixen: evan: the gist of the rake test profiling of vanity is here: http://gist.github.com/460668 |
| 22:32:49 | justin-george | brixen: New Relic hasn't tested the agent on rbx, but it might work |
| 22:33:16 | justin-george | it's on my to-do list to make sure it does :) |
| 22:33:32 | toulmean | vanity runs subshells of ruby, hence the multiple table results. |
| 22:33:33 | toulmean | hth |
| 22:47:58 | goyox86 | people, this looks interesting http://pharo-project.org/, a fork of squeak :-) |
| 22:48:20 | slava | squeak sucks... |
| 22:50:26 | goyox86 | slava: based on? Imlpementation? |
| 22:50:46 | comron | evan: is there anyway to get -Xprofile to show that a method got inlined/optimized away? I'm looking at your def m; nil; end; example in those slides |
| 22:51:52 | slava | goyox86: its total spaghetti code |
| 22:51:55 | slava | with no docs :( |
| 22:52:43 | goyox86 | slava: agree :] |
| 22:53:43 | goyox86 | slava: Which do you think is the best Smalltalk implementation today? |
| 22:53:58 | slava | not sure, smalltalk seems to have lost steam to be honest |
| 22:54:09 | slava | rbx is the best smalltalk implementation today :) |
| 22:59:23 | goyox86 | slava: :) |
| 23:22:12 | evan | comron: on master, I just committed something to do that |
| 23:22:16 | evan | use -Xjit.profile instead |
| 23:22:26 | evan | that runs profiling, but doesn't disable the JIT |
| 23:22:37 | evan | so you'll see inlined methods disappear from the output |
| 23:22:57 | evan | using -Xjit.inline.debug to see the JIT choosing things helps too. |
| 23:22:58 | brixen | justin-george: cool! |
| 23:26:52 | justin-george | brixen: I may actually just go do that now that rails 3 is reasonably working. |
| 23:40:24 | comron | evan: thanks |
| 23:41:56 | comron | evan: Error: signal SIGBUS |
| 23:42:05 | comron | with -Xjit.profile |
| 23:42:11 | comron | I'll dig some more. |
| 23:45:16 | comron | evan: sorry, cloned git repo worked with -Xjit.profile, version i have installed with rvm died. rubinius 1.0.1 (1.8.7 release 2010-06-03 JI) [i686-apple-darwin9.8.0] |
| 23:45:18 | comron | thanks. |
| 23:55:15 | justin-george | brixen: is there a site with 'compatible with rubinius' like there was for 'isitruby19' or whatever? |