I am using libpth under Linux in an unusual application that tends to execute just a few tens of instructions between resheduling threads. A profiler shows that it spends about 26% of time in __pth_shed_eventmanager and another 52% in sigismember. This does not seem unreasonable, however the same application is about two orders of magnitude faster when using a lightweight thread library under Windows.
I would be very grateful for suggestions as to what might be worth trying to speed things up. In particular, I do not need to handle signals, so maybe it might be possible to tell pth not to bother checking for those (which would presumably save the 52% of time spent in sigismember)? Many thanks!