Re: Fine grain select locking.



* Jeff Roberson <jroberson@xxxxxxxxxxxxxx> [070802 17:52] wrote:

I believe filedescriptor locking is the place where we are most lacking.
The new sx helped tremendously. However, this is still going to be a
scalability limiter. I have looked into both linux and solaris's solution
to this problem. Briefly, linux uses RCU to protect the list, which is
close to ideal as this is certainly a read heavy workload. Solaris on the
other hand uses the actual file lock to protect the descriptor slot. So
they fetch the file pointer, lock it, and then check to see if they lost a
race with the slot being reassigned while they were acquiring the lock.
This approach is perhaps better than rcu in many cases except when the
descriptor set is expanded. Then they have to lock every file in the set.

Certainly this is an extreme edge case... ?

I could see it happening if we started with low limits, but perhaps
by keeping counters/stats we could tell people how to tune their
systems, or even autotune them.

-Alfred

_______________________________________________
freebsd-arch@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@xxxxxxxxxxx"



Relevant Pages