2016-06-27 9 views
8

Только что начал использовать ccache на основе this tutorial и до сих пор мне это нравится. Однако промахи кэшей происходят крайне медленно. Вот мои результаты:ccache cache miss замедлить компиляцию много

Regular clean build without ccache : 1m40s 
First build with ccache : 4m36s 
Second build with ccache : 30s 

Я не уверен, с чего начать отладку. На странице производительности (https://ccache.samba.org/performance.html) упоминается, как сложность файла make может замедлить компиляцию, но в этом контексте я использую Xcode, поэтому вызов ccache должен быть относительно быстрым. Я ожидал снижения производительности, но не так!

Есть мои текущие настройки с использованием версии 3.2.5:

export CCACHE_MAXSIZE=3G 
export CCACHE_HARDLINK=true 
export CCACHE_SLOPPINESS=pch_defines,file_macro,time_macros,include_file_mtime,include_file_ctime,file_stat_matches 

Обратите внимание, что я делаю использовать PCH, если что-то меняет.

+0

Где находится ваш ccache? Я бы предположил, что ваш ccache dir находится на удаленном (например, nfs) и вызывает медленную производительность. – Mine

+0

Это в моем домашнем каталоге, так что это не проблема. – gcamp

ответ

3

Вы можете запустить команду «ccache -s», чтобы просмотреть статистику.

И из экспериментов в конце этой проблемы с ошибкой ccache https://github.com/ccache/ccache/issues/54, попробуйте уменьшить используемый параллельный процессор, может быть, блокировка файлов из нескольких процессов может быть основной причиной.

+0

Ничего плохого, что я могу видеть в статистике. Попробует уменьшить количество параллельных ядер и отчитаться! – gcamp

+0

@gcamp: Любой успех? – Richard