https://github.com/christian-byrne/js-graph-structures-profiling
Playground to profile mem/speed performance of different graph representations in browser js
https://github.com/christian-byrne/js-graph-structures-profiling
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.1%) to scientific vocabulary
Repository
Playground to profile mem/speed performance of different graph representations in browser js
Basic Info
- Host: GitHub
- Owner: christian-byrne
- Language: TypeScript
- Default Branch: main
- Homepage: https://js-graph-structures-profiling.vercel.app
- Size: 154 KB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Graph Data Structure Performance Benchmarks
This project compares the performance characteristics of four common graph representation approaches: adjacency matrices with bitset optimization, adjacency lists with set-based lookups, a combined approach maintaining both representations, and an object-oriented design similar to LiteGraph.
Features
- Command Line Interface: Automated benchmarking with configurable parameters
- Interactive Web Interface: Real-time visualization and analysis
- Real Performance Data: Actual memory usage and timing measurements
- Multiple Metrics: Memory usage, lookup speed, traversal performance, and graph sparsity
Usage
Web Interface
bash
npm install
npm run dev
Command Line Benchmarking
bash
npm run benchmark
Results are exported in JSON and CSV formats with algorithmic complexity analysis to guide implementation decisions.
Graph Representations
- Adjacency Matrix (AM): Bitset-optimized O(n²) space
- Adjacency List (AL): Set-based O(n+m) space
- Combined (AM+AL): Hybrid approach for optimal access patterns
- Object-Oriented (OOP): Node/Link architecture similar to LiteGraph
Owner
- Name: Christian Byrne
- Login: christian-byrne
- Kind: user
- Location: San Francisco
- Company: Comfy-Org
- Twitter: c__byrne
- Repositories: 100
- Profile: https://github.com/christian-byrne
GitHub Events
Total
- Push event: 1
- Create event: 1
Last Year
- Push event: 1
- Create event: 1
Dependencies
- 494 dependencies
- @eslint/eslintrc ^3.2.0 development
- @types/node ^20 development
- @types/react ^19 development
- @types/react-dom ^19 development
- eslint ^8 development
- eslint-config-next 15.5.0 development
- lucide-react ^0.469.0 development
- postcss ^8 development
- tailwindcss ^3.4.1 development
- tsx ^4.6.2 development
- typescript ^5 development
- @tailwindcss/postcss ^4.1.12
- autoprefixer ^10.4.21
- next 15.5.0
- react 19.0.0
- react-dom 19.0.0
- recharts ^2.15.0