предположим, у меня есть метод Java (сложение массива, например)проверить переменных и заявлений зависимостей в петле из класса Java
public void mymethod() {
{
//i have some global arrays named a, b & c
for(int i=0;i<10;i++)
a[i]=b[i]+c[i]; //no dependency exists
}
здесь, если я преобразовать эту петлю в 2 отдельных петель и запустить с помощью двух потоков. результат будет точным. но в случае, как приведено ниже
public void mymethod() {
{
//i have some global arrays named a, b
for(int i=0;i<10;i++)
a[i]=b[i]+a[i-1]; //a[i] dependent on a[i-1]
}
следующее значение в [I], зависит от предыдущего значения а [I-1]. поэтому в цикле существует зависимость, и ее нельзя распараллелить, просто разделив цикл на два отдельных цикла.
поэтому мой вопрос;
Есть ли какой-либо класс JAVA/инструмент/пакет и т. Д. Для проверки такого типа зависимости в цикле?
согласно моей информации, JDepend - это поиск зависимостей класса. а не поиск зависимостей петли. –