What about using GPU's to speed up matrix math?
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
-
- Posts: 439
- Joined: Tue Apr 04, 2017 6:06 pm
- Location: SF Bay Area, California
What about using GPU's to speed up matrix math?
I don't know if this would be something a CAD package should have. GPU's for doing the heavy lifting of matrix math are used in machine learning/deep learning/neural networks to do hardware speed ups of matrix math. They are not even connected to video monitors and are used like floating point coprocessor chips from decades ago. Anyway, NVIDIA with it's CUDA API is a very popular choice. Would CAD packages like FreeCAD benefit from a hardware speed up of vector math or is this just going overboard?
Re: What about using GPU's to speed up matrix math?
Hello!
I don't think FC would benefit much from GPUs in general (in terms of speedup of main workbenches). In some commercial CAD systems mainly rendering modules use GPU (for example Dassault Systemes bought recently hybrid render ("keyshot-brother") and now it is called SW Visualize). There are few free and FOSS renderers that use GPU or even hybrid (GPU+CPU). This software might be used with FC.
More interesting are projects that use GPUs in FEM or CFD calculations. Professional (and expensive) CAE packages (like ANSYS) use GPU in computations - mainly in CFD area.
But there are some works to use GPU in Calculix. Right now I can't find the link of university which works on it, don't remember (but I wrote this link here on forum about 2 years ago). Here are some informations: https://www.openaircraft.com/calculix-extras/
Also in FOSS CFD, OpenFoam will have such possibility. Look at SpeedIT / SimFlow projects. For more info go to: http://gpgpu.org/tag/openfoam
I don't think FC would benefit much from GPUs in general (in terms of speedup of main workbenches). In some commercial CAD systems mainly rendering modules use GPU (for example Dassault Systemes bought recently hybrid render ("keyshot-brother") and now it is called SW Visualize). There are few free and FOSS renderers that use GPU or even hybrid (GPU+CPU). This software might be used with FC.
More interesting are projects that use GPUs in FEM or CFD calculations. Professional (and expensive) CAE packages (like ANSYS) use GPU in computations - mainly in CFD area.
But there are some works to use GPU in Calculix. Right now I can't find the link of university which works on it, don't remember (but I wrote this link here on forum about 2 years ago). Here are some informations: https://www.openaircraft.com/calculix-extras/
Also in FOSS CFD, OpenFoam will have such possibility. Look at SpeedIT / SimFlow projects. For more info go to: http://gpgpu.org/tag/openfoam
Re: What about using GPU's to speed up matrix math?
But there are some works to use GPU in Calculix. Right now I can't find the link of university which works on it, don't remember (but I wrote this link here on forum about 2 years ago). Here are some informations: https://www.openaircraft.com/calculix-extras/
Something for FEM workbench?bernd wrote:...
Re: What about using GPU's to speed up matrix math?
Yes, when Calculix get this functionality it will be "automatically" available in FC .Something for FEM workbench?
In my opinion this is difficult subject. I see that commercial CAD packages have problems with utilizing all CPU cores. They use multithreading "only" for Rendering, FEA/CFD and only few other tasks. From 3-4 years SW and, as far as I remember, Inventor use many cores for preparing 2D documentation.
In FC is one more problem, the solution for multithreading and/or using GPU must be cross-platform.
-
- Posts: 439
- Joined: Tue Apr 04, 2017 6:06 pm
- Location: SF Bay Area, California
Re: What about using GPU's to speed up matrix math?
Maybe looking at what the AI/deep learning packages are doing could help with implementation issues like threading. Torch 7 is one open source package. Facebook made public it's Cuda multithreading software for torch a couple years back.
Re: What about using GPU's to speed up matrix math?
How would you apply ML / AI to CAD software ? I think it would be nice if FC could use multi-core CPU. Now when you run a little bigger macro GUI of FC freezes for some time. But as someone here wrote it is impossible because of libraries used in this software.
( Tensor Flow (from Google) is FOSS from about two years. There are CPU and GPU versions for all major platforms ).
( Tensor Flow (from Google) is FOSS from about two years. There are CPU and GPU versions for all major platforms ).
-
- Posts: 439
- Joined: Tue Apr 04, 2017 6:06 pm
- Location: SF Bay Area, California
Re: What about using GPU's to speed up matrix math?
How I would apply deep learning to CAD is something I could tell you only after you signed an NDA.
Re: What about using GPU's to speed up matrix math?
Z88 has a GPU-Addon, may you can use it in FC, too? http://en.z88.de/z88aurora-gpu-addon/
- DeepSOIC
- Veteran
- Posts: 7896
- Joined: Fri Aug 29, 2014 12:45 am
- Location: used to be Saint-Petersburg, Russia
Re: What about using GPU's to speed up matrix math?
Oh, come on! NDA?! https://www.ted.com/talks/maurice_conti ... tuitive_aiMark Szlazak wrote:How I would apply deep learning to CAD is something I could tell you only after you signed an NDA.
Re: What about using GPU's to speed up matrix math?
Is it possible to use it e.g. for draft-array operations an parts.
Some time ago there was a discussion in the German forum about the long time for arrays (and maybe fuse) of PDN-bodies.
I experienced this also for PDN-transformations if the copies go into the hundreds.
Any chance that this could be accelerated with gpu- or multi-processing?
Br
Howil
Some time ago there was a discussion in the German forum about the long time for arrays (and maybe fuse) of PDN-bodies.
I experienced this also for PDN-transformations if the copies go into the hundreds.
Any chance that this could be accelerated with gpu- or multi-processing?
Br
Howil