# SWARM-CG **Repository Path**: mirrors_secure-software-engineering/SWARM-CG ## Basic Information - **Project Name**: SWARM-CG - **Description**: Swiss Army Knife of Call Graph Micro-Benchmark - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-10-01 - **Last Updated**: 2026-08-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SWARM-CG: Swiss Army Knife of Call Graph Micro-Benchmark

SWARM-CG (Swiss Army Knife of Call Graph Micro-Benchmark) aims to standardize the evaluation of call graph analysis tools by providing a rich set of call graph benchmarks. This repository contains code samples and associated ground truth across multiple languages, facilitating cross-language performance comparisons and discussions. ## Features - **Multi-language support**: Benchmarks in various programming languages. - **Ground truth annotations**: Accurate call-graph information for each sample. - **Tool evaluation**: Framework for assessing static analysis tools. - **Community-driven**: Contributions from static analysis enthusiasts and experts. ## Languages Supported Our repository includes benchmarks for the following languages: - Java - Python - JavaScript *More languages will be added soon.* ## :whale: Running with Docker ### 1️⃣ Clone the repo ```bash git clone https://github.com/ashwinprasadme/SWARM-CG/ ``` ### 2️⃣ Build Docker image ```bash docker build -t swarmcg . ``` ### 3️⃣ Run SWARM-CG 🕒 Takes about 30mins on first run to build Docker containers. 📂 Results will be generated in the `results` folder within the root directory of the repository. Each results folder will have a timestamp, allowing you to easily track and compare different runs. 🔧 run analysis on specific tools: ```bash docker run \ -v /var/run/docker.sock:/var/run/docker.sock \ -v ./results:/app/results \ -v ./src:/app/src \ swarmcg --language python --benchmark_name pycg --tool llms ``` 🛠️ Available options: `pycg`, `ollama`, `llms`