[omniORB] omniORB 4.1 patch: optimize default constructed any

Duncan Grisby duncan at grisby.org
Fri May 11 11:53:33 BST 2007


On Monday 30 April, Teemu Torma wrote:

> We are using a union to represent range of different valuse.  CORBA::Any 
> is one of the choices that is rarely used, but when running callgrind 
> the union constructor was using notable amount of time which was 
> dominated by CORBA::Any default constructor.
> 
> The attached patch does not assign tc_null as the default typecode but 
> leaves the typecode nil instead and handles this on the access time 
> instead.  Duplicating typecodes takes a mutex which is the slow part.  
> With this patch, CORBA::Any default constructor and the union 
> constructor dropped below the callgrind “radar screen.”

Thanks. I've checked in your patch.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list