у компонента bitrix:menu есть не документированный параметр:
"CACHE_SELECTED_ITEMS" => "N" ,
который отключает создание кеша меню на каждую страницу сайта.
его эффективно использовать для сквозных меню (в хереде или футере сайта).
Вот данные от первых лиц, от разработчиков битрикс:
Ryzhonin Nikolay пишет:
2. Если на сайте меню одного типа
в подпапках не переопределяется, то можно при подключение меню указать параметр
"CACHE_SELECTED_ITEMS" => "N"
Это приведет к тому, что при создание файла кеша меню в ключе не будет
участвовать url. А расчет выбранного уровня будет происходить на после
получения данных из кеша.