Вы можете профилировать вашу программу, используя, скажем, OProfile в Linux. Затем отфильтруйте результаты, чтобы посмотреть время, потраченное в pthread_mutex_lock()
для каждого мьютекса, или функцию более высокого уровня, которая выполняет блокировку. Поскольку программа будет блокировать вызов функции блокировки до тех пор, пока не будет получен мьютекс, профилирование времени, проведенного в этой функции, должно дать вам представление о том, какие мьютексы являются самыми дорогими.