On Wed, Jun 5, 2013 at 10:44 AM, John Plevyak <jplev...@acm.org> wrote:
> pthread_self() on x86 accesses a register on CPU, so it is quite fast (i.e. > no syscall). > Yes, Let's give a patch to drop this wrapper. > > john > > > On Thu, May 23, 2013 at 11:22 PM, Yunkai Zhang <yunkai...@gmail.com> > wrote: > > > Oh, I read the implementation of pthread_self() in glibc just now, It's > > simple then I guessed, > > > > It seems an overkill optimization. I think we should drop this wrapper. > > > > > > On Fri, May 24, 2013 at 2:14 PM, Yunkai Zhang <yunkai...@gmail.com> > wrote: > > > > > > > > > > > > > > On Fri, May 24, 2013 at 1:41 AM, James Peach <jpe...@apache.org> > wrote: > > > > > >> Hi Yunkai, > > >> > > >> I'm looking at the reclaimable freelist code, and this jumped out at > me: > > >> > > >> static inline pthread_t thread_id(void) > > >> { > > >> static __thread pthread_t tid; > > >> > > >> return tid?tid:(tid = pthread_self()); > > >> } > > >> > > >> Why does this need to cache the thread ID in thread local storage? > > >> > > > > > > Getting thread id is a very frequent operation in reclaimabe-freelist, > > but > > > pthread_selft() isn't a inline function, I wanted to cache it so that > we > > > can reduce one function calling. > > > > > > > > > > > >> > > >> J > > >> > > > > > > > > > > > > -- > > > Yunkai Zhang > > > Work at Taobao > > > > > > > > > > > -- > > Yunkai Zhang > > Work at Taobao > > > -- Yunkai Zhang Work at Taobao