#FluidX3D#CFD update alert! v2.15 speeds up framerate in interactive graphics by 20-70%. 🖖🥳💻
How? Turns out iterating over 2 million pixels with a single CPU core is... really slow. I did that 3 times more than necessary for every frame rendered on screen! 🖖😆
I've now eliminated a memory copy of the frame (in favor of pointer swap), and a clear frame/zbuffer operation on CPU since that's already done on #GPU.
One of my #PhD papers got selected for the 2022 Best Paper Award of MDPI Computation! 🖖🥳📃🏆
That was a very bold publication for multiple reasons:
I solo-authored it
I wrote that paper in only 2 weeks
the title contains "Esoteric" twice
I submitted it on April 1st
It's serious science though: I discovered a simple algorithm to cut memory demand of the #LBM in half, allowing huge simulations on cheap #GPUs. This is one of the key innovations in #FluidX3D#CFD.
How realistic can a #CFD simulation be? Here is a 1 billion cell #FluidX3D simulation of an impacting raindrop, fully raytraced in 8K. FluidX3D contains state-of-the-art volume-of-fluid and surface tension models for highly accurate free surface simulations. Combined with my own #OpenCL#raytracing engine, results are rendered on-the-fly at resolution as large as remaining #GPU VRAM can hold. 🖖😋💧📺 https://youtu.be/MmLNQIW_Sic
FluidX3D is on #GitHub: https://github.com/ProjectPhysX/FluidX3D
This is wild: #FluidX3D can "SLI" together 🔵 #Intel Arc A770 + 🟢 #Nvidia Titan Xp, pooling 12GB+12GB of their VRAM for one large 450M cell #CFD simulation. Top half on A770, bottom half on Titan Xp. They seamlessly communicate over PCIe. Performance is ~1.7x of what either #GPU could do on its own. 🖖😋🖥🔥 #OpenCL shows its true power here - one implementation works on literally all GPUs at full performance, even at the same time. Happy #SimulationFriday! https://youtu.be/PscbxGVs52o
My institution (#INGV) has a call open for an 18-month paid research internship (“assegno professionalizzante”) to work with and on #GPUSPH in the modeling of plastic transport by water waves. The call ends on January 18 and is available here:
Last few days (deadline: January 18) for this call for an 18-month paid research internship (“assegno professionalizzante”) at #INGV#OsservatorioEtneo in #Catania to work on the modelling of plastic transport by water waves:
And now I can finally say:
I had a review that took two weeks and a review that took two years.
In December 2021 we submitted a paper to PRL and while one reviewer loved it, the other didn't like it. Sadly there was not much hope to win against the comment, "I don't see why I should be very excited about this result ... which is needed in my eyes for a publication in PRL".
After admitting defeat, we send it to Phys Rev Fluids and I'm super happy that Prof. Howard Stone accepted it right away without sending it to further reviewers.
In the paper we discuss the dewetting instability of a thin liquid film on a switchable substrate. We actually found a cool metastable rivulet state.
So apparently there is almost no free software that does meshing for #CFD with good boundary layer support... I saw #engrid recommended a lot, which hasn't really been maintained since 2014 and was written for QT4. I managed to compile it! Let's see if I can make it work.
Oh wow this is weird. my #CFD list here on Mastodon suddenly has only one message. I checked the profile of some users I'm following that belong to the list (such as @ProjectPhysX ) and their messages aren't visible on their profile either —I had to load the most recent ones manually (copying the link from the original page), even though I could see them a few days ago. Did I miss some federation accident on this corner of the #Fediverse?
(cc @FrankSonntag)
#FluidX3D has passed 2000 Stars! It is the most popular #CFD software on #GitHub now! 🖖😊⭐️ https://github.com/ProjectPhysX/FluidX3D
Feeling blessed that my work is useful to so many people across the globe, with users in 75 countries already! 🌍
42% EU, 30% Americas, 25% Asia, 3% Oceania+Africa
The red lightning bolt continues: #FluidX3D has passed 3000 Stargazers on #GitHub - from 82 countries! 🖖🥳⭐
Releasing this software for free really has turned out win-win: I've received so much valuable feedback, and answered with as many bug fixes and updates, with many more to come. I am enabling cutting-edge #CFD simulations for everyone, with very little hardware resources, on literally every computer that has a #GPU, regardless of vendor.
👉 https://github.com/ProjectPhysX/FluidX3D #SimulationFriday#OpenCL
It's #SimulationFriday again! Here is a real time @FluidX3D#CFD simulation of a #Cessna 172, 20M cells, on my old Titan Xp Pascal #GPU. 33 lines of code for this setup.
For #FluidX3D v2.8 I'm improving composite geometries with moving parts, and I'm adding transparent rendering. https://youtu.be/Gd_MEHPecw0
Just got news that a manuscript we first submitted last year has been reject on the third round of reviews as being out of scope for the journal, although the editor mentions it could be brought into scope (why not major review then? but anyway).
This is frustrating, depressing, and wasteful, and not even the worst I've experienced in my #academicLife —at least the final decision was reached in less than a year this time.
On an (un)related topic, does anybody have recommendations on a journal whose primary scope is #HPC#scientificSoftware? Preference for #CFD, but more generalist recommendation are welcome too. This manuscript looking for a home is more focused on the actual code (programming strategies etc) than the physics, which makes it a poor fit for journals like CPC and JCP.
I'm going to present a work on numerical stability of the acoustic terms in #SPH, and as I'm finalizing the conference paper with some benchmarks, I've come across an interesting situation. The cornerstone of the work involves replacing a powf() function with a combination of exp1mf() and logp1f() for higher accuracy.
How much of a performance loss does this higher accuracy involve?
And here's where things get weird.
I found this drop in performance to be rather surprising. I've only tested this on a low-end AMD Ryzen, so I'm going to run some additional tests on other archs, but I really wonder what could be causing such a drop. (Increased register pressure would be my first guess.)
The problem is, I don't even want to spend that much time on the CPU backend, but at the same time, it's the more general on, we wouldn't want it to be unfairly penalized …