FluidX3D v3.7

FluidX3D 3.7 – ein Paket fĂŒr numerische Strömungsmechanik, das die Methode der Lattice-Boltzmann-Gleichungen (LBM) und OpenCL verwendet. Das Projekt wird als leistungsstarkes und speichereffizientes CFD-Paket positioniert, das auf GPUs und CPUs verschiedener Hersteller ĂŒber OpenCL arbeiten kann.

Die HauptĂ€nderung in Version 3.7 war die Optimierung des Rendering-Kerns fĂŒr die IsoflĂ€chen des Q-Kriteriums (graphics_q()), der zur Visualisierung von Wirbelstrukturen im Fluss verwendet wird. In der frĂŒheren Implementierung lud der Kern ein schweres Muster aus 32 dreidimensionalen Geschwindigkeiten fĂŒr jede Gitterzelle aus dem Videospeicher. Jetzt lĂ€dt eine Arbeitsgruppe von 8×8×8 Threads einen Block von 11×11×11 Geschwindigkeiten in 16 KB L1-Cache-Speicher, wonach benachbarte Threads diese Daten erneut verwenden. Laut dem Autor reduziert dies die Anzahl der LadevorgĂ€nge aus dem VRAM um etwa das 12-fache – auf 2,6 Geschwindigkeiten pro Zelle – und verwandelt den Kern von einem speicherbandbreitenlimitierten in einen rechenlimitierten Modus.

Der praktische Gewinn hÀngt von der spezifischen Hardware ab. Bei neuen GPUs mit einem fortschrittlichen Cache-System kann die manuelle Optimierung des lokalen Speichers kaum einen Anstieg bringen oder sogar die Bildrate leicht senken. Bei einigen Àlteren GPUs stellte der Autor eine Beschleunigung um das Doppelte fest, was insbesondere im interaktiven Grafikmodus von FluidX3D deutlich bemerkbar ist. Beispielsweise beschleunigte im veröffentlichten Test die NVIDIA Titan Xp von 7 auf 13 Bilder/s, Intel UHD 770 von 8 auf 14 Bilder/s in einem Modus und Intel Arc A750 von 22 auf 26 Bilder/s.

FĂŒr Ă€ltere integrierte GPUs ist ein automatischer RĂŒckfall auf die frĂŒhere Implementierung vorgesehen: Einige dieser GerĂ€te unterstĂŒtzen keine Arbeitsgruppen mit 512 Threads oder verfĂŒgen ĂŒber weniger als 16 KB lokalen L1-Speicher. In diesen FĂ€llen wird FluidX3D die alte Version des Kerns weiterhin verwenden, um die KompatibilitĂ€t zu gewĂ€hrleisten.

In dieser Version wurden auch die Bedingungen fĂŒr das VR-Rendering vereinfacht, die Schleifenentfaltung in der Rasterisierung deaktiviert, um „Spaghetti“ im Assembler-Ausgabe zu reduzieren, sowie Mikrooptimierungen in convert_triangle/_interpolated() hinzugefĂŒgt, und im OpenCL-Adapter wurde die Fehlerausgabe bei leerem Kernamen und ArbeitsgruppengrĂ¶ĂŸe korrigiert.

FluidX3D umfasst einen integrierten interaktiven 3D-Renderer, der es ermöglicht, Geschwindigkeitsfelder, Stromlinien, IsoplĂ€nen des Q-Kriteriums und Schnitte direkt wĂ€hrend der Berechnung zu visualisieren, ohne dass ein Export in ein separates Nachbearbeitungstool erforderlich ist. FluidX3D Das Projekt umfasst auch die UnterstĂŒtzung freier OberflĂ€chen, WĂ€rmeleitung, das Smagorinsky-Lilly-Turbulenzmodell, Partikelverfolgung, VTK-Export und den Betrieb mit mehreren GPUs.


Besonders hervorzuheben ist der Lizenzstatus: Der Quellcode von FluidX3D ist offen und auf GitHub verfĂŒgbar, jedoch die Lizenz des Projekts ist im strengen Sinne der Begriffe OSI/FSF nicht frei. Sie erlaubt die Nutzung fĂŒr öffentliche Forschungs-, Bildungs- und persönliche Zwecke, untersagt jedoch kommerzielle und militĂ€rische Anwendungen sowie das Training von KI-Modellen mit dem Quellcode.

Quelle: linux.org.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster