GPU / GPGPU progamming links / SuperComputing at your fingertips
Supercomputing? For sure: as of November 2004, the Cray X1 had a maximum measured performance of 5.9 teraflops, today Nvidia Turing delivers 16Tflops
( What is GPU Computing? )
OpenCL is an open general-purpose GPU computing language. It
is an open standard defined by the Khronos Group. OpenCL provides a
cross-platform GPGPU platform that additionally supports data parallel compute
on CPUs. OpenCL is supported on Intel, AMD, Nvidia, and ARM platforms. The
Khronos Group is currently involved in the development of SYCL, which has its
implementations with ComputeCPP and SYCL STL.
A proprietary framework is Nvidia CUDA. Nvidia started CUDA in 2006, a software development kit (SDK) and application programming interface (API) that allows using the programming language C to code algorithms for execution on GeForce 8 series and later GPUs.
Close to Metal, later called Stream, is AMD's GPGPU technology for ATI Radeon-based GPUs. AMD Stream SDK, was released under AMD EULA in December 2007 after the software stack was rewritten. Stream SDK provides high-level in addition to low-level tools for general-purpose access to AMD graphics hardware. Using GPUs to perform computations holds a lot of potential for some applications because of the fundamental differences of GPU microarchitectures compared to CPUs. GPUs achieve much greater throughput (calculations per second) by executing many programs in parallel and restricting flow control (the ability of one program to execute instructions independently of another). Modern GPUs also have addressable on-die memory and extremely high performance multi-channel external memory. AMD subsequently switched from CTM to OpenCL.
GPU-Gems Part I http://developer.nvidia.com/content/gpu-gems-part-i-natural-effects
Pharr, M.: GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation. Addison-Wesley, Boston, MA, 2005 or http://http.developer.nvidia.com/GPUGems2/gpugems2_part01.html or http://www.addison-wesley.de
Nguyen, H.: GPU Gems 3: Programming Techniques for High-Performance Graphics and General-Purpose Computation. Addison-Wesley, Boston, MA, 2007 or http://www.addison-wesley.de or http://http.developer.nvidia.com/GPUGems3/gpugems3_part01.html
Some pdf- articles stored locally:
GPU CLUSTER COMPUTING FOR MULTIGRID-FEM SOLVERS WITH APPLICATIONS IN CFD
GPU Simulation and Rendering of Volumetric Effects for Computer Games and Virtual Environments
Higher order FEM numerical integration on GPUs with OpenCL
Implicit FEM and Fluid Coupling on GPU for Interactive Multiphysics Simulation
Fluid–solid coupling on a cluster of GPU graphics cards for seismic wave propagation
Fast seismic modeling and reverse time migration on a GPU cluster
GPU Cluster Computing For Multigrid FEM-Solvers... (abstract)
Assembly of Finite Element Methods on Graphics Processors
Towards a complete FEM-based simulation toolkit on GPUs: Geometric Multigrid solvers see also:
Towards a complete FEM-based simulation toolkit on GPUs: Geometric Multigrid solvers(2)
Finite Element Multigrid Solvers for PDE Problems on GPUs and GPU Clusters Part 2: Applications on GPU Clusters
Exploring weak scalability for FEM calculations on a GPU-enhanced cluster
Accelerating Double Precision FEM Simulations with GPUs
Analyzing CUDA Workloads Using a Detailed GPU Simulator
Automated Finite Element Computations in the FEniCS Framework using GPUs
GPU Cluster Computing for Finite Element Applications
Finite Element Integration on GPUs
Efficient Implementation of Finite Element Operators on GPUs
Massively Parallel Micromagnetic FEM Calculations with Graphical Processing Units (GPUs)
Making Faster FEM Solvers, Faster
General Purpose Computation On Graphics Processing Units
texts in german:
GPU-basierte Verfahren zur interaktiven Simulation und Darstellung von Fluid-Effekten
Implementierung von FEMMethoden auf programmierbaren Grafikkarten
auf der GPU Von Alexander Kubias
A litle bit older (SOFA see below):
Efficient nonlinear FEM for soft tissue modelling and its GPU implementation within the open source framework SOFA
NVIDIA CUDA (Compute Unified Device Architecture), Nvidia's GPGPU technology for Nvidia GeForce-, Quadro- and Tesla-based GPUs (NVIDIA CUDA german)
Nvidia CUDA Programming Guide for CUDA Toolkit 3.2
Nvidia Developer Web Site
Nvidia Development Whitepapers and Presentations
Nvidia developer resources page
NVIDIA GPU Computing Developer Home Page
Nvidia Free GPU Computing Online Seminars
GEFORCE RTX 2080T, NVIDIA TITAN XP
Nvidia Turing delivers 16Tflops (RTX 2080 Ti 14,2Tflops, same as Radeon VII 13,8Tflops, As of November 2004, the Cray X1 had a maximum measured performance of 5.9 teraflops). It features RT Cores to accelerate ray tracing and new Tensor Cores for AI inference. The cards are optimized for ray tracing. For the first time they make real-time ray tracing possible.
Stream, AMD/ATI's GPGPU technology for ATI Radeon-based GPUs
RADEON PRO DUO, RADEON VEGA FRONTIER LIQUID, Radeon VII
AMD Open64 SDK
Which grafics card to choose - a "best" card does not exist. You got to choose - all or high end or price performance (G3D Mark / $Price)
There are descriptions in the net how to flash a 465 to a 470 (not for the faint at heart - do a back up first, not all cards can flash to a 470!) german description
test your gpu:
GPU Caps Viewer see also here
rodinia (linux) description
Mflops/Gigaflops benchmark (windows/linux)
A SuperComputer at your fingertips? !!!
http://atlasfolding.com/?page_id=148 GPU-Supercomputer mit 30 TFLOPS(german)
SuperComputer with the same performance as a supercomputer cluster consisting of hundreds of PCs
http://www.geek.com/articles/chips/new-fastest-supercomputer-uses-7168-nvidia-gpus-14336-intel-cpus-20101028/ Chinese supercomputer
DirectCompute Microsoft's GPU Computing API - Initially released with the DirectX 11 API
Microsoft DirectX / DirectCompute or http://www.microsoft.com/games/en-en/aboutgfw/pages/directx.aspx or
http://www.nvidia.com/object/cuda_directcompute.html or http://www.nvidia.de/object/directcompute_de.html or http://developer.nvidia.com/category/zone/cuda-zone
Microsoft Parallel Computing Developer Center or here: http://msdn.microsoft.com/en-en/concurrency/default
Intel OpenCL SDK (Windows 7 32/64) or http://software.intel.com/en-us/articles/intel-opencl-sdk
Intel C/C++ Compiler
OpenCL (Open Computing
Language) cross platform GPGPU language for GPUs
(AMD/ATI/Nvidia) and general purpose CPUs
Apple's GPU utilization introduced in Mac OS X v10.6 ‘Snow Leopard’
Adventures in OpenCL: Part 1, Getting Started
Adventures in OpenCL: Part 1.5, C++ Bindings
Adventures in OpenCL Part 2: Particles with OpenGL
Brown Deer Technology: OpenCL Tutorial: N-Body Simulation.
Barnes-Hut OpenCL GPU N-body simulation.
N-body Simulations On GPU Clusters
OpenCL Programming Guide
OpenCL Quick Reference Card
OpenCV / GpuCV see also: http://opencv.willowgarage.com/wiki
OpenCV / GpuCV links and downl. here
OpenGL and OpenCL Debugger
Open MPI: Open Source High Performance Computing.
OpenMP.org: OpenMP Application Program Interface. Version 3.0, May 2008. pdf: http://www.openmp.org/mp-documents/spec30.pdfBrookGPU is the Stanford University Graphics group's compiler and runtime implementation of the Brook stream programming language. See also here.
GPU Floating-Point Paranoia
Salome pre- & postprocessor
GMV GMV is no longer available for free and is being commercialized.
Tecplot not free, site licence
VTK The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing and visualization.
VTKEdge library of advanced visualization and data processing techniques that complement the Visualization Toolkit.
ParaView is an open-source, multi-platform data analysis and visualization application.
Visit VisIt is a free interactive parallel visualization and graphical analysis tool for viewing scientific data on Unix and PC platforms
GeoMesh (131 KB). simple mesh generator
GenMesh (190 KB) more general mesh generator.
Casca mesh generator (no more avail ? manual here). The casca program can be used to make a general finite element mesh. This can then be read into Geocrack2D.
Netgen is a multi-platform automatic mesh generation tool written in C++ capable of generating meshes in two and three dimensions. The program is open source
Tetgen Open source code for generating tetrahedral meshes. Volume mesh created from surface meshes.
Gmsh: a three-dimensional
finite element mesh generator with built-in pre- and post-processing facilities
LaGriT is a library of user callable tools that provide mesh generation, mesh optimization and dynamic mesh maintenance.
List of mesh generators (public domain and comerc.) Another one.
CUBIT (free for governmental use, else comercial) http://www.csimsoft.com/
OpenCTM (last Upd 2010-01-15) OpenCTM is a file format, a software library and a tool set for compression of 3D triangle meshes. The geometry is compressed to a fraction of comparable file formats (3DS, STL, COLLADA...), and the format is accessible through a simple, portable API
Some converters may stll be useful on the old ASME/Mecheng website README, FTP, short description of files
Physics Engines: (most open source)
Box2d on Googlecode: http://code.google.com/p/box2d/
jME Physics System Java engine
Pal (physics abstraction layer) http://www.adrianboeing.com/pal/index.html see also: Open Physics Abstraction Layer
SOFA (see above)
Tokamak http://www.tokamakphysics.com/ or on sf: http://sourceforge.net/projects/tokamakp/
no engine, but..
GPU Computing Gems Emerald Edition (Applications of GPU Computing Series) by
Wen-mei W. Hwu Hardcover
CUDA by Example: An Introduction to General-Purpose GPU Programming by Jason
Programming Massively Parallel Processors: A Hands-on Approach (Applications of GPU Computing Series) by David B. Kirk Paperback
GPU Pro 2
The Art of Multiprocessor Programming
Scientific Computing with Multicore and AcceleratorsFreeBookCentre.Net
3d Converter tools:
orion.math.iastate.edu/burkardt/g_src/ (source of the 3dsread, ivcon, IVREAD.F90 file)
3D formats supported by IVCON (see the 4 links above)
3DCNV3D Object Converter 3dcnv. Save Limit: 6000 faces. Supports 104 different 3d file formats 3dcnv132.zip
merlin-fit-vutbr-cz/wiki/... (projects, for the source of the '3ds2iv_src.zip' file)
ftp://zeus.etsimo.uniovi.es/pub/mirrors/avalon.viewpoint.com/utils/converters/('3dstoobj_perl.zip' and many many more..)(the old avalon 3d archive)
hammerve-com/NewHome/FreeStuff/Converters/ (for iv2pov, iv2rib, iv2ray see bottom of the page)
koders.com/perl/...... (source of the 'obj2wrl' script file) or
cc.gatech.edu/projects/large_models/ (source of the ply2iv.c, obj2ply.c, convertply.c files --- and others)
graphics.stanford.edu/data/3Dscanrep/ (plyfile.c and plytest.c source code and a ply_docs file.)
C++ library for parsing the PLY file format.
PolyTrans crippled demo avail.
xs4all.nl/~rsmith/software/ ('stl2pov' link - source code.)
chemicalgraphics.com/paul/vrml2pov/ ('vrml2pov' file.) (C++ source)
SU2POV Version 3.5 is now available. SU2POV is a freeware converter to export SketchUp models to POV-Ray.
3ds utils (the old avalon 3d archive): ftp://zeus.etsimo.uniovi.es/pub/mirrors/avalon.viewpoint.com/utils/3ds/
3dkit etc.. ftp://zeus.etsimo.uniovi.es/pub/mirrors/avalon.viewpoint.com/utils/misc/
lightwave utils: ftp://zeus.etsimo.uniovi.es/pub/mirrors/avalon.viewpoint.com/utils/lightwave/
3d format specs: ftp://zeus.etsimo.uniovi.es/pub/mirrors/avalon.viewpoint.com/format_specs/ or ftp://etsimo.uniovi.es/pub/raytrace/avalon/format_specs/
old funet repository: http://next.68k.org/next/ftp.funet.fi/pub/NeXT/Graphics/3d/
more converters (old but some still useful): http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos/programming/convert/
more converters (old but some still useful): ftp://garbo.uwasa.fi/pc/ for instance autocad...
to and from radiance http://radsite.lbl.gov/radiance/framed.html
obj2ray (obj to rayshade) ftp://graphics.stanford.edu/pub/rayshade/Contrib/Tools/
STL for Sketchup An STL format importer/exporter plugin script for Google SketchUp. Supports both binary and ASCII import and export.
many more converters to come....
Ayam 1.19 Open Source
white_dune 0.31beta170 Open Source
openfx (last update 2013) ver 2.4
Y.A.P.R.M. modeller to graphicaly design 3d scenes and generate POV-Ray-files (free-as-in-freedom)
Grasshopper 1.0 for Rhino
Insight3D 0.3.2 Open Source
Art of Illusion 2.8.1 Open Source
BRL-CAD 7.26.0 Open Source one of the oldest now in vers 7.26
Arbaro 1.9.8 Open Source
Moonlight | 3D 0.2.3 Open Source
Moray or http://www.stmuc.com/moray/
(a little bit older..)
Povlab (last upd 2002)
GLC-Player GLC_Player is a OpenGL Open Source 3D viewer used to view 3d models (COLLADA, 3DXML, OBJ 3DS STL OFF COFF Format) and to navigate easily in these models.
The Open Source STL viewer (no update since 2004) Viewstl is an open source way to view Stereo Lithography Files as shaded on-screen images. Ascii STL files and dynamic rotation, scaling, and panning are currently supported. Written in C using OpenGL, GLU and GLUT.
STL Viewer (last Upd. 2010-01-23) Display and manipulate the content of stereolithography or STL files.
list of raytracing soft: https://en.wikipedia.org/wiki/List_of_ray_tracing_software
SPARK is an open source particle engine written in C++.OpenGl particle rendering Noise based particles Particle Emitter: Particles Partikel Engine OpenGL 3d particle explosion
Comparission of different arbitrary precission implementations: http://rosettacode.org/wiki/Arbitrary-precision_integers_%28included%29 (strange: some have timing information, some not,)
Some more Euler/Runge-Kutta/Midpoint etc Solver:
Universal-Framework-for-Science-and-Engineering alternative adress: http://www.mathframe.com/
Astrophysics source code lib: viewforum.php
astrophysics https://github.com/topics/astrophysics Easy command line tools for Kepler, K2 & TESS data analysis.
source code in astrophysics https://www.sciencedirect.com/science/article/pii/S2213133713000073
and quite naturally since years the de facto standard for everything concerning fourier analysis : http://www.fftw.org (complete page to wavelets follows soon...)
NBody Links: This list aims at listing allmost all resources of the web concerning nbody simulations (with emphasis on gpu). At the moment only a start.....
There are links in this list which are no more valid. I kept them because sometimes the content just moved, is still accessible but on another site, can be found on an archive site, can still be found on a cd/dvd (like the avalon 3d archive..)..... This despite Google's idiotic broken links down ranking. Anyway this list is since nearly 10 years the biggest list of links to gpu related topics in the web and Google does its best to hide this site and this list.