ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ MPI
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ MPI — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΡΠ²ΡΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΡΠ»ΡΠΆΠ±ΠΎΠΉ spmd. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ MPI ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (.h) ΠΈ ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (.Π°, .ΠΎ, .so Π΄Π»Ρ *NIX, .lib Π΄Π»Ρ Windows). ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ/ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ (Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ»ΡΠΆΠ±ΠΎΠΉ, ΡΡΠ΅Π±ΡΡΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ MPI (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠ±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠ° MPI ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ: Message passing interface (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ). ΠΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π² ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ Π΄Π΅-ΡΠ°ΠΊΡΠΎ [16, 17], ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΡΠ³ΠΎΠ½Π½ΡΠΊΠΎΠΉ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠΈΠ΅ΠΉ Π² Π‘Π¨Π ΠΈ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΡΡΠΌΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² MPIForum [18]. ΠΠ·Π²Π΅ΡΡΠ½Ρ ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ Π΄Π²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ° — 1.1 ΠΈ 2.0, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° MPI Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ (Windows, Linux, …) ΠΊΠ°ΠΊ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΡΡ , ΡΠ°ΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ . Π Π½Π°ΡΡΠΎΡΡΠ΅ΠΌ ΠΏΠΎΡΠΎΠ±ΠΈΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ MPICH, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΠΡΠ³ΠΎΠ½Π½ΡΠΊΠΎΠΉ Π½Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠΈΠ΅ΠΉ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ Π½Π° ΠΠ‘ Windows NT (ΠΈ Π²ΡΠ΅Ρ Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ ) ΠΈ Π½Π° Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ UNIX-ΡΠΈΡΡΠ΅ΠΌ. Π ΡΡΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ Π²Π΅ΡΡΠΈΠΈ 1.1 ΡΡΠ°Π½Π΄Π°ΡΡΠ° MPI ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²Π΅ΡΡΠΈΠΈ 2.0.
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° MPICH (Π±ΡΠΊΠ²Ρ Π‘Π ΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΡ ΡΠ»ΠΎΠ²Π° chameleon, ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡ) Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ:
- — Spmd Π΄Π΅ΠΌΠΎΠ½ (Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ *NIX), ΡΠ»ΡΠΆΠ±Ρ (Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ Windows). ΠΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ·Π»Π΅ ΡΠ΅ΡΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π·Π°ΠΏΡΡΠΊ/Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ MPI-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡΡ Π½Π° Π·Π°ΠΏΡΡΠΊ/ΠΎΡΡΠ°Π½ΠΎΠ² ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ Π·Π°ΠΏΡΠΎΡΡ ΠΎΡ ΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅. ΠΠ΄Π΅ΡΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½ «ΡΠ»ΡΠΆΠ±Π°».
- — ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ MPI — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΡΠ²ΡΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΡΠ»ΡΠΆΠ±ΠΎΠΉ spmd. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ MPI ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (.h) ΠΈ ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (.Π°, .ΠΎ, .so Π΄Π»Ρ *NIX, .lib Π΄Π»Ρ Windows).
- — Π£ΡΠΈΠ»ΠΈΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΏΡΡΠΊ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ΅Π΄Ρ ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ MPI. ΠΠ»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΈΠ»ΠΈΡΠ° MPIRun (Π² Windows — MPIexec, Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±Π»ΠΎΡΠΊΠΎΠΉ — WMPIexec). ΠΠ»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ MPI ΠΈ ΠΎΠΊΡΡΠΆΠ°ΡΡΠ΅ΠΉ ΡΡΠ΅Π΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ MPIConfig ΠΈ MPI Register.
- — ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΠ Π — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ±ΠΎΡ, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ Π²Π΅ΡΠ²Π΅ΠΉ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ΅ MPI, Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎ:
- — Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ°ΠΉΠ» mpich2−1.3.2pl-win-ia32.rnsi);
- — ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ/ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ (Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ»ΡΠΆΠ±ΠΎΠΉ, ΡΡΠ΅Π±ΡΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·Π»Π°Ρ ΡΠ΅ΡΠΈ);
- — ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ»ΡΠΆΠ±Ρ spmd ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΠ 1-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ MpiExec. exe ΠΈ WMpiExec. exe, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ — Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ (Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π²Π΅ΡΡΠΈΡΡ ΠΠ‘ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠΎΠΌ Π²ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ);
- — ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ «ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ» Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠ° Π²ΡΠΊΠ»ΡΡΠ΅Π½Π° ΠΎΠΏΡΠΈΡ «ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ»;
- — ΡΠΎΠ·Π΄Π°ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² ΡΠ΅ΡΠΈ ΠΎΠ±ΡΠΈΠΉ (share) ΡΠ΅ΡΡΡΡ Ρ ΠΏΠΎΠ»Π½ΡΠΌΠΈ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ° Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠ½ΠΊΡΠ° (Π²Π΅ΡΠ²ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ·Π»Π΅ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΡΡΡΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΡΡΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠ΅ΡΡΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π²ΡΡΡΠ½ΡΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠΎΠΆΠ΄Π΅ΡΡΠ²ΠΎ ΠΏΡΡΠ΅ΠΉ ΠΊ Π½Π΅ΠΉ Π²ΠΎ Π²ΡΠ΅ΠΉ ΡΠ΅ΡΠΈ);
- — Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠΈΠ»ΠΈΡΡ MPIRegister. exe ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΡΠΈΠΌ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠΈΠ»ΠΈΡΡ MpiConfig. exe ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Ρ Π΅Π΅ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ², Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ°ΠΆΠ΄ΡΡ ΡΠ°ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΡΡΡΡ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄Ρ MS Visual Studio Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΠΊ Π·Π°ΠΏΡΡΠΊΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ MS Visual Studio. Π ΠΏΡΠ½ΠΊΡΠ΅ ΠΌΠ΅Π½Ρ «Options/Tools/Projects and Solutions/VC++ Directories» Π²ΡΠ±ΡΠ°ΡΡ Π² ΠΏΠΎΠ»Π΅ «Show directories for:» ΠΏΡΠ½ΠΊΡ «Include files», ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ΅ Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ, ΠΏΠΎΡΠΎΠΌ ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ΅ «…» ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΠΏΡΡΡ «…/Program filcs/MPICH2/include». Π ΠΏΡΠ½ΠΊΡΠ΅ ΠΌΠ΅Π½Ρ «Options/Tools/Projects and Solutions/VC-Π½Directories» Π²ΡΠ±ΡΠ°ΡΡ Π² ΠΏΠΎΠ»Π΅ «Show directories for:» ΠΏΡΠ½ΠΊΡ «Library files», ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ΅ Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ, ΠΏΠΎΡΠΎΠΌ ΠΏΠΎ ΠΈΠΊΠΎΠ½ΠΊΠ΅ ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΠΏΡΡΡ «…/Program files/MPICH2/lib». Π©Π΅Π»ΠΊΠ½ΡΡΡ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ «ΠΠΊ». ΠΠ°ΠΊΡΡΡΡ MS Visual Studio.