Messages in this thread | | | From | "Jeff V. Merkey" <> | Subject | Shared Synchronization Objects | Date | Fri, 14 May 1999 09:56:45 -0600 |
| |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN"> <HTML> <HEAD>
<META content=text/html;charset=iso-8859-1 http-equiv=Content-Type> <META content='"MSHTML 5.00.0707.2700"' name=GENERATOR> </HEAD> <BODY bgColor=#ffffff> <DIV> </DIV>
<DIV><FONT color=#000000 size=2>Linux Community,</FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2>I've seen discussion of shared sync objects for SMP (reader/writer locks) from some folks. I have not seen anything out there for them in the kernel sources. We really need this in Linux. In particular, they would make file systems ***SMOKE*** from a performance standpoint. Comms (neworking) subsystems usually are ok with simple mutexes and spin locks, but file systems and databases are different beasts. I've implemented them in two different SMP kernels. It sounds like several folks are working on implementations of them. I'd like to see them get rolled into the kernel -- they are desperately needed.</FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2>Standards are good. the UI (Unix International) APIs are some of the better for defining SMP synchronization objects (mutex_lock, mutex_unlock, rd_rwlock, etc.) becuase they are standardized, easy to implement, and well known. They also can be implemented in-kernel. If someone else doesn't take stab at putting them in, we may try to, if folks think they would be a good idea. We really need a shared sync object in the kernel for file system work (shared FATs, Dir Tables, etc.) they increase SMP parallelism and scaling if implemented correctly very significantly. </FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2>If other folks are interested in this, we could take a shot at putting them in, but we aren't religious about it, and would certainly welcome other folks to try as well -- it will help all of us.</FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2>Please advise.</FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2>Jeff</FONT></DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV>
<DIV><FONT color=#000000 size=2></FONT> </DIV> </BODY></HTML>
| |