[1] Times by cuda https://developer.nvidia.com/blog/how-implement-performance-metrics-cuda-cc/
[2] GPU Code https://http.download.nvidia.com/developer/GPU_Gems/CD_Image/Index.html
[3] Fluid in GPU theory https://developer.nvidia.com/gpugems/gpugems/part-vi-beyond-triangles/chapter-38-fast-fluid-dynamics-simulation-gpu
[4] GPU Computing
https://researchcomputing.princeton.edu/support/knowledge-base/gpu-computing Cards [1] Guide https://www.nvidia.com/content/geforce-gtx/GEFORCE_RTX_2070_SUPER_User_Guide.pdf
[2] RTX 2070 Techinal summary https://www.techpowerup.com/gpu-specs/geforce-rtx-2070-super.c3440
Important notes
* CUDA technology is
developed by NVIDIA, and it is primarily designed to work with NVIDIA
GPUs. CUDA is a parallel computing platform and application programming
interface model that allows developers to use NVIDIA GPUs for
general-purpose processing.
AMD has its own equivalent technology
called OpenCL (Open Computing Language), which is an open standard for
parallel programming of heterogeneous systems. OpenCL is not specific to
AMD; it is supported by various vendors, including AMD, Intel, and
others.
If you have an AMD GPU and want to leverage its parallel
processing capabilities, you would typically use OpenCL rather than
CUDA. However, it's important to note that not all software applications
support both CUDA and OpenCL. The level of support depends on how the
software was developed.
* CUDA technology is specific to NVIDIA GPUs (Graphics Processing
Units), and it cannot be used with AMD GPUs. CUDA (Compute Unified
Device Architecture) is a parallel computing platform and programming
model developed by NVIDIA for their GPUs. It includes a programming
interface and software development kit (SDK) for general-purpose
computing on NVIDIA GPUs.
On the other hand, AMD uses a different
technology called OpenCL (Open Computing Language) for parallel
computing across CPUs, GPUs, and other processors. OpenCL is an open
standard maintained by the Khronos Group, and it is designed to be
vendor-neutral, allowing developers to write code that can run on
different hardware platforms, including AMD GPUs. For getting
information about CAD Drafting and designing visit CAD Drafter.
If
you have an AMD GPU and you are looking to perform GPU-accelerated
computing, you would generally use OpenCL or other AMD-specific
technologies like ROCm (Radeon Open Compute). CUDA-based applications
are not compatible with AMD GPUs, and vice versa.
It's worth
noting that some software applications and libraries support both CUDA
and OpenCL, allowing users to choose between NVIDIA and AMD GPUs.
However, the underlying GPU-specific code would need to be implemented
separately for CUDA and OpenCL.
* in 2024 it is possible to run CUDA code in AMD GPUs
https://github.com/vosen/ZLUDA
* Is CUDA faster than MPI?
CUDA is fast, but only if your do a lot of parallel processing on matrices.
CUDA can be very fast, but for some kind of applications. Data transfer
in CUDA is often the bottleneck. MPI is suitable for cluster
environment and large scale network of computers.
References
[1] NVidia Pascal
https://wccftech.com/nvidia-pascal-gpu-gtc-2015/[2] https://community.amd.com/t5/ai-discussions/is-it-possible-to-use-cuda-technology-with-amd/td-p/643124