Again, we can parallelize this operation among \(L\) simultaneous jobs (in practice we set \(K=L\) as the number of threads on our machine). In the \(K=2\) case, job \(l\) processes \(i\in[jN/L,(j+1)N/L]\), choosing the bounds of \(j\) by binary searching into \(C\) so that \(S_{B_{i}}<S_{C_{j}}<S_{B_{j+1}}\). The case where \(K>2\) is identical except that we repeat this over all \(K\) partial suffix arrays.
다시 말하지만, 이 작업을 \(L\)개의 동시 작업(실제로는 컴퓨터의 스레드 수로 \(K=L\)을 설정)으로 병렬화할 수 있습니다. \(K=2\)의 경우, 작업 \(l\)은 \(i\in[jN/L,(j+1)N/L]\)를 처리하며, \(S_{B_{i}}<S_{C_{j}}<S_{B_{j+1}}\)가 되도록 \(C\)로 이진 검색을 통해 \(j\)의 경계를 선택합니다. \(K>2\)인 경우는 모든 \(K\) partial suffix arrays에 대해 이 작업을 반복한다는 점을 제외하면 동일합니다.
다시 말하지만, 이 작업을 \(L\)개의 동시 작업(실제로는 컴퓨터의 스레드 수로 \(K=L\)을 설정)으로 병렬화할 수 있습니다. K=2\)의 경우, 작업 \(l\)은 \(i\in[jN/L,(j+1)N/L]\)를 처리하며, \(S_{B_{i}}<S_{C_{j}}<S_{B_{j+1}}\)가 되도록 \(C\)로 이진 검색을 통해 \(j\)의 경계를 선택합니다. K>2\)인 경우는 모든 \(K\) 부분 접미사 배열에 대해 이 작업을 반복한다는 점을 제외하면 동일합니다.