gpu-guide
Graphics Processing Unit (GPU) Architecture Guide
https://github.com/mikeroyal/gpu-guide
Last synced: 8 days ago
JSON representation
-
3D Graphics and Design Learning Resources
- Intro to using Universal Scene Description with NVIDIA
- First steps with Universal Scene Description in Blender
- AMD Radeon ProRender Developer Suite
- Blender Foundation
- Blender Foundation Certification Training
- Blender Institute
- Blender Education
- Blender Network
- Blender Courses from Udemy
- AutoDesk Learning, Training & Certification
- AutoDesk Design Academy
- Graphic Design Masterclass(Photoshop, Illustrator, InDesign) from Udemy
- Vectr: Beginner's Guide To Graphic Design from udemy
- Canva MasterClass: Design For EveryDay Use from Udemy
- Cinema 4D Quick Tips
- Getting Started with Cinema 4D
- Introduction to Pixar's Universal Scene Description (USD)
- Introduction to Pixar's Universal Scene Description (USD)
-
3D Graphics and Design Tools
- Adobe Creative Cloud
- Autodesk®
- Maya®
- Maya LT™ - looking characters, props, and environments using the sophisticated 3D modeling and animation tools.
- Arnold
- ReCap™ - built conditions to gain insights and make better decisions.
- Flame®
- Mudbox®
- Cinema 4D
- Vuforia - ranging solution suite ensures that we can provide the right AR technology to every customer based on their business needs.
- Vuforia Studio
- OpenVX™ - source, royalty-free standard for cross platform acceleration of computer vision applications. OpenVX enables performance and power-optimized computer vision processing, especially important in embedded and real-time use cases such as face, body and gesture tracking, smart video surveillance, advanced driver assistance systems (ADAS), object and scene reconstruction, augmented reality, visual inspection, robotics and more.
- GPUImage framework - licensed iOS library that lets you apply GPU-accelerated filters and other effects to images, live camera video, and movies. In comparison to Core Image (part of iOS 5.0), GPUImage allows you to write your own custom filters, supports deployment to iOS 4.0, and has a simpler interface. However, it currently lacks some of the more advanced features of Core Image, such as facial detection.
- GPUImage3 - accelerated image and video processing on Mac and iOS. The original GPUImage framework was written in Objective-C and targeted Mac and iOS, the second iteration rewritten in Swift using OpenGL to target Mac, iOS, and Linux, and now this third generation is redesigned to use Metal in place of OpenGL.
- VDPAU
- VA API - source library and API specification, which provides access to graphics hardware acceleration capabilities for video processing.
- XvMC
- Universal Scene Description - sampled scene description for interchange between graphics applications.
- OpenSubdiv
- Affinity Designer - quality concept art.
- Krita
- Vectr
- Glimpse - platform raster graphics editor based on the GNU Image Manipulation Program available for Linux, macOS, and Windows. A great tool for making YouTube video thumbnails.
- GNU Image Manipulation Program(GIMP) - platform raster graphics editor based on the GNU Image Manipulation Program(GIMP) available for Linux, macOS, and Windows. A great free alternative for Photoshop.
- PhotoGIMP
- Photopea
- Inkscape - source vector graphics editor; it can be used to create or edit vector graphics such as illustrations, diagrams, line arts, charts, logos and complex paintings.
- Gthree
- Dust3D - platform open-source modeling software. It helps you create a 3D watertight model in seconds. Use it to speed up your character modeling in game making, 3D printing, and so on.
- Goxel
- Sketchfab - source 3D models ready to view, buy, and download for free.
- M1 compatible games master list | AppleGamingWiki
- M1 Parallels Windows compatible games list | AppleGamingWiki
- Apple Hypervisor - party kernel extensions. Hypervisor provides C APIs so you can interact with virtualization technologies in user space, without writing kernel extensions (KEXTs). As a result, the apps you create using this framework are suitable for distribution on the [Mac App Store](https://www.appstore.com/).
- Apple A-series - bit ARM-based system on a chip (SoC) used in their iPhones and iPads. Though, at WWDC 2020 it was announced that [Apple Silicon](https://developer.apple.com/documentation/apple_silicon) would [transition into Mac laptops](https://www.apple.com/newsroom/2020/06/apple-announces-mac-transition-to-apple-silicon/).
- Apple
- Apple M1 Pro Chip - core system-on-a-chip (SoC) architecture designed for pro systems in the [MacBook Pro 14”](https://www.apple.com/shop/buy-mac/macbook-pro/14-inch). The chip features fast unified memory, industry-leading performance per watt, and incredible power efficiency, along with increased memory bandwidth and capacity. The M1 Pro offers up to 200GB/s of memory bandwidth with support for up to 32GB of unified memory and a GPU (14-core or 16-core option).
- Xcode 12 - based CPUs and Apple Silicon. It includes a unified macOS SDK that features all the frameworks, compilers, debuggers, and other tools you need to build apps that run natively on Apple Silicon and the Intel x86_64 CPU.
- FreeCAD - source general-purpose parametric 3D CAD modeler and a building information modeling software with finite-element-method support.
- Universal App Quick Start Program
- Porting Just-In-Time(JIT) Compilers to Apple Silicon
- Porting Your Metal Code to Apple Silicon
- Running Your iOS Apps on macOS
- macOS
- iOS
- iPadOS
- WatchOS
-
Apple Arcade
- Apple Arcade - app purchases.
-
Audio/Video Learning Resources
- 10 Video Production Tools That Make the Difference Between a Good Video and a Bad One by Dann Albright
- Online Audio Editing Classes from Skillshare
- Online Video Editing Classes Skillshare
- Video Editing Courses from Udemy
- Audio Editing Courses from udemy
- Audacity Podcast Production Course: Audio Editing for Podcasters
- Video Editing Online Training Courses from LinkedIn Learning
- Audio Editing Online Training Courses from LinkedIn Learning
- Video Editing Courses from Coursera
- The Basics of Audio Editing from Coursera
-
Audio/Video Tools and Equipment
- H.264(AVC) - oriented and motion-compensated integer-DCT coding that defines multiple profiles (tools) and levels (max bitrates and resolutions) with support up to 8K.
- H.265(HEVC) - rate.
- FFmpeg
- HandBrake
- HTTP Live Streaming (HLS)
- OpenMAX™ - platform API that provides comprehensive streaming media codec and application portability by enabling accelerated multimedia components to be developed, integrated and programmed across multiple operating systems and silicon platforms.
- GStreamer - handling components. The applications it supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing. Applications can take advantage of advances in codec and filter technology transparently.
- Media Source Extensions (MSE) - source) that allows JavaScript to send byte streams to media codecs within Web browsers that support HTML5 video and audio. Also, this allows the implementation of client-side prefetching and buffering code for streaming media entirely in JavaScript.
- WebRTC - source project that adds real-time communication capabilities to your application that works on top of an open standard. It supports video, voice, and generic data to be sent between peers, allowing developers to build powerful voice- and video-communication solutions.
- Premiere Pro - leading video editing software for film, TV, and the web. Creative tools, integration with other apps and services, and the power of Adobe Sensei help you craft footage into polished films and videos. With [Premiere Rush](https://www.adobe.com/products/premiere-rush.html) you can create and edit new projects from any device.
- Final Cut Pro
- Kdenlive
- OpenShot - source video editing tool that's designed for users new in the editing environment. It has simple features such as a simple drag-and-drop function, it provides an easy-to-use and quick-to-learn user interface. The powerful video editor offers tons of efficient ways to cut and trim down your videos. You can freely utilize the unlimited tracks, video effects engine, title editor, 3D animations, slow motion, and time effects. It supports commonly used video codecs that are supported by FFmpeg like WebM (VP9), AVCHD (libx264), HEVC (libx265) and audio codecs like mp3 (libmp3lame) and aac (libfaac). The program can render MPEG4, ogv, Blu-ray and DVD video, and Full HD videos for uploading to the internet video websites like YouTube.
- Blender - in video sequence editor allows you to perform basic actions like video cuts and splicing, as well as more complex tasks like video masking or color grading. The Video Editor includes: Live preview, luma waveform, chroma vectorscope and histogram displays. Audio mixing, syncing, scrubbing and waveform visualization.
- Shotcut - platform video editor. You can perform various actions such as video editing (including 4K video quality), add effects, create new movies, import most image files formats, export to almost any file format and much more.
- OBS (Open Broadcaster Software)
- REAPER
- Logic Pro
- Avid Pro Tools
- Adobe Audition
- JACK Audio Connection Kit AKA JACK - time, low-latency connections for both audio and MIDI data between applications that implement its API. JACK can be configured to send audio data over a network to a main machine, which then outputs the audio to a physical device. This can be useful to mix audio from a number of linked computers without requiring additional cables or hardware mixers, and keeping the audio path digital for as long as possible.
- JACK2 - latency audio server for multi-processor machines. It is a new implementation of the JACK server core features that aims at removing some limitations of the JACK1 design. The activation system has been changed for a data flow model and lock-free programming techniques for graph access have been used to have a more dynamic and robust system.
- Propellerhead Reason
- Cockos Reaper
- PreSonus Studio One
- LMMS
- Ardour
- Audacity - to-use, multi-track audio editor and recorder for Windows, Mac OS X, GNU/Linux and other operating systems. Developed by a group of volunteers as open source and offered free of charge. Amazing support community.
- PipeWire - latency, graph based processing engine on top of audio and video devices that can be used to support the use cases currently handled by both pulseaudio and JACK. PipeWire was designed with a powerful security model that makes interacting with audio and video devices from containerized applications easy. Nodes in the graph can be implemented as separate processes, communicating with sockets and exchanging multimedia content using fd passing.
- PreSonus Studio One
- Ableton Live
- Image-Line FL Studio - Line.
- Digital Performer
-
Augmented Reality (AR) & Virtual Reality (VR)
- ARKit - reality apps for iOS developed by Apple. The latest version ARKit 3.5 takes advantage of the new LiDAR Scanner and depth sensing system on iPad Pro(2020) to support a new generation of AR apps that use Scene Geometry for enhanced scene understanding and object occlusion.
- RealityKit - performance 3D simulation and rendering with information provided by the ARKit framework to seamlessly integrate virtual objects into the real world.
- ARCore
- SteamVR
- OpenVR
- OpenHMD - mounted display) devices such as Oculus Rift, HTC Vive, Sony PSVR, and others.
- Monado - start development of an open source XR ecosystem and provide the fundamental building blocks for device vendors to target the GNU/Linux platform.
- Simula - 638454156)).
- OpenVR Benchmark on Steam
- Libsurvive
-
C/C++ Learning Resources
- C++ - platform language that can be used to build high-performance applications developed by Bjarne Stroustrup, as an extension to the C language.
- C - purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. It supports structured programming, lexical variable scope, and recursion, with a static type system. C also provides constructs that map efficiently to typical machine instructions, which makes it one was of the most widely used programming languages today.
- Embedded C - committee) to address issues that exist between C extensions for different [embedded systems](https://en.wikipedia.org/wiki/Embedded_system). The extensions hep enhance microprocessor features such as fixed-point arithmetic, multiple distinct memory banks, and basic I/O operations. This makes Embedded C the most popular embedded software language in the world.
- C & C++ Developer Tools from JetBrains
- Open source C++ libraries on cppreference.com
- C++ Graphics libraries
- C++ Libraries in MATLAB
- C++ Tools and Libraries Articles
- Google C++ Style Guide
- C++ style guide for Fuchsia
- Chromium C++ Style Guide
- C++ Core Guidelines
- Learn C++
- Learn C : An Interactive C Tutorial
- C++ Online Training Courses on LinkedIn Learning
- C++ Tutorials on W3Schools
- Learn C Programming Online Courses on edX
- Learn C++ with Online Courses on edX
- Learn C++ on Codecademy
- Coding for Everyone: C and C++ course on Coursera
- C++ For C Programmers on Coursera
- C++ Online Courses on Udemy
- Top C Courses on Udemy
- Basics of Embedded C Programming for Beginners on Udemy
- C++ For Programmers Course on Udacity
- C++ Fundamentals Course on Pluralsight
- C++ Style Guide for ROS
-
C/C++ Tools and Frameworks
- AWS SDK for C++
- Azure SDK for C++
- Azure SDK for C
- C++ Client Libraries for Google Cloud Services
- Vcpkg
- ReSharper C++
- CLion - platform IDE for C and C++ developers developed by JetBrains.
- Code::Blocks
- CppSharp
- Conan
- High Performance Computing (HPC) SDK
- Boost - edge C++. Boost has been a participant in the annual Google Summer of Code since 2007, in which students develop their skills by working on Boost Library development.
- Automake
- Cmake - source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice.
- GDB
- GCC - C, Fortran, Ada, Go, and D, as well as libraries for these languages.
- GSL - squares fitting. There are over 1000 functions in total with an extensive test suite.
- Libtool
- Maven
- TAU (Tuning And Analysis Utilities) - based sampling. All C++ language features are supported including templates and namespaces.
- Clang - C, C++ and Objective-C++ compiler when targeting X86-32, X86-64, and ARM (other targets may have caveats, but are usually easy to fix). Clang is used in production to build performance-critical software like Google Chrome or Firefox.
- OpenCV - time applications. Cross-Platform C++, Python and Java interfaces support Linux, MacOS, Windows, iOS, and Android.
- ANTLR (ANother Tool for Language Recognition)
- Oat++ - efficient web application. It's zero-dependency and easy-portable.
- JavaCPP
- Cython
- Spdlog - only/compiled, C++ logging library.
- Infer - C, and C. Infer is written in [OCaml](https://ocaml.org/).
-
Computer Vision Learning Resources
- Computer Vision
- OpenCV Courses
- Top Computer Vision Courses Online | Udemy
- Learn Computer Vision with Online Courses and Lessons | edX
- Computer Vision and Image Processing Fundamentals | edX
- Introduction to Computer Vision Courses | Udacity
- Computer Vision Nanodegree program | Udacity
- Computer Vision Training Courses | NobleProg
- Visual Computing Graduate Program | Stanford Online
- Exploring Computer Vision in Microsoft Azure
-
Computer Vision Tools, Libraries, and Frameworks
- LRSLibrary - Rank and Sparse Tools for Background Modeling and Subtraction in Videos. The library was designed for moving object detection in videos, but it can be also used for other computer vision and machine learning problems.
- Partial Differential Equation Toolbox™
- Data Acquisition Toolbox™
-
Contribute
-
Core ML Learning Resources
-
Core ML Tools, Libraries, and Frameworks
Categories
3D Graphics and Design Tools
47
Parallel Computing Tools, Libraries, and Frameworks
33
Audio/Video Tools and Equipment
33
Deep Learning Learning Resources
28
C/C++ Tools and Frameworks
28
C/C++ Learning Resources
27
CUDA Tools Libraries, and Frameworks
26
Python Frameworks and Tools
23
Deep Learning Tools, Libraries, and Frameworks
21
3D Graphics and Design Learning Resources
18
Julia Tools, Libraries and Frameworks
17
Game Development Tools, Libraries, and Frameworks
16
OpenCL Tools, Libraries and Frameworks
15
Vulkan Tools, Libraries, and Frameworks
15
R Tools, Libraries, and Frameworks
15
MATLAB Learning Resources
15
ML Frameworks, Libraries, and Tools
14
MATLAB Tools, Libraries, Frameworks
14
Parallel Computing Learning Resources
12
Augmented Reality (AR) & Virtual Reality (VR)
10
Computer Vision Learning Resources
10
Python Learning Resources
10
Audio/Video Learning Resources
10
Core ML Tools, Libraries, and Frameworks
9
DirectX Learning Resources
9
R Learning Resources
9
OpenGL Tools, Libraries, and Frameworks
9
DirectX Tools, Libraries, and Frameworks
9
Game Development Learning Resources
8
Core ML Learning Resources
8
Julia Learning Resources
8
OpenCL Learning Resources
7
Learning Resources for ML
7
OpenGL Learning Resources
7
Vulkan Learning Resources
7
Game Emulators
7
Game Engines
7
Metal Learning Resources
5
Game Streaming
5
CUDA Learning Resources
4
Metal Tools, Libraries, and Frameworks
4
Performance Benchmarks
3
Computer Vision Tools, Libraries, and Frameworks
3
Steam
2
Contribute
1
License
1
Apple Arcade
1
Sub Categories
Keywords
python
14
cpp
10
gpu
8
deep-learning
8
cuda
8
vulkan
7
machine-learning
6
julia
5
graphics
4
gamedev
4
nvidia
4
game-engine
4
game-development
4
data-science
4
neural-network
3
windows
3
pytorch
3
tensorflow
3
c
3
cplusplus
3
cxx14
3
matlab
3
cpp14
3
neural-networks
3
cross-platform
3
cpp11
3
dotnet
3
cpp17
2
algorithms
2
cpp20
2
azure
2
cxx
2
azure-sdk
2
cxx11
2
docker
2
iot
2
linux
2
cloud
2
metal
2
machine-learning-algorithms
2
vulkan-api
2
android
2
c-plus-plus
2
ios
2
data-visualization
2
numpy
2
nlp
2
java
2
rest
2
developer-tools
2