n

nbody

c6b44f4library

No description provided.

0 stars0 forksMITupdated 4 months ago
Open repo

Odin N-Body Simulation

This repo contains my experiments with implementing N-Body simulations in Odin. The goal is to investigate the algorithms used and the approaches to optimization that are effective for them.

Usage

To run the demo:

odin run .

I recommend using the optimization flag speed: odin run . -o:speed

Also included in the src/utils.odin file are some benchmarking functions of varying usefulness. This should definitely be run with the speed optimization flag:

odin run ./src -o:speed

Implemented Algorithms

Naive/Brute Force

  • Baseline
  • SOA (?)
  • Multi-threading
  • SIMD
  • Compute shader

Barnes-Hut

  • Baseline
  • Particle Reordering
  • Threaded force accumulation
  • Threaded tree building (?)
  • Compute Shader

Dependencies

The core functionality currently has no third party dependencies, but the basic visualization present in the main function relies on having my work in progress game framework/engine dial

Package Info
Version
c6b44f4
License
MIT
Author
@jfosburgh
Type
library
Forks
0
Created
4 months ago
Updated
4 months ago
Health
maintained
has releases
has readme
has license
Activity
last 56 weeks