ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Бписок ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (copyprivatefcnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… послС выполнСния структурного Π±Π»ΠΎΠΊΠ°, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ single, Π±ΡƒΠ΄ΡƒΡ‚ занСсСны Π²ΠΎ Π²ΡΠ΅ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Π΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (private ΠΈ flrstprivate), Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ для ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ сСкции; эта опция Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ совмСстно с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ nowait; ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ списка Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ пСрСчислСны Π² ΠΎΠΏΡ†ΠΈΡΡ… private ΠΈ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

3.2.1. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° задания ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ выполняСмой сСкции:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΡ†ΠΈΠΉ этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ:

  • — Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ количСство ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΏ (ΠΏΠΈΡ‚ threads (ΠΏ));
  • — ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ создаСтся (if (условиС));
  • — ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… для всСх ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½ΠΎΠΉ сСкции (shared (cnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…));
  • — ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ сСкции (privatefcnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ значСния Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹;
  • — ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ сСкции (firstprivate (cnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄ΡƒΡ‚ установлСны значСния ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°;

— ΡΠΏΠΎΡΠΎΠ± назначСния класса памяти default (shared one) всСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ класс Π½Π΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ явно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΡ†ΠΈΠΈ shared (слово ΠΏΠΎΠΏΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ класс памяти всСх Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… пСрСмснных Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½ явно); Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡΡ… для языка Fortran ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒΡΡ классы private ΠΈ firstprivate;

  • — ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ threadprivate (см. Π½ΠΈΠΆΠ΅), значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ области ΠΈ Π²ΠΎΡΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ…ΠΎΠ΄Π° Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ;
  • — ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ свСдСния ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… reductionfone-

Ρ€Π°Ρ‚ΠΎΡ€: список ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…); для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅; Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ соотвСтствСнно Ρ‚ΠΈΠΏΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° (для Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ноль ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈ, для ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π΅Π΄ΠΈΠ½ΠΈΡ†Π° ΠΈΠ»ΠΈ сс Π°Π½Π°Π»ΠΎΠ³ΠΈ); Π½Π°Π΄ всСми Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ копиями ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ сСкции Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ свСдСния, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ занСсСны Π² ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅; Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ: +, *, &, |,.

Π›, &&, ||.

3.2.2. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° опрСдСлСния Ρ†ΠΈΠΊΠ»Π°, ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ выполняСмыми ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΡ†ΠΈΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ for ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ:

— ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ сСкции (private (список ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ значСния Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹;

список ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅ сСкции (Jirstprivate (cnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π±ΡƒΠ΄ΡƒΡ‚ установлСны значСния ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°;

— ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° (lastprivatefcnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ присвоСны значСния, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ послСднСй ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π°;

ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ свСдСния ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… reduct ion (onepaΡ‚ΠΎΡ€: список ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)', для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ΅; Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ соотвСтствСнно Ρ‚ΠΈΠΏΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° (для Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ — ноль ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈ, для ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ — Π΅Π΄ΠΈΠ½ΠΈΡ†Π° ΠΈΠ»ΠΈ Π΅Ρ‘ Π°Π½Π°Π»ΠΎΠ³ΠΈ); Π½Π°Π΄ всСми Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ копиями ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ сСкции Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ свСдСния, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ занСсСны Π² ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅; Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ: +,.

*,&, |, &&, ||;

  • — ΡΠΏΠΎΡΠΎΠ± распрСдСлСния ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ†ΠΈΠΊΠ»Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ сСкции (schedule (type[chunk])); ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ chunk этой ΠΎΠΏΡ†ΠΈΠΈ опрСдСляСт количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡ‚ΠΎΠΊ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1), ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ type ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ распрСдСлСния ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ значСния: static — статичСский, Ρ‚. Π΅. ΠΏΡ€ΠΈ компиляции, dynamic — динамичСский, Ρ‚. Π΅. ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ, guided — динамичСский с ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ΠΌ количСства ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ, опрСдСляСмого автоматичСски, Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ chunk, auto — способ распрСдСлСния выбираСтся компилятором ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉ систСмой, runtime — способ распрСдСлСния задаСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы;
  • — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ (опция ordered) появлСния Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ordered, которая Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ исполнСния ΠΎΡ…Π²Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Сю Π±Π»ΠΎΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Ρ‚ΠΎΡ‡Π½ΠΎ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, какая рСализуСтся Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсии Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°;
  • — ΠΎΡ‚ΠΌΠ΅Π½Ρƒ (nowait) нСявной Π±Π°Ρ€ΡŒΠ΅Ρ€Π½ΠΎΠΉ синхронизации ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Π΄ΠΎΡΡ‚ΠΈΠ³ΡˆΠΈΡ… ΠΊΠΎΠ½Ρ†Π° выполнСния своСй части ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ†ΠΈΠΊΠ»Π° (ΠΏΡ€ΠΈ отсутствии этой ΠΎΠΏΡ†ΠΈΠΈ участок ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ послС Ρ†ΠΈΠΊΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° всС ΠΏΠΎΡ‚ΠΎΠΊΠΈ выполнят всС свои ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ);
  • — Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ ΠΏ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π° Ρ†ΠΈΠΊΠ»ΠΎΠ² (collapse (n)), пространство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ‚ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ (доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ 2.5 Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠžΡ€ΡΠΏΠœΠ );

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ parallel ΠΈ for ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Π² ΠΎΠ΄Π½Ρƒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ parallel, Ρ‚Π°ΠΊ ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹.

for:

Upragma ΠΎΡ‚Ρ€ parallel for [опция1 [, опция _2, …]]

3.2.3. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ исполнСния ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Сю ΡƒΡ‡Π°ΡΡ‚ΠΊΠ° ΠΊΠΎΠ΄Π° (части Ρ‚Π΅Π»Π° Ρ†ΠΈΠΊΠ»Π°) Π² Ρ‚ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся Π² Ρ‡ΠΈΡΡ‚ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

3.2.4. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° задания области нСцикличСского ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° (участки структурного Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ, Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ описываСмой Π΄Π°Π»Π΅Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ section):

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΡ†ΠΈΠΉ этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ private, firstprivate, lastprivate, reduction ΠΈ nowait, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ Π² Ρ‚очности Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ синтаксис ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ смысл, Ρ‡Ρ‚ΠΎ ΠΈ Ρƒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ for.

3.2.5. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° опрСдСлСния участка нСцикличСского ΠΊΠΎΠ΄Π° для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ участка ΠΊΠΎΠ΄Π°, ΠΎΡ…Π²Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ sections, Π²Ρ‹Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ для исполнСния ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ. ΠŸΠ΅Ρ€Π΅Π΄ самым ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠΌ участка нСцикличСского ΠΊΠΎΠ΄Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ section ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ.

3.2.6. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° объявлСния списка Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π­Ρ‚Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° позволяСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ для статичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… языка C/C++ (ΠΈ COMMON-Π±Π»ΠΎΠΊΠΎΠ² языка Π€ΠΎΡ€Ρ‚Ρ€Π°Π½), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ.

3.2.7. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° создания ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ нСзависимой Π·Π°Π΄Π°Ρ‡ΠΈ (начиная с Π²Π΅Ρ€ΡΠΈΠΈ 2.5 ΠžΡ€Π΅ΠΏΠœΠ ):

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠΎΡ‚ΠΎΠΊ создаСт Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ ассоциированный с Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ Π±Π»ΠΎΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π­Ρ‚Π° Π·Π°Π΄Π°Ρ‡Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ послС создания ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π½Π° Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ врСмя ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ Ρ‡Π°ΡΡ‚ям. Π Π°Π·ΠΌΠ΅Ρ€ Ρ‚Π°ΠΊΠΈΡ… частСй, Π° Ρ‚Π°ΠΊΠΆΠ΅ порядок выполнСния частСй Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ опрСдСляСтся Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠžΡ€Π΅ΠΏΠœΠ .

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ:

  • — if default, private, firstprivate ΠΈ shared — ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ синтаксис ΠΈ ΡΠΌΡ‹ΡΠ», ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ…;
  • — untied — ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² ΡΠ»ΡƒΡ‡Π°Π΅ откладывания Π·Π°Π΄Π°Ρ‡Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΈΠ· Ρ‡ΠΈΡΠ»Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½ΡƒΡŽ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ; Ссли данная опция Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π°, Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ²ΡˆΠΈΠΌ сё ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ;
  • 3.2.8. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° оТидания ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ всСх нСзависимых Π·Π°Π΄Π°Ρ‡, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

3.2.9. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ исполнСния ΠΎΡ…Π²Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Сю ΡƒΡ‡Π°ΡΡ‚ΠΊΠ° ΠΊΠΎΠ΄Π° Π² Ρ‚очности ΠΎΠ΄Π½ΠΈΠΌ (Π»ΡŽΠ±Ρ‹ΠΌ) ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

ΠžΠΏΡ†ΠΈΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ:

списки ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… private ΠΈ flrstprivate, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ синтаксис ΠΈ ΡΠ΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΡƒ, ΠΊΠ°ΠΊ Π² Ρ€Π°Π½Π΅Π΅ описанных Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ…;

список ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (copyprivatefcnucoK ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)), значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… послС выполнСния структурного Π±Π»ΠΎΠΊΠ°, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ single, Π±ΡƒΠ΄ΡƒΡ‚ занСсСны Π²ΠΎ Π²ΡΠ΅ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹Π΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (private ΠΈ flrstprivate), Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ для ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ сСкции; эта опция Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ совмСстно с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ nowait; ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ списка Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ пСрСчислСны Π² ΠΎΠΏΡ†ΠΈΡΡ… private ΠΈ flrstprivate Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ single;

ΠΎΡ‚ΠΌΠ΅Π½Ρƒ (nowait) нСявной Π±Π°Ρ€ΡŒΠ΅Ρ€Π½ΠΎΠΉ синхронизации ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Π΄ΠΎΡΡ‚ΠΈΠ³ΡˆΠΈΡ… Ρ‚ΠΎΡ‡ΠΊΠΈ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π·Π° Π±Π»ΠΎΠΊΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΎΡ…Π²Π°Ρ‡Π΅Π½Π½Ρ‹ΠΌ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ single; ΠΏΡ€ΠΈ отсутствии этой ΠΎΠΏΡ†ΠΈΠΈ такая синхронизация выполняСтся.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ исполнСния ΠΎΡ…Π²Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Сю ΡƒΡ‡Π°ΡΡ‚ΠΊΠ° ΠΊΠΎΠ΄Π° Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Π­Ρ‚ΠΎΡ‚ структурный Π±Π»ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ просто ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹ΠΉ участок ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, располоТСнного слСдом Π·Π° Π½ΠΈΠΌ. НСявной синхронизации данная Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚.

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎΡΡ‚ΡŒ всСх ΠΎΠΏΡ†ΠΈΠΉ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ… ΠžΡ€Π΅ΠΏΠœΠ  ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

3.2.11. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° явной Π±Π°Ρ€ΡŒΠ΅Ρ€Π½ΠΎΠΉ синхронизации:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

ΠŸΠΎΡ‚ΠΎΠΊΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΠ΅ΠΊΡ†ΠΈΡŽ, дойдя Π΄ΠΎ ΡΡ‚ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹, ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈ ΠΆΠ΄ΡƒΡ‚, ΠΏΠΎΠΊΠ° всС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π½Π΅ Π΄ΠΎΠΉΠ΄ΡƒΡ‚ Π΄ΠΎ ΡΡ‚ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, послС Ρ‡Π΅Π³ΠΎ Ρ€Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ дальшС. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, для Ρ€Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС синхронизируСмыС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»ΠΈ всС ΠΏΠΎΡ€ΠΎΠΆΠ΄Ρ‘Π½Π½Ρ‹Π΅ ΠΈΠΌΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ (Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ task ΠΈ taskwait).

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠΏΡ†ΠΈΠΉ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°Ρ….

ΠžΠΏΡ†ΠΈΠΈ.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹.

parallel.

for.

sections.

single.

parallel.

for.

parallel.

sections.

if.

X.

X.

X.

private.

X.

X.

X.

X.

X.

X.

firstprivate.

X.

X.

X.

X.

X.

X.

lastprivate.

X.

X.

X.

X.

copyprivate.

X.

copyin.

X.

X.

X.

shared.

X.

X.

X.

default.

X.

X.

X.

reduction.

X.

X.

X.

X.

X.

schedule.

X.

X.

ordered.

X.

X.

nowait.

X.

X.

X.

collapse.

X.

X.

3.2.12. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°, ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‰Π°Ρ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΠ΅ΠΊΡ†ΠΈΡŽ — участок ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ области ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅Π΄ΠΈΠ½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Если критичСская сСкция ΡƒΠΆΠ΅ выполняСтся ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ, Ρ‚ΠΎ Π²ΡΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ²ΡˆΠΈΠ΅ эту Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ для сСкции с Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, ΠΏΠΎΠΊΠ° вошСдший Π² ΡΠ΅ΠΊΡ†ΠΈΡŽ ΠΏΠΎΡ‚ΠΎΠΊ Π½Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²ΠΎΠΉΠ΄Π΅Ρ‚ Π² ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΠ΅ΠΊΡ†ΠΈΡŽ. Если Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π² ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΠ΅ΠΊΡ†ΠΈΡŽ стояло нСсколько ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Ρ‚ΠΎ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ выбираСтся ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ…, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅.

ВсС Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ критичСскиС сСкции условно Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΡƒΡŽΡ‚ΡΡ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ВсС критичСскиС сСкции, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠΆΠ΅ имя, Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄Π½Π° сСкция, Π΄Π°ΠΆΠ΅ Ссли находятся Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… областях. ΠŸΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Ρ‹ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Ρ‹ ΠΈΠ· ΠΊΡ€ΠΈΡ‚ичСской сСкции Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹.

3.2.13. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ доступа ΠΊ ΠΎΠ±Ρ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ· Π»Π΅Π²ΠΎΠΉ части ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° присваивания Π½Π° Π²Ρ€Π΅ΠΌΡ выполнСния всСх дСйствий с ΡΡ‚ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

Атомарной (Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²) являСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ· Π»Π΅Π²ΠΎΠΉ части ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° присваивания, ΠΏΡ€ΠΈ этом вычислСния Π² Π΅Π³ΠΎ ΠΏΡ€Π°Π²ΠΎΠΉ части, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π½Π΅ ΠΎΠ±ΡΠ·Π°Π½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹ΠΌΠΈ.

3.2.13. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠ°:

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² ΠžΡ€Π΅nМР.

ЗначСния всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, Ссли ΠΎΠ½ Π·Π°Π΄Π°Π½), Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ хранящиСся Π² Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ… ΠΈ ΠΊΡΡˆ-памяти Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°, заносятся Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ; ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, всС измСнСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, сдСланныС ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹, станут Π²ΠΈΠ΄ΠΈΠΌΡ‹ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ; Ссли какая-Ρ‚ΠΎ информация хранится Π² Π±ΡƒΡ„Π΅Ρ€Π°Ρ… Π²Ρ‹Π²ΠΎΠ΄Π°, Ρ‚ΠΎ Π±ΡƒΡ„Π΅Ρ€Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½Ρ‹ Π½Π° Π²Π½Π΅ΡˆΠ½ΠΈΠ΅ носитСли ΠΈ Ρ‚. ΠΏ. Π­Ρ‚ΠΈ дСйствия производятся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ²ΡˆΠ΅Π³ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ°, Π° Π΄Π°Π½Π½Ρ‹Π΅, измСнявшиСся Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ, нс Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‚ΡΡ. Π”ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ этих дСйствий Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ flush ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ flush Π±Π΅Π· списка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы. Если Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½ΡƒΠΆΠ½Π° гарантия согласованного прСдставлСния Π½Π΅ Π²ΡΠ΅Ρ…, Π° Π»ΠΈΡˆΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡ… ΡΠ»Π΅Π΄ΡƒΠ΅Ρ‚ явно ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ списком.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅:

OMPNUMTHREADS — количСство ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ области.

OMPNESTED — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… областСй.

OMP MAX ACTIVE LEVELS — максимальная Π³Π»ΡƒΠ±ΠΈΠ½Π° влоТСнности ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… областСй.

OMPDYNAMIC — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ динамичСского опрСдСлСния количСства ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² (ΠΈΠΌΠ΅Π΅Ρ‚ больший ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ρ‡Π΅ΠΌ OMPNUMTHREADS).

OMPTHREADLIMIT — максимальноС количСство ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

OMPSCHEDULE — способ распрСдСлСния ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ†ΠΈΠΊΠ»Π° для значСния runtime ΠΎΠΏΡ†ΠΈΠΈ schedule Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ for.

OMP_STACKSIZE — Ρ€Π°Π·ΠΌΠ΅Ρ€ стСка ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°. OMPWAITPOLICY — Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΠΊΠ²Π°Π½Ρ‚Ρ‹ процСссорного Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΆΠ΄ΡƒΡ‰ΠΈΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ