ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Intel ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π²ΡΠΏΡΡΠΊ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° 3D-ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° OSPRay 2.0, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΡΡΠΈΡΠ½ΠΎΠΉ Π²ΡΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π»ΡΡΠ΅ΠΉ, ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
. ΠΠ²ΠΈΠΆΠΎΠΊ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Intel Rendering Framework, Π½Π°ΡΠ΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π°ΡΡΠ½ΡΡ
ΡΠ°ΡΡΡΡΠΎΠ² SDVis (Software Defined Visualization), Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π»ΡΡΠ΅ΠΉ Embree, ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΎΡΠΎΡΠ΅Π°Π»ΠΈΡΡΠΈΡΠ½ΠΎΠΉ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ GLuRay, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π΄Π»Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠΌΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡ
oidn (Open Image Denoise) ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ OpenSWR. ΠΠΎΠ΄ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘++ ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0.
OSPRay Π½Π°ΡΠ΅Π»Π΅Π½ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΠ΅Π½Ρ Π½Π° Π»Π΅ΡΡ. ΠΠ»Ρ ΡΠΈΠΌΡΠ»ΡΡΠΈΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΡΠΈ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π² ΠΎΠ±ΡΡΠΌΠ΅ ΠΈ Π½Π° ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ, ΡΠΎΡΠΎΡΠ΅Π°Π»ΠΈΡΡΠΈΡΠ½ΠΎΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠ΅ ΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΡΡΡΠΎΠΌ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ²ΠΎΠΉΡΡΠ² ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ², ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ Π·Π°ΡΠ΅Π½Π΅Π½ΠΈΡ (ΡΠ΅Π½ΠΈ, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ ΠΈ Π·Π°ΡΠ΅Π½Π΅Π½ΠΈΠ΅ «Ambient occlusion«).
OSPRay ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ CPU, Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°ΡΡΡ ΠΊ GPU, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π½Π° ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΏΠ΅ΠΊΡΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ², ΠΎΡ ΡΠ°Π±ΠΎΡΠΈΡ
ΡΡΠ°Π½ΡΠΈΠΉ Π΄ΠΎ ΡΠ·Π»ΠΎΠ² Π² Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠ΅ΡΠ°Ρ
. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΡ ΠΈ Π²Π΅ΠΊΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π½Π° Π±Π°Π·Π΅ SIMD-ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ Intel SSE4, AVX, AVX2, ΠΈ AVX-512 (Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ OSPRay ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° SSE4.1).
Π Π΅Π½Π΄Π΅ΡΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ·Π»ΠΎΠ² ΠΊΠ»Π°ΡΡΠ΅ΡΠ° (ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ MPI), ΡΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ OSPRay Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Ρ ΠΎΡΠ΅Π½Ρ Π²ΡΡΠΎΠΊΠΈΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Π²ΠΈΠ΄Π΅ΠΎΡΡΠ΅Π½Π°Ρ
, Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΡΠΎΡΡΡ
ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
LCD-ΠΏΠ°Π½Π΅Π»Π΅ΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π±ΠΎΡΠ° OSPRay ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π½Π° Π½Π° ΡΠΎΡΡΠ°Π²Π½ΠΎΠΌ ΡΠΊΡΠ°Π½Π΅ Stallion, ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΈΠ· 80 30-Π΄ΡΠΉΠΌΠΎΠ²ΡΡ
ΠΌΠΎΠ½ΠΈΡΠΎΡΠΎΠ² (ΠΎΠ±ΡΠ΅Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 40960×8000 ΠΈΠ»ΠΈ 328 ΠΌΠ΅Π³Π°ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ) ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠΌ ΠΈΠ· 40 ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Ρ 6-ΡΠ΄Π΅ΡΠ½ΡΠΌΠΈ CPU Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ Intel Sandy Bridge.
ΠΠ½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Π²Π΅ΡΡΠΈΠΈ ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ API, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Ρ Π²Π½Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°ΡΡΡΠ°ΡΡΠΈΡ
ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ (Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π½Π° Π½ΠΎΠ²ΡΠΉ API ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°-ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ°, ΡΠ³Π»Π°ΠΆΠΈΠ²Π°ΡΡΠ°Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ), ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΡΡ
Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠΈΠΏΠΎΠ². ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Open VKL (Open Volume Kernel Library) Π΄Π»Ρ ΠΎΠ±ΡΡΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π°. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π°Π²Π»Π΅Π½ΠΈΡ ΡΡΠΌΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ. Π ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π²ΡΠ½Π΅ΡΠ΅Π½Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ospcommon ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈ MPI.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru