Какова политика развертывания цикла для JIT?Или, если нет простого ответа на этот вопрос, то есть ли какой-нибудь способ, которым я могу проверить, где / когда в цикле выполняется развертывание цикла?
GNode child = null;
for(int i=0;i<8;i++){
child = octree.getNeighbor(nn, i, MethodFlag.NONE);
if(child==null)
break;
RecurseForce(leaf, child, dsq, epssq);
}
По сути, у меня есть фрагмент кода, который имеет статическое число итераций (восемь), и это плохо, когда я оставляю цикл for как есть.Но когда я вручную раскручиваю цикл, это значительно лучше.Мне интересно узнать, действительно ли JIT развернул цикл, а если нет, то почему.