[#389739] Ruby Challenge — teresa nuagen <unguyen90@...>

Here is a ruby challenge for all you computer science lovers out there,

22 messages 2011/11/05
[#389769] Re: Ruby Challenge — "Jonan S." <jonanscheffler@...> 2011/11/05

Totally unrelated to any husker computer science programs right? Like

[#389905] Re: Ruby Challenge — Stephen Ramsay <sramsay.unl@...> 2011/11/09

Jonan S. wrote in post #1030330:

[#389907] Re: Ruby Challenge — aseret nuagen <unguyen90@...> 2011/11/09

> You mean like the professor for the course? Because that would be me .

[#389915] Re: Ruby Challenge — Robert Klemme <shortcutter@...> 2011/11/09

On Wed, Nov 9, 2011 at 4:52 AM, aseret nuagen <unguyen90@aim.com> wrote:

[#389792] Tricky DSL, how to do it? — Intransition <transfire@...>

I'd want to write a DSL such that a surface method_missing catches

18 messages 2011/11/06

[#389858] Compiling Ruby Inline C code - resolving errors — Martin Hansen <mail@...>

I am trying to get this Ruby inline C code http://pastie.org/2825882 to

12 messages 2011/11/08

[#389928] Forming a Ruby meetup group... — "Darryl L. Pierce" <mcpierce@...>

Where I work we have a local Ruby group that used to meet up, until the

12 messages 2011/11/09

[#389950] The faster way to read files — "Noé Alejandro" <casanejo@...>

Does anybody know which is the fastest way to read a file? Lets say

18 messages 2011/11/09

[#390064] referring to version numbers in a gem — Chad Perrin <code@...>

How do I specify and access a gem's version number within the code of the

28 messages 2011/11/11

[#390238] RVM problem, plz help — Misha Ognev <b1368810@...>

Hi, I have this problem:

15 messages 2011/11/16

[#390308] any command line tools for querying yaml files — Rahul Kumar <sentinel1879@...>

(Sorry, this is not exactly a ruby question).

11 messages 2011/11/18

[#390338] Newbie - cmd question — Otto Dydakt <ottodydakt@...>

I've literally JUST downloaded ruby from rubyinstaller.org.

21 messages 2011/11/19
[#390342] Re: Newbie - cmd question — Otto Dydakt <ottodydakt@...> 2011/11/19

OK thank you, I uninstalled & reinstalled, checking the three boxes at

[#390343] Re: Newbie - cmd question — "Ian M. Asaff" <ian.asaff@...> 2011/11/19

did you type "irb" first to bring up the ruby command prompt?

[#391154] Re: Newbie - cmd question — "Hussain A." <hahmad@...> 2011/12/12

Hi all,

[#391165] Re: Newbie - cmd question — Luis Lavena <luislavena@...> 2011/12/12

Hussain A. wrote in post #1036281:

[#390374] Principle of Best Principles — Intransition <transfire@...>

I seem to run into a couple of design issue a lot and I never know what is

16 messages 2011/11/20

[#390396] how to call Function argument into another ruby script. — hari mahesh <harismahesh@...>

Consider I have a ruby file called library.rb.

10 messages 2011/11/21

[#390496] How to make 1.9.2 my default version using RVM — Fily Salas <fs_tigre@...>

Hi,

25 messages 2011/11/24

[#390535] Is high-speed sorting impossible with Ruby? — "Gaurav C." <chande.gaurav@...>

Well, first of all, I'm new to Ruby, and to this forum. So, hello. :)

39 messages 2011/11/25
[#390580] Re: Is high-speed sorting impossible with Ruby? — Joao Pedrosa <joaopedrosa@...> 2011/11/27

Hi,

[#390593] Re: Is high-speed sorting impossible with Ruby? — "Gaurav C." <chande.gaurav@...> 2011/11/27

Joao Pedrosa wrote in post #1033884:

[#390600] Re: Is high-speed sorting impossible with Ruby? — Douglas Seifert <doug@...> 2011/11/27

A big gain can be had by disabling the garbage collector. Here is my best

[#390601] Re: Is high-speed sorting impossible with Ruby? — Douglas Seifert <doug@...> 2011/11/27

I've thrown various solutions up on github here:

[#390689] Stupid question — James Gallagher <lollyproductions@...>

Hi everyone.

22 messages 2011/11/30

Re: Garbage collection and define_finalizer

From: Robert Klemme <shortcutter@...>
Date: 2011-11-30 13:21:07 UTC
List: ruby-talk #390688
On Wed, Nov 30, 2011 at 4:11 AM, Garthy D
<garthy_lmkltybr@entropicsoftware.com> wrote:

> Thankyou for the detailed reply. :)

You're welcome!

> On 30/11/11 00:07, Robert Klemme wrote:
>>
>> On Tue, Nov 29, 2011 at 1:43 PM, Garthy D
>> <garthy_lmkltybr@entropicsoftware.com> rote:

>> What you observe might mean that you
>> simply haven't created enough Ruby garbage for GC to think it needs to
>> work.  have no idea how you allocate texture memory but if it is in
>> a C extension written by you I would check whether there is a way to
>> go through MRI's allocation in order to correct MRI's idea of used
>> memory. mplementation of Ruby's String might be a good example for
>> that.
>
> Your assumption re the C extension for texture memory is pretty-much spot
> on. :)

:-)

> Re texture memory, it's a little more complicated than a standard
> allocation. Some memory will be the standard allocated sort, but some will
> be on the video card, and they're effectively coming from different "pools"
> (or heaps), neither of which I'll have direct control over. Unless the Ruby
> GC directly understands this concept (I don't know if it does, but I'm
> guessing not), I'm not going to be able to use Ruby to manage that memory.
> Unfortunately, the problem goes a bit beyond just textures, as I'm wrapping
> a good chunk of a 3D engine in Ruby objects. That's my problem to worry
> about though.

Sounds tricky indeed.

> And that's assuming I can redirect the allocation calls anyway- I'm not sure
> if I can. It'd be nice to be able to inform the Ruby GC of allocated memory
> (or an estimate, if it keeps changing) without actually leaving the GC to
> allocate it. Please correct me if I'm wrong, but I'm assuming this can't be
> done, and you must use the ALLOC/ALLOC_N-style functions?

I'm not such a good source for this as the source (or Matz).  So you
probably better look elsewhere for a definitive answer.  Maybe for
your issue it is sufficient to just reduce the threshold from which on
Ruby starts considering GC at all.  I can't really tell.

> Unfortunately it causes a lot of problems in my case, as I had assumed one
> thing from general reading on the topic, and observed another. That's my
> problem to deal with though, not anyone else's. Still, there seems to be lot
> of information online that talks about Ruby performing mark and sweep,
> either stating outright that unreferenced objects are freed on first GC, or
> heavily implying it at least. From your description, and my observations,
> this information appears to be incorrect. Basically, there seems to be a lot
> of misinformation about what the GC is doing. Apart from the source, is
> there some place where the correct behaviour is discussed, that could be
> referred to instead, particularly if someone is suggesting that the MRI GC
> implementation should immediately clean up these references on next GC
> (which, as we've established, isn't accurate)?

I am not aware of any.  I haven't searched extensively though.  But we
might need to update locations you found to reflect the truth.
Ideally someone from core team would do a writeup which explains how
GC works - at least for MRI.  Chances are also that behavior has
changed between 1.8 and 1.9 as these are quite different internally.

Kind regards

robert

-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread