FluidX3D v3.7

FluidX3D 3.7 – csomag a számítástechnikai hidrodinamikához, amely a Boltzmann-hálózati egyenletek (LBM) módszerét és az OpenCL-t használja. A projektet egy nagy teljesítményű és memóriahatékony CFD-csomagnak pozicionálják, amely képes GPU-kon és CPU-kon működni különböző gyártóktól az OpenCL-en keresztül.

A 3.7-es verzió fő változása a Q-kritérium izo-felületének (graphics_q()) renderelő magjának optimalizálása, amelyet a vorticális struktúrák ábrázolására használnak az áramlásban. A korábbi megvalósításban a mag nehéz, 32 háromdimenziós sebességi sablonokból álló mintát töltött be a videomemóriából minden hálósejthez. Most egy 8×8×8 méretű munkacsoport 16 KB szintű lokális memóriában egy 11×11×11 sebességi blokkot tölt be, amelyet a szomszédos szálak újrahasználhatnak. Az író becslése szerint ez a VRAM-ból történő betöltések számát körülbelül 12-szer csökkenti – 2,6 sebességsejtre – és a magot a memória-átviteli sebesség korlátaitól a számítási korlátok irányába tereli.

A gyakorlati nyereség a konkrét berendezéstől függ. Az új GPU-kkal, amelyek fejlett gyorsítótárazással rendelkeznek, a helyi memória kézi optimalizálása szinte nem ad teljesítménynövekedést, sőt, néha csökkentheti a képkockasebességet. Néhány régi GPU-n az író akár kétszeres gyorsulást is észlelt, ami különösen észlelhető a FluidX3D interaktív grafikus módjában. Például a publikált tesztekben az NVIDIA Titan Xp 7-ről 13 képkockára/s gyorsult, az Intel UHD 770 pedig 8-ról 14 képkockára/s gyorsult egyik módban, míg az Intel Arc A750 22-ről 26 képkockára/s-ig terjedt.

Régi integrált GPU-k számára automatikus visszagörgetés van biztosítva a korábbi megvalósításra: az ilyen eszközök egy része nem támogatja az 512 szálas munkacsoportokat, vagy kevesebb mint 16 KB L1 lokális memóriával rendelkezik. Ezekben az esetekben a FluidX3D továbbra is az régi magváltozatot használja a kompatibilitás megőrzése érdekében.

Ebben a verzióban a VR-renderelés feltételei is egyszerűsödtek, le lett tiltva a ciklusok kicsomagolása a raszterizálás során, hogy csökkentsük az "spagetti" megjelenítést az assembler kimenetben, további mikrooptimalizálásokat adtak hozzá a convert_triangle/_interpolated() függvényhez, valamint az OpenCL adapterben javították az üres magnév és munkacsoport méretének hibajelzését.

A FluidX3D beépített interaktív 3D-renderelője lehetővé teszi a sebességi mezők, áramlási vonalak, Q-kritérium izopovársurfacek és szeletek megtekintését közvetlenül a számítás során, anélkül, hogy kötelező lenne a külön posztfeldolgozó eszközbe történő exportálás. FluidX3D A projektben a szabad felszínek, hőkonvekció, Smagorinsky-Lilly turbulencia-modellek, részecskekövetés, VTK exportálás és több GPU használatának támogatása is be van jelentve.


Érdemes megemlíteni a licenc státuszát: a FluidX3D forráskódja nyílt és elérhető a GitHubon, azonban a projekt licencája nem tekinthető szabadnak az OSI/FSF szigorú értelmében. Nyilvános kutatásokhoz, oktatáshoz és személyes célokra engedélyezi a használatot, de megtiltja a kereskedelmi és katonai alkalmazást, valamint az AI-modellek tanulmányozását a forráskódon.

Forrás: linux.org.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster