Hello all,

     I am experimenting with Boost interprocess containers and like the ease of using them. I want to use these in place of the "linux shared memory+shared memory allocator + std containers". However, I am seeing some performance hit when using boost. I measured the times for vector access from shared memory. I define access as indexing into the vector (v[i]) (all times in milli seconds):

    Num elements   Local heap | Boost ipc | Shmat()
       100,000            0.23           0.39             0.27
    1,000,000             2.3            3.85             2.7


I repeated these for different number of elements and the results scaled as above. I used callgrid+kcachegrind to profile boost and shmat() access, and I see there is a significant amount of time spent in boost offset pointer calculation and mcount ( I don't know what that is). 

Is there something I am missing or is this an expected performance hit, for using boost with all off the additional functionality, compared to linux shared memory?

Thank you,
Naveen