reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
277 pr->u.p.parm1 = chunk; 282 pr->u.p.count = 0; 321 pr->u.p.lb = lb; 322 pr->u.p.ub = ub; 323 pr->u.p.st = st; 324 pr->u.p.tc = tc; 335 pr->u.p.ordered_lower = 1; 336 pr->u.p.ordered_upper = 0; 359 pr->u.p.count = init; 360 pr->u.p.ub = init + small_chunk + (id < extras ? 1 : 0); 362 pr->u.p.parm2 = lb; 366 pr->u.p.parm3 = KMP_MIN(small_chunk + extras, nproc); 367 pr->u.p.parm4 = (id + 1) % nproc; // remember neighbour tid 368 pr->u.p.st = st; 407 pr->u.p.parm1 = (id == tc - 1); /* parm1 stores *plastiter */ 409 pr->u.p.count = 1; /* means no more chunks to execute */ 410 pr->u.p.parm1 = FALSE; 418 pr->u.p.parm1 = (id == nproc - 1); 424 pr->u.p.parm1 = TRUE; 427 pr->u.p.count = 1; /* means no more chunks to execute */ 428 pr->u.p.parm1 = FALSE; 439 pr->u.p.lb = lb + init; 440 pr->u.p.ub = lb + limit; 444 pr->u.p.lb = lb + init * st; 448 pr->u.p.ub = (ub_tmp + st > ub ? ub : ub_tmp); 450 pr->u.p.ub = (ub_tmp + st < ub ? ub : ub_tmp); 454 pr->u.p.ordered_lower = init; 455 pr->u.p.ordered_upper = limit; 467 pr->u.p.parm1 = ((tc + nth - 1) / nth + chunk - 1) & ~(chunk - 1); 469 pr->u.p.parm1 = tc; 486 pr->u.p.parm2 = guided_int_param * nproc * (chunk + 1); 487 *(double *)&pr->u.p.parm3 = 500 pr->u.p.parm1 = tc; 559 *(DBL *)&pr->u.p.parm3 = x; 600 pr->u.p.parm2 = cross; 609 pr->u.p.count = tc - __kmp_dispatch_guided_remaining( 623 pr->u.p.parm1 = tc; 632 pr->u.p.parm1 = (nproc > 1) ? (tc + nproc - 1) / nproc : tc; 636 if (pr->u.p.parm1 <= 0) { 637 pr->u.p.parm1 = KMP_DEFAULT_CHUNK; 685 pr->u.p.parm1 = parm1; 686 pr->u.p.parm2 = parm2; 687 pr->u.p.parm3 = parm3; 688 pr->u.p.parm4 = parm4; 917 cur_chunk = pr->u.p.parm1; 933 __kmp_itt_metadata_loop(loc, schedtype, pr->u.p.tc, cur_chunk); 974 volatile T *p = &pr->u.p.static_steal_counter; 985 &(task_info->task_data), pr->u.p.tc, OMPT_LOAD_RETURN_ADDRESS(gtid)); 1022 UT lower = pr->u.p.ordered_lower; 1079 UT lower = pr->u.p.ordered_lower; 1080 UT upper = pr->u.p.ordered_upper; 1175 if (pr->u.p.tc == 0) { 1186 T chunk = pr->u.p.parm1; 1192 trip = pr->u.p.tc - 1; 1199 if (pr->u.p.count < (UT)pr->u.p.ub) { 1199 if (pr->u.p.count < (UT)pr->u.p.ub) { 1202 init = (pr->u.p.count)++; 1203 status = (init < (UT)pr->u.p.ub); 1210 int while_limit = pr->u.p.parm3; 1216 T victimIdx = pr->u.p.parm4; 1223 (*(volatile T *)&victim->u.p.static_steal_counter != 1224 *(volatile T *)&pr->u.p.static_steal_counter)) && 1231 if (!victim || (*(volatile T *)&victim->u.p.static_steal_counter != 1232 *(volatile T *)&pr->u.p.static_steal_counter)) { 1237 if (victim->u.p.count + 2 > (UT)victim->u.p.ub) { 1237 if (victim->u.p.count + 2 > (UT)victim->u.p.ub) { 1238 pr->u.p.parm4 = (victimIdx + 1) % nproc; // shift start tid 1245 limit = victim->u.p.ub; // keep initial ub 1246 if (victim->u.p.count >= limit || 1247 (remaining = limit - victim->u.p.count) < 2) { 1249 pr->u.p.parm4 = (victimIdx + 1) % nproc; // next victim 1257 init = (victim->u.p.ub -= (remaining >> 2)); 1261 init = (victim->u.p.ub -= 1); 1266 pr->u.p.parm4 = victimIdx; // remember victim to steal from 1271 pr->u.p.count = init + 1; 1272 pr->u.p.ub = limit; 1289 vold.b = *(volatile kmp_int64 *)(&pr->u.p.count); 1293 (volatile kmp_int64 *)&pr->u.p.count, 1297 vold.b = *(volatile kmp_int64 *)(&pr->u.p.count); 1308 int while_limit = pr->u.p.parm3; 1316 T victimIdx = pr->u.p.parm4; 1323 (*(volatile T *)&victim->u.p.static_steal_counter != 1324 *(volatile T *)&pr->u.p.static_steal_counter)) && 1331 if (!victim || (*(volatile T *)&victim->u.p.static_steal_counter != 1332 *(volatile T *)&pr->u.p.static_steal_counter)) { 1337 pr->u.p.parm4 = victimIdx; // new victim found 1339 vold.b = *(volatile kmp_int64 *)(&victim->u.p.count); 1345 pr->u.p.parm4 = (victimIdx + 1) % nproc; // shift start victim id 1356 (volatile kmp_int64 *)&victim->u.p.count, 1370 *(volatile kmp_int64 *)(&pr->u.p.count) = vold.b; 1385 start = pr->u.p.parm2; 1388 incr = pr->u.p.st; 1406 pr->u.p.ordered_lower = init; 1407 pr->u.p.ordered_upper = limit; 1419 if ((status = !pr->u.p.count) != 0) { 1420 pr->u.p.count = 1; 1421 *p_lb = pr->u.p.lb; 1422 *p_ub = pr->u.p.ub; 1423 last = pr->u.p.parm1; 1425 *p_st = pr->u.p.st; 1427 pr->u.p.lb = pr->u.p.ub + pr->u.p.st; 1427 pr->u.p.lb = pr->u.p.ub + pr->u.p.st; 1427 pr->u.p.lb = pr->u.p.ub + pr->u.p.st; 1439 parm1 = pr->u.p.parm1; 1441 trip = pr->u.p.tc - 1; 1442 init = parm1 * (pr->u.p.count + tid); 1445 start = pr->u.p.lb; 1446 incr = pr->u.p.st; 1455 pr->u.p.count += nproc; 1466 pr->u.p.ordered_lower = init; 1467 pr->u.p.ordered_upper = limit; 1474 T chunk = pr->u.p.parm1; 1482 trip = pr->u.p.tc - 1; 1490 start = pr->u.p.lb; 1492 incr = pr->u.p.st; 1509 pr->u.p.ordered_lower = init; 1510 pr->u.p.ordered_upper = limit; 1517 T chunkspec = pr->u.p.parm1; 1521 trip = pr->u.p.tc; 1533 pr->u.p.parm2) { // compare with K*nproc*(chunk+1), K=2 by default 1554 (UT)(remaining * *(double *)&pr->u.p.parm3); // divide by K*nproc 1564 start = pr->u.p.lb; 1565 incr = pr->u.p.st; 1571 pr->u.p.ordered_lower = init; 1572 pr->u.p.ordered_upper = limit; 1586 T chunk = pr->u.p.parm1; 1590 trip = pr->u.p.tc; 1602 if ((T)remaining < pr->u.p.parm2) { 1623 UT span = remaining * (*(double *)&pr->u.p.parm3); 1637 start = pr->u.p.lb; 1638 incr = pr->u.p.st; 1644 pr->u.p.ordered_lower = init; 1645 pr->u.p.ordered_upper = limit; 1657 T chunkspec = pr->u.p.parm1; 1669 trip = pr->u.p.tc; 1677 if (chunkIdx >= (UT)pr->u.p.parm2) { 1680 init = chunkIdx * chunkspec + pr->u.p.count; 1708 trip, *(DBL *)&pr->u.p.parm3, chunkIdx); 1714 trip, *(DBL *)&pr->u.p.parm3, chunkIdx + 1); 1732 start = pr->u.p.lb; 1733 incr = pr->u.p.st; 1739 pr->u.p.ordered_lower = init; 1740 pr->u.p.ordered_upper = limit; 1753 T parm2 = pr->u.p.parm2; 1754 T parm3 = pr->u.p.parm3; 1755 T parm4 = pr->u.p.parm4; 1763 trip = pr->u.p.tc - 1; 1771 start = pr->u.p.lb; 1773 incr = pr->u.p.st; 1790 pr->u.p.ordered_lower = init; 1791 pr->u.p.ordered_upper = limit; 1916 if ((status = (pr->u.p.tc != 0)) == 0) { 1933 T chunk = pr->u.p.parm1; 1938 init = chunk * pr->u.p.count++; 1939 trip = pr->u.p.tc - 1; 1954 start = pr->u.p.lb; 1956 incr = pr->u.p.st; 1977 pr->u.p.ordered_lower = init; 1978 pr->u.p.ordered_upper = limit; 1994 pr->u.p.tc = 0; 1995 *p_lb = pr->u.p.lb; 1996 *p_ub = pr->u.p.ub; 2003 *p_st = pr->u.p.st;projects/openmp/runtime/src/kmp_dispatch.h
350 lower = pr->u.p.ordered_lower;