DotCompute Articles
Comprehensive guides, tutorials, and conceptual documentation for DotCompute.
Getting Started
- Installation Guide - Install DotCompute and configure your first project
- Quick Start Tutorial - Write your first GPU-accelerated kernel in 5 minutes
- Hello World Example - Complete walkthrough of a simple compute kernel
Architecture
Understanding DotCompute's design and component relationships:
- Architecture Overview - High-level system architecture
- Core Orchestration - Compute orchestration and service integration
- Backend Integration - How backends plug into the framework
- Memory Management - Unified memory system design
- Debugging System - Cross-backend validation architecture
- Optimization Engine - Adaptive backend selection design
- Source Generators - Compile-time code generation system
Developer Guides
Practical guides for common development scenarios:
- Kernel Development - Writing efficient compute kernels
- Backend Selection - Choosing and configuring backends
- Performance Tuning - Optimizing kernel performance
- Debugging Guide - Debugging kernels and troubleshooting issues
- Native AOT Compilation - Building with Native AOT for maximum performance
- Multi-GPU Programming - Scaling across multiple GPUs
- Memory Management Best Practices - Efficient memory usage patterns
- Dependency Injection Integration - Using DotCompute with DI containers
- Telemetry and Monitoring - Observability and performance monitoring
- Troubleshooting Common Issues - Solutions to common problems
Performance
Understanding and optimizing performance:
- Performance Characteristics - Expected performance for different operations
- Benchmarking Guide - How to benchmark your kernels
- Optimization Strategies - Advanced optimization techniques
- Hardware Requirements - Hardware considerations for different backends
Advanced Topics
Deep dives into specialized areas:
- SIMD Vectorization - CPU SIMD optimization techniques
- CUDA Programming - CUDA-specific features and optimization
- Metal Shading Language - Writing Metal compute shaders
- OpenCL Development - Cross-platform OpenCL programming
- Plugin Development - Creating custom backend plugins
- Analyzer Development - Writing custom Roslyn analyzers
Examples
Complete, runnable examples:
- Basic Examples - Simple kernels and common patterns
- Intermediate Examples - Real-world compute scenarios
- Advanced Examples - Complex multi-kernel pipelines
Migration Guides
Migrating from other compute frameworks:
- From ILGPU - Migrating ILGPU code to DotCompute
- From TorchSharp - Migrating ML tensor operations
- From Alea GPU - Migrating F# GPU code
Reference
Additional reference material:
- Diagnostic Rules (DC001-DC012) - Complete analyzer diagnostic reference
- Kernel Attribute Reference -
[Kernel]attribute options - Configuration Reference - All configuration options
- Glossary - Terminology and definitions
Contributing
Help improve DotCompute:
- Contributing Guide - How to contribute to the project
- Code of Conduct - Community guidelines
- Development Setup - Setting up a development environment