Linux, Solaris and AMD64 support
Christian Thalinger
Christian.Thalinger at Sun.COM
Mon Sep 14 08:20:48 PDT 2009
Hi!
My today's commits enable a couple of things that might help some people
here.
First, I updated to the newest bsd-port revision since Greg Lewis
commited some patches so that it's possible to build the bsd-port source
on Linux and Solaris without any patches.
The other commit adds AMD64 compiler support. I did another JRuby
benchmark run today and the results look very good (on both 32 and
64-bit). It seems John has fixed most problems.
Here is the current list of all benchmarks:
--- bench_assert.rb: failed on both
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/share/vm/compiler/oopMap.cpp:425),
pid=82389, tid=2953318400
# Error: assert(Universe::heap()->is_in_or_null(*loc),"found non oop
pointer")
--- bench_attr_reader.rb: OK
--- bench_bigdecimal.rb: OK
--- bench_chmod.rb: OK
--- bench_compiled_load.rb: OK
--- bench_concat.rb OK
--- bench_constantize.rb OK
--- bench_define_method_methods.rb OK
--- bench_delegate.rb OK
--- bench_each_line.rb OK
--- bench_each_line_from_file.rb OK
--- bench_enumerable.rb OK
--- bench_erb.rb OK
--- bench_erb_rendering.rb OK
--- bench_erubis.rb: `require': no such file to load
-- rbench (LoadError)
--- bench_euler_hash_default.rb: OK
--- bench_eval.rb: OK
--- bench_exceptions_stack_depth.rb: OK
--- bench_fib_chained.rb: OK
--- bench_fib_iterative.rb: OK
--- bench_fib_recursive.rb: OK
--- bench_fib_stack_depth.rb: Segmentation fault
--- bench_file_writing.rb: OK
--- bench_float_math.rb: OK
--- bench_fractal.rb: OK
--- bench_full_startup.rb: OK
--- bench_hash_each.rb: OK
--- bench_instance_eval.rb: OK
--- bench_io_foreach.rb: failed on both
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/share/vm/code/nmethod.cpp:2017),
pid=82799, tid=4995690496
# Error: guarantee(pd != __null,"pc descriptor must be present")
--- bench_io_gets.rb OK
--- bench_io_open.rb OK
--- bench_io_read.rb OK
--- bench_io_sysread.rb OK
--- bench_io_tcpsocket.rb OK
--- bench_jruby_init.rb OK
--- bench_kind_of.rb OK
--- bench_lazy_method_triggers.rb `require': no such file to load
-- rbench (LoadError)
--- bench_loop_versus_while.rb 32-bit OK, 64-bit failed
# Internal Error
(/Users/twisti/mlvm/hotspot/src/share/vm/code/nmethod.cpp:2004),
pid=91087, tid=2953318400
# Error: guarantee(pd != __null,"pc descriptor must be present")
--- bench_loops.rb OK
--- bench_marshal.rb OK
--- bench_method_missing.rb OK
--- bench_method_to_proc.rb OK
--- bench_nsieve.rb OK
--- bench_object_extend.rb OK
--- bench_object_id.rb OK
--- bench_parser.rb OK
--- bench_proc_invocation.rb OK
--- bench_process_times.rb OK
--- bench_pythag.rb OK
--- bench_quicksort.rb OK
--- bench_rails_regexen.rb OK
--- bench_rake_install.rb undefined method `manage_gems'
for Gem:Module (NoMethodError)
--- bench_regex.rb OK
--- bench_regex_caching.rb OK
--- bench_respond_to.rb OK
--- bench_rexml.rb failed on both
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/share/vm/compiler/oopMap.cpp:425),
pid=83412, tid=4995690496
# Error: assert(Universe::heap()->is_in_or_null(*loc),"found non oop
pointer")
--- bench_richards.rb OK
--- bench_sclass.rb OK
--- bench_send.rb OK
--- bench_singleton_dispatch.rb OK
--- bench_stack_depth.rb Segmentation fault
--- bench_stat.rb OK
--- bench_string_ops.rb OK
--- bench_string_pack.rb OK
--- bench_string_scan.rb OK
--- bench_stringio_puts.rb OK
--- bench_stringio_write.rb OK
--- bench_stringscanner.rb OK
--- bench_strptime.rb 32-bit failed, 64-bit OK
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/share/vm/compiler/oopMap.cpp:425),
pid=85370, tid=2953318400
# Error: assert(Universe::heap()->is_in_or_null(*loc),"found non oop
pointer")
--- bench_struct.rb OK
--- bench_symbol_to_proc.rb OK
--- bench_symbol_to_s.rb OK
--- bench_tak.rb OK
--- bench_tempfile.rb OK
--- bench_thread_creation.rb OK
--- bench_threaded_reverse.rb 10 failed on both
# Internal Error
(/Users/twisti/mlvm/hotspot/src/cpu/x86/vm/frame_x86.inline.hpp:232),
pid=82215, tid=2953318400
# Error: assert(last_sp < fp() && last_sp >= sp(),"bad tos")
--- bench_time.rb OK
--- bench_time_require.rb `report_activate_error': Could
not find RubyGem activerecord (>= 0) (Gem::LoadError)
--- bench_timeout.rb 32-bit OK, 64-bit failed
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/cpu/x86/vm/frame_x86.inline.hpp:232),
pid=83697, tid=4995690496
# Error: assert(last_sp < fp() && last_sp >= sp(),"bad tos")
--- bench_up_downto_times.rb OK
--- bench_wide_finder.rb bench/o10k.ap OK
--- bench_xml_builder.rb `require': no such file to load
-- builder (LoadError)
--- bench_yaml.rb 32-bit failed, 64-bit OK
# Internal Error
(/Users/twisti/mlvm/hotspot-amd64/src/share/vm/compiler/oopMap.cpp:425),
pid=85549, tid=2953318400
# Error: assert(Universe::heap()->is_in_or_null(*loc),"found non oop
pointer")
Some of the fails are intermittent and need a couple of runs to actually
trigger.
-- Christian
More information about the mlvm-dev
mailing list