[#43077] problems committing — Aaron Patterson <tenderlove@...>
It seems like the disk might be full on the svn server:
5 messages
2012/03/05
[#43090] "\\".gsub("\\", "\\\\") == "\\" ?!!! — Rodrigo Rosenfeld Rosas <rr.rosas@...>
Please, help me understand what is happening here.
6 messages
2012/03/06
[#43094] Re: "\\".gsub("\\", "\\\\") == "\\" ?!!!
— Xavier Noria <fxn@...>
2012/03/06
A literal passed as second argument to gsub goes over two
[#43120] [ruby-trunk - Bug #6124][Open] What is the purpose of "fake" gems in Ruby — Vit Ondruch <v.ondruch@...>
27 messages
2012/03/07
[#43142] Questions about thread performance (with benchmark included) — Rodrigo Rosenfeld Rosas <rr.rosas@...>
A while ago I've written an article entitled "How Nokogiri and JRuby
10 messages
2012/03/08
[#43785] Re: Questions about thread performance (with benchmark included)
— Tomoyuki Chikanaga <nagachika00@...>
2012/03/28
Hello, Rodrigo.
[#43797] Re: Questions about thread performance (with benchmark included)
— Rodrigo Rosenfeld Rosas <rr.rosas@...>
2012/03/28
Em 27-03-2012 23:22, Tomoyuki Chikanaga escreveu:
[#44213] Re: Questions about thread performance (with benchmark included)
— SASADA Koichi <ko1@...>
2012/04/09
Hi,
[#44214] Re: Questions about thread performance (with benchmark included)
— Urabe Shyouhei <shyouhei@...>
2012/04/09
#### MRI threads myths and facts #####
[#44220] Re: Questions about thread performance (with benchmark included)
— Rodrigo Rosenfeld Rosas <rr.rosas@...>
2012/04/09
Hi Urabe, thank you for your input, but I think you have
[#43245] [ruby-trunk - Bug #6131][Open] Ctrl-C handler do not work from exec process (Windows) — Luis Lavena <luislavena@...>
10 messages
2012/03/12
[#43279] [ruby-trunk - Bug #6148][Open] ruby_1_9_3 revision conflict — Jon Forums <redmine@...>
4 messages
2012/03/14
[#43313] [ruby-trunk - Feature #6150][Open] add Enumerable#grep_v — Suraj Kurapati <sunaku@...>
17 messages
2012/03/15
[#43325] [ruby-trunk - Bug #6154][Open] Eliminate extending WaitReadable/Writable at runtime — Charles Nutter <headius@...>
25 messages
2012/03/16
[#43326] [ruby-trunk - Bug #6154] Eliminate extending WaitReadable/Writable at runtime
— Charles Nutter <headius@...>
2012/03/16
[#43369] Re: [ruby-trunk - Bug #6154][Open] Eliminate extending WaitReadable/Writable at runtime
— Tanaka Akira <akr@...>
2012/03/17
2012/3/16 Charles Nutter <headius@headius.com>:
[#43334] [ruby-trunk - Bug #6155][Open] Enumerable::Lazy#flat_map raises an exception when an element does not respond to #each — Dan Kubb <dan.kubb@...>
9 messages
2012/03/16
[#43345] [ruby-trunk - Bug #6159][Open] Enumerable::Lazy#inspect — Benoit Daloze <redmine@...>
10 messages
2012/03/16
[#43497] [ruby-trunk - Bug #6179][Open] File::pos broken in Windows 1.9.3p125 — "jmthomas (Jason Thomas)" <jmthomas@...>
24 messages
2012/03/20
[#43502] [ruby-trunk - Feature #6180][Open] to_b for converting objects to a boolean value — "AaronLasseigne (Aaron Lasseigne)" <aaron.lasseigne@...>
17 messages
2012/03/20
[#43529] [ruby-trunk - Bug #6183][Open] Enumerator::Lazy performance issue — "gregolsen (Innokenty Mikhailov)" <anotheroneman@...>
36 messages
2012/03/21
[#43814] [ruby-trunk - Feature #6219][Open] Return value of Hash#store — "MartinBosslet (Martin Bosslet)" <Martin.Bosslet@...>
20 messages
2012/03/28
[#43904] [ruby-trunk - Feature #6225][Open] Hash#+ — "trans (Thomas Sawyer)" <transfire@...>
36 messages
2012/03/29
[#43909] [ruby-trunk - Feature #6225][Assigned] Hash#+
— "mame (Yusuke Endoh)" <mame@...>
2012/03/29
[#43923] [ruby-trunk - Feature #6225] Hash#+
— "shyouhei (Shyouhei Urabe)" <shyouhei@...>
2012/03/30
[#43951] [ruby-trunk - Bug #6228][Open] [mingw] Errno::EBADF in ruby/test_io.rb on ruby_1_9_3 — "jonforums (Jon Forums)" <redmine@...>
28 messages
2012/03/30
[#43996] [ruby-trunk - Bug #6236][Open] WEBrick::HTTPServer swallows Exception — "regularfry (Alex Young)" <alex@...>
13 messages
2012/03/31
[#44015] [Ruby 1.8 - Bug #6239][Open] super Does Not Pass Modified Rest Args When Originally Empty — "mudge (Paul Mucur)" <mudge@...>
6 messages
2012/03/31
[ruby-core:43797] Re: Questions about thread performance (with benchmark included)
From:
Rodrigo Rosenfeld Rosas <rr.rosas@...>
Date:
2012-03-28 12:51:46 UTC
List:
ruby-core #43797
Em 27-03-2012 23:22, Tomoyuki Chikanaga escreveu: > Hello, Rodrigo. > > To be honest, I'm not familiar very much with JRuby, > but I've heard that on JRuby Thread can be executed truly parallel. > On the other hand, MRI has GVL and cpu bounded calculation could be > executed only concurrently, I means threads share a cpu core with time slicing. > So if there're many cpu cores in your environment, cpu bounded multi > threaded code > might be executed faster on JRuby than on MRI. > > I'm afraid I might misunderstand the point. > I hope someone expert at JRuby/MRI give a more correct comment. Hi Tomoyuki, thank you for your response. Actually I have already read about this in some sites but I never found an official documentation about threads behavior in MRI. It seems that due to some global lock we can't get code to run concurrently in CPU intensive applications. I mean, threads are useless for those kind of applications. It seems that threads in MRI are only useful for IO intensive applications or some evented based applications. This is really a blocker issue for those willing to do intensive calculations that will prevent them from using MRI and having to sort to JRuby or other language for the job. I hope this will change for MRI at some point... Specially for web servers this behavior leads to bad design from some web frameworks that are optimized to be used with MRI. For example, Rails common deploy strategy is to use multiple processes for dealing with concurrent requests, which will use much more memory than would be required with a threaded environment. This is specially an issue if you're paying a VPS with prices varying by available RAM. I think this strategy is the common one only for Ruby applications (except from JRuby which doesn't have this limitation). This is totally weird and I guess most frameworks would have their design changed to be optimized for threads usage if threaded code could be run concurrently in CRuby. I don't think Ruby should ignore the fact that its current huge popularity has came from the Rails framework and there are lots of people willing to use it for web development, so it shouldn't be considered as a second-class citizen. The most important limitation for CRuby nowadays is this lack of concurrent threads code in my opinion. This is a blocker for the correct deploy strategy. For example, you're currently not allowed to write long-polling applications with CRuby and Rails because each long-polling request would require a different process. Well, actually in this case you can use threads because this would fall in the evented based category, but if you have some report action that needs lots of computation it won't be able to compute the results faster by using multiple cores. Are there any plans for changing this situation? Most servers will have more than 6 cores and they won't be used in full capacity for CRuby applications nowadays. Kind regards, Rodrigo.