lkml.org 
[lkml]   [2002]   [Oct]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: async poll
    On Wed, 23 Oct 2002, bert hubert wrote:

    > On Wed, Oct 23, 2002 at 02:51:21PM -0700, Davide Libenzi wrote:
    >
    > > Why would you want to have a single fd simultaneously handled by two
    > > different threads with all the locking issues that would arise ? I can
    > > understand loving threads but this seems to be too much :)
    >
    > We in fact tried to do this and for good reason. Our nameserver sofware gets
    > great benefit when two processes listen to the same socket on an SMP system.
    > In some cases, this means 70% more packets/second, which is close to the
    > theoretical maximum beneft.
    >
    > We would heavily prefer to have two *threads* listening to the same socket
    > instead of to processes. The two processes do not share caching information
    > now because that expects to live in the same memory.
    >
    > Right now, we can't do that because of very weird locking behaviour, which
    > is documented here: http://www.mysql.com/doc/en/Linux.html and leads to
    > 250.000 context switches/second and dysmal peformance.
    >
    > I expect NPTL to fix this situation and I would just love to be able to call
    > select() or poll() or recvfrom() on the same fd(s) from different threads.

    I feel this topic is going somewhere else ;) ... but if you need your
    processes to share memory, and hence you would like them to be threads,
    you're very likely going to have some form of syncronization mechanism to
    access the shared area, don't you? So, isn't it better to have two
    separate tasks, that can freely access the memory w/out locks instead of N
    threads?



    - Davide



    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:30    [W:0.025 / U:0.288 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site