| [ CnUnix ] in KIDS 글 쓴 이(By): swhan (foo bar) 날 짜 (Date): 2002년 10월 13일 일요일 오후 11시 19분 02초 제 목(Title): Re: [q] IPC performance (socket)? 흣~ 날카로운 지적 pthread mutex의 속도에 대해서 implementation마다 다를 수 있다는 것은 저도 동의합니다. 하지만 어떻게 다를 수 있는지는 전혀 감이 안오는군요. 다만, thread의 경우처럼 껍떼기만 씌우기는 좀 어려울 것 같고, signal의 경우처럼 커널이 좀 많이 변해야 하는 것 같지도 않고... mutex가 말이 pthread_mutex지 thread를 쓰지 않는 겨우에도 갖다 쓰거든요. 자백하자면, 전 pthread_mutex와 semaphore의 속도 비교는 해보지 않았습니다. 다만 빠른 lock방법을 찾던중, 수 많은(근거를 댈 수 없는!!!) 자료들이 atomic lock이 빠르고 semaphore보다는 pthread mutex가 빠르다....고 말을 하길래 -.-a 그리고, 제가 이거로 고민할 시절에는 user mode에서만 해결해야 했었습니다. 도중에 context switching이 일어나지 않도록 노력했구요. 그래서, 완전한 또는 부분적 선점형 커널을 고르고 process scheduler도 선택하고 등등 작업도(당연하지만) 해줬었구요. (하고픈 말은 커널모드는 모르겠다...배째시라~~ 뭐 이런거죠 -.-a 죄송합니다) 흠..signal도 sysv signal과 posix signal이 특성이 틀리고 반응속도나 유실 여부도 틀리니 속도가 틀리다고 말을 해야겠군요. @그리고 전 swhan인데요 -.-a @생각난김에 웹서핑이나 해야겠군요. lock속도에 대한 벤치마킹... @참..전 atomic lock을 pthread_mutex대신 선택한게..memory size 때문이었습니다. 코드를 가급적 portable하게 만들어 달라는 요구가 있어서 assembly 코드를 넣지 않으려고 했는데 pthread_mutex_t의 크기가 60Byte정도 하는바람에 수천개 array랑 곳곳에 삽입하기가 참 어려워지더군요. (읔 지금 Zol5.6에서 손으로 대충 세어보니 24Byte로군여. 치매일까 implementaion 차이일까... -.-a ) |