Show enters and exits. Hide enters and exits.
| 06:08:50 | brixen | stepheneb: if you configure with --prefix, you need to run rake install |
| 06:09:08 | brixen | you can't expect rbx to work if it doesn't have the files it needs |
| 06:09:17 | brixen | that's why you get the error message |
| 06:09:25 | brixen | the other part I'm looking into now |
| 06:09:27 | stepheneb | brixen: rake install also generates errors when run |
| 06:09:36 | brixen | yes, that's the part I'm looking at |
| 06:12:18 | stepheneb | As part of debugging and trying to understand the build and install process I .. |
| 06:12:37 | stepheneb | copied over the lib/ and runtime/ directories to the prefix dir |
| 06:13:06 | stepheneb | That allowed rake install to get further but it then stopped with this error: |
| 06:13:22 | stepheneb | while running the first invoke of gem_bootstrap |
| 06:13:32 | stepheneb | and "Compiling library files for install..." |
| 06:13:42 | stepheneb | ./lib/etc.rb:4: uninitialized constant Etc::FFI (NameError) |
| 06:13:59 | brixen | what ruby are you using? |
| 06:14:06 | brixen | and what env stuff do you have set? |
| 06:14:14 | brixen | eg RUBYLIB, RUBYOPT, etc |
| 06:14:30 | brixen | you should just run rake install after running configure --prefix |
| 06:14:36 | brixen | you should not be copying stuff around |
| 06:14:43 | brixen | that's what rake install is for |
| 06:14:48 | brixen | so let's just get that working... |
| 06:15:25 | stepheneb | $RUBYOPT => rubygems |
| 06:15:37 | stepheneb | RUBYLIB => nil |
| 06:16:35 | brixen | what version of ruby? |
| 06:16:53 | stepheneb | I copied some of the directories just to give me a better handle on what was used when |
| 06:17:10 | stepheneb | ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0] |
| 06:17:10 | brixen | that just confuses the issue tho |
| 06:17:19 | brixen | we need rake install to just work |
| 06:18:32 | stepheneb | Sure, that sounds fine -- I was following the instructions in getting_started.txt |
| 06:18:45 | brixen | ok, let's get it clarified then... |
| 06:18:52 | brixen | where does it say copy stuff? |
| 06:19:05 | brixen | we need our directions to be correct too :) |
| 06:19:27 | stepheneb | I'm not making myself clear yet ;-) |
| 06:20:42 | stepheneb | The only reason I copied stuff was as a way to get more understanding of the build and run process -- it was just a way to get more data |
| 06:20:59 | brixen | sure, I got it |
| 06:21:10 | brixen | just really want this to work and I've run it with no issues |
| 06:21:19 | stepheneb | I'm tying too slow also ... I meant to say after: "instructions in getting_started.tx" |
| 06:21:22 | brixen | so I'm having trouble understanding the Etc::FFI issue |
| 06:21:24 | stepheneb | that I just ran rake |
| 06:22:13 | stepheneb | I just ran rake clean and then rake install and am getting the same error |
| 06:22:25 | stepheneb | running this command: |
| 06:22:41 | stepheneb | generates this error: |
| 06:22:42 | stepheneb | ./lib/etc.rb:4: uninitialized constant Etc::FFI (NameError) |
| 06:23:02 | brixen | hm, le'me fix rake |
| 06:23:11 | stepheneb | opps, irc ate the first line => /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -Ilib lib/bin/compile.rb -V -T default lib |
| 06:23:29 | stepheneb | was the command being executed in the rake Install process that generated the error |
| 06:23:35 | brixen | ok |
| 06:23:49 | brixen | so the system ruby is trying to load stuff from rbx's lib dir |
| 06:23:52 | brixen | hmm hmmm |
| 06:24:01 | brixen | eff, why does this not happen for me... |
| 06:24:31 | brixen | ok, let's try something... |
| 06:24:33 | stepheneb | This is the end of the console log: http://gist.github.com/244815 |
| 06:25:06 | stepheneb | I'm on Mac OS X 10.5.8 |
| 06:25:45 | brixen | me too |
| 06:25:55 | brixen | same ruby version |
| 06:26:03 | brixen | basically the vanilla os x ruby here |
| 06:26:09 | stepheneb | yup |
| 06:26:19 | stepheneb | I also have macruby installed in /usr/local |
| 06:26:20 | brixen | oh dur |
| 06:26:26 | brixen | unset rubyopt |
| 06:26:28 | stepheneb | but that shouldn't cause a problem |
| 06:26:34 | stepheneb | ok will try that |
| 06:26:52 | brixen | you must be loading rbx's rubygems |
| 06:27:19 | brixen | but I'm going to make this work without using -Ilib I think... |
| 06:27:26 | stepheneb | yes, rake install is now getting much further |
| 06:27:31 | brixen | yeah, frick |
| 06:27:34 | brixen | haha |
| 06:27:41 | brixen | RUBYOPT has bit us soooo many times |
| 06:27:53 | stepheneb | me too, I should have thought of it |
| 06:28:06 | brixen | well, we can make this more robust |
| 06:28:19 | stepheneb | now the prefix dir is filled up with rbx goodness |
| 06:28:28 | brixen | hehe |
| 06:28:36 | brixen | I'll set rubyopt to repro this... |
| 06:29:43 | stepheneb | it seems that setting a custom prefix dir should only matter when running install |
| 06:30:08 | brixen | how do you mean? |
| 06:30:14 | stepheneb | I was thrown off when I ran rake and bin/mspec threw an error |
| 06:30:23 | brixen | well, yes, I'm fixing rake |
| 06:30:38 | brixen | but you HAVE to install if you configure rbx to have a different dir than the build dir |
| 06:30:47 | brixen | because the VM has to know where to load the kernel |
| 06:30:49 | stepheneb | it nice that rubinius will just *run* form it's source dir where I've got it checke dout |
| 06:30:55 | brixen | it's not on exe like MMRI |
| 06:30:59 | brixen | er MRI |
| 06:31:09 | brixen | it's a small exe (the VM) and the rest it loads |
| 06:31:18 | brixen | just like the jvm with its classpath var |
| 06:32:05 | stepheneb | Or perhaps running the standard rake when using a custom prefix should run install before running mspec |
| 06:32:29 | stepheneb | but that also doesn't make sense |
| 06:32:37 | stepheneb | install should be a separate step |
| 06:32:37 | brixen | well, I can't make the default rake run rake install |
| 06:32:50 | brixen | but I can make the standard (default) rake work... |
| 06:33:03 | stepheneb | ahh ... that would be good |
| 06:33:04 | brixen | by just setting RBX_RUNTIME and RBX_LIB directly |
| 06:34:04 | stepheneb | does rbx use the -S param the same way jruby does? |
| 06:34:19 | stepheneb | if I run: jruby -S gem list |
| 06:34:19 | brixen | well, it uses -S the way it's documented in MRI |
| 06:34:27 | brixen | it searches some internal dirs and then your PATH |
| 06:34:45 | brixen | rbx -S gem should run rbx's bundled rubygems |
| 06:35:06 | brixen | rbx -S gem install foo; rbx -S foo ... should work too |
| 06:35:11 | brixen | we bundle rake and rdoc |
| 06:36:40 | stepheneb | yup, that all works for me so far: |
| 06:37:27 | stepheneb | running: /Users/stephen/dev/ruby/builds/rubinius/bin/rbx -S gem list |
| 06:37:41 | stepheneb | results in just the installed gems |
| 06:37:56 | brixen | cool |
| 06:38:52 | stepheneb | I've been playing around running a few simple benchmarks on all the ruby VMs I can run |
| 06:39:07 | brixen | fun |
| 06:39:31 | stepheneb | and while rbx is pretty fast on somethings it's quite slow running rexml |
| 06:39:52 | brixen | hmm yeah, not surprising |
| 06:40:04 | brixen | we haven't worked on optimizing string much |
| 06:40:07 | brixen | in the jit |
| 06:40:10 | brixen | but soon! :) |
| 06:40:52 | stepheneb | rbx is about 4x slower than MRI 1.8.6 and macruby about 1x slower |
| 06:41:26 | stepheneb | in a test using rexml to parse a large xml file |
| 06:42:00 | brixen | interesting |
| 06:42:18 | brixen | if you have a simple bench, gist it or something |
| 06:42:30 | stepheneb | ok |
| 06:42:31 | brixen | evan is working on a nice new benchmarking framework |
| 06:42:40 | brixen | that puts the benches in tiers |
| 06:43:02 | brixen | oh, actually make it a ticket :) |
| 06:43:21 | brixen | we'll consider being slower than 1.8.6|7 a bug of sorts :) |
| 06:44:55 | stepheneb | brixen: see: http://gist.github.com/244822 |
| 06:47:31 | stepheneb | The xml test comes simulates some work that we do -- but I'll bet the slowdown could be shown much more simply |
| 06:47:48 | stepheneb | with probably a simple String#gsub type of test |
| 06:48:01 | stepheneb | I know rexml uses lots of regexes |
| 06:48:43 | stepheneb | I'm pretty sure the extreme slowdown for macruby is dues to issues with String |
| 06:50:13 | brixen | hmm ok |
| 06:50:36 | brixen | oh so rbx is faster than macruby... |
| 06:51:00 | stepheneb | yes |
| 06:51:22 | stepheneb | benchmark displays strangely on macruby |
| 06:51:22 | brixen | I think we'll be able to get rbx faster on the tak bench... |
| 06:51:33 | stepheneb | but rbx is 4x slower, macruby 10x slower |
| 06:51:50 | brixen | yeah, above you said 1x slower heh |
| 06:51:54 | brixen | I was confused |
| 06:51:59 | stepheneb | oops |
| 06:52:12 | stepheneb | macruby is about 92s |
| 06:52:18 | stepheneb | rbx about 40s |
| 06:52:23 | stepheneb | mri about 9s |
| 06:52:38 | brixen | yeah, that sys time output is weird on macruby huh |
| 06:52:51 | brixen | why is the real less than total? |
| 06:52:53 | stepheneb | and jruby with --server about 6s |
| 06:53:04 | stepheneb | I don't know?? |
| 06:58:19 | stepheneb | I just tried running: $ time macruby xml_benchmark_rexml.rb ... |
| 06:58:47 | stepheneb | and the shell 'time' command also showed this strange behavior |
| 06:59:06 | brixen | hmm |
| 06:59:07 | stepheneb | real 1m53.495s, user 3m8.339s |
| 06:59:30 | stepheneb | that doesn't make much sense and doesn't have anything to do with running the ruby vm |
| 06:59:57 | stepheneb | but macruby is definitely takeing about 90s |
| 07:00:09 | stepheneb | which is pretty dismal |
| 07:00:14 | stepheneb | for that test |
| 07:00:27 | stepheneb | pretty fast on the tak test though |
| 07:01:56 | brixen | yeah, they do some special stuff with floats iirc |
| 07:02:30 | brixen | but I think we'll be able to get the jit to understand code like that well enough to optimize |
| 07:02:37 | stepheneb | evidently! so does maglev it seems |
| 07:02:41 | brixen | without messing with IEEE float values |
| 07:02:52 | brixen | I don't think maglev is doing the same thing, but dunno |
| 07:03:54 | stepheneb | I don't know what maglev is doing either but aprox 30x MRI speed is pretty good |
| 07:04:20 | stepheneb | they just seemed to come out of cloaking mode so I added them to the mix |
| 07:04:50 | stepheneb | they are pretty raw however, the rexml test didn't even run |
| 07:05:24 | stepheneb | thanks for the help! It will be easy now to keep up with rbx |
| 07:06:23 | stepheneb | would you like a performance ticket for the rexml test or wait for something simpler (maybe String.gsub might show the effect)? |
| 07:08:57 | brixen | yeah, please do file a ticket |
| 07:14:26 | stepheneb | brixen: here you go: http://github.com/evanphx/rubinius/issues/#issue/102 |
| 07:16:31 | brixen | awesome, thanks |
| 07:48:18 | boyscout | Make specs run from rake regardless of install config. - 0c1fb8e - Brian Ford |
| 07:51:19 | boyscout | CI: 0c1fb8e success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 07:59:44 | stepheneb | cool, rake (and mspec) is working now with a custom --prefix |
| 08:04:57 | brixen | cool |
| 08:14:02 | stepheneb | but the bin/mspec run hung after 425 tests (well I stopped it after it stopped there for about 5m) |
| 08:14:20 | stepheneb | here's end of the console log: http://gist.github.com/244848 |
| 08:14:47 | brixen | there is a random spin that is happening |
| 08:15:03 | brixen | we haven't tracked it down yet, but there's already a ticket for it |
| 08:15:12 | brixen | run it again and it probably won't happen |
| 08:15:38 | brixen | but if you can repro it reliably, add a note to #93 |
| 08:18:05 | stepheneb | tried again and it completed fine => 3005 files, 11469 examples, 35608 expectations, 0 failures, 0 errors |
| 08:23:16 | boyscout | Fix Kernel#__send__ - d26d8a4 - Evan Phoenix |
| 08:23:16 | boyscout | Change spec for Kernel#send - 78116c3 - Evan Phoenix |
| 08:23:16 | boyscout | Fix Process.wait and Process.wait2 - f2f1fb5 - Evan Phoenix |
| 08:23:16 | boyscout | Cleanup Syslog - 5fc6d8e - Evan Phoenix |
| 08:23:16 | boyscout | Include sys/types.h because some extentions expect that - 863a9ec - Evan Phoenix |
| 08:23:17 | boyscout | Add Gem.user_home to the path to look for gems - 87539ea - Evan Phoenix |
| 08:23:19 | boyscout | Add rbx specific default_exec_format - 88ecae7 - Evan Phoenix |
| 08:23:21 | boyscout | Cleanup doc - a2867ab - Evan Phoenix |
| 08:23:23 | boyscout | Disambiguate lines output - 1efeda5 - Evan Phoenix |
| 08:23:25 | boyscout | Set std::terminate to provide better error message - 4ff7d5e - Evan Phoenix |
| 08:23:27 | boyscout | Improve flag and directory usage in building - 87981fe - Evan Phoenix |
| 08:23:29 | boyscout | Add -c support - 9287afc - Evan Phoenix |
| 08:27:36 | boyscout | CI: 9287afc success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 08:34:10 | brixen | booyah |
| 09:02:30 | rue | Good stuff, I think the Gem.user_home should fix a ticket |
| 22:16:52 | evanweb | pokes around the freenode web UI |
| 22:17:02 | evan | la lal al |
| 22:24:55 | rue | How did that work out? |