Ответ
В Go len() — это встроенная функция, которая возвращает длину типа (слайса, массива, строки, мапы и т.д.). Она работает за O(1), так как для этих типов длина хранится в структуре данных (например, слайс содержит указатель на массив, длину и capacity).
CPU кеш здесь не играет роли напрямую, так как len() просто читает уже предвычисленное значение из памяти. Однако, если структура данных (например, слайс) находится в кеше, доступ к её длине будет быстрее.
s := []int{1, 2, 3}
fmt.Println(len(s)) // Чтение длины из заголовка слайса
Оптимизация доступа к len() зависит от локальности данных: если слайс/массив активно используется, он, скорее всего, будет в кеше.