SKILL will garbage collect memory when it needs to. If you have objects which are no longer referred to, these are available for garbage collection - usually before it tries to allocate any more space for a particular type of object. Note that this doesn't necessarily mean that the footprint of the virtuoso process will decrease, but it should re-use memory where it can.
It's not necessary to set it to 'unbound for this to happen - any time the data is no longer referenced, it can be reclaimed (so setting the variable to nil would have the same effect). The difference is that setting it to unbound makes it appear as if the variable doesn't exist, so if you try to refer to the variable again later, you'll get an "undefined variable" error message.
Note you can force garbage collection by calling gc() (after removing references to the data of course), but it's not normally necessary to explicitly call the garbage collector yourself.