Вы читали ответ на этот вопрос ?
mach_msg_trap не тратит время простоя.Это функция, которая ожидает некоторого результата, прежде чем процесс приложения сможет продолжить нормальное выполнение.Конечно, он также будет работать, когда ваше приложение простаивает, но я сомневаюсь, что это так.Вместо этого эти 5% могут возникнуть из-за ожидания дискового ввода-вывода, например, при загрузке файла из флэш-памяти.
Если ваша производительность «шаткая», я бы не стал тратить время на поиск неисправности на уровне системы.функции, которые вы не можете изменять или настраивать.
Во-вторых, вы не упомянули, где вы измеряете производительность, то есть какое устройство.Если вы получаете 50 кадров в секунду на iPhone 3G или старше, производительность можно даже считать хорошей.Кроме того, вы должны измерять производительность только в выпусках сборки.
Лично я могу только рекомендовать проверить, что вы следовали передовым методам, таким как использование листов спрайтов и атласа текстуры для ваших спрайтов, объединение спрайтов и физических объектов вместочастого их создания и освобождения, а также сокращения количества итераций, выполняемых Box2D в своей функции шага.